2.2.3
What’s Changed
Fixed
- Critical: Images uploaded via media library showed placeholder SVG instead of actual image in product-box, hero, team-member, testimonial, opinion-box, gallery, and url-preview blocks. The ACF compat layer returns raw attachment IDs from
$block['data'], but templates expected ACF-formatted arrays. Added sharedacf_blocks_resolve_image()helper in compat layer that handles arrays, numeric IDs, and URL strings. - Product List Block: Fixed broken repeater sub-field names (
pl_price_labelinstead ofpl_block_pricing_title) that caused pricing, coupons, and buttons to never render. - Product List Block: Fixed unsanitized description output (XSS risk) — now uses
wp_kses_post().
Added
- Title Heading Level: Added configurable heading tag (p/h2-h6, default p) to product-box, product-cards, product-review, and pl-block.
- Product List Block: Complete overhaul — modern card design with CSS custom properties, container queries, dark mode, rank badge, pricing chips, dashed-border coupon codes, 3-tier button system (primary/secondary/text), accessibility support.
- Product List Block: New fields — image URL (external images), product URL (linked name), button style selector, image width override.
- Shared Image Helper:
acf_blocks_resolve_image()in compat layer resolves ACF image values (array, numeric ID, URL) to{src, alt}with size support.
Changed
- Product-cards title now wrapped in configurable HTML tag instead of bare text in header div.
Commits
- v2.2.3: Fix image rendering across 7 blocks, overhaul pl-block, add title heading level selector (
a301dd5)
Stats
- Commits: 1
- Changes: 24 files changed, 502 insertions(+), 213 deletions(-)
Plugin Info
- Blocks included: 29
- Requires WordPress: 6.0+
- Requires PHP: 7.4+
- Requires: ACF Pro 6.0+ or Secure Custom Fields
Installation
- Download
acf-blocks-plugin-*.zipfrom the assets below - Go to Plugins → Add New → Upload Plugin in WordPress admin
- Upload the zip file and activate
