Listing attributes not rendering on category grid

Listing attributes (Block/primary + secondary) not rendering on category archive grid under ListingHive — confirmed theme-side via isolation testing

Theme: ListingHive (parent), ListingHive Child (active child theme)
HivePress version: 1.7.31
WordPress version: 7.1 (7.1.1 available, not yet updated)
PHP: 8.2.33
Environment: staging site, no persistent object cache

Summary

Four custom HivePress listing attributes (Discount Text, Discount Subtext, Button Label, Business URL) render correctly on the single listing page but do not appear at all on the category archive grid (the “block” view) when ListingHive is the active theme. This combination previously worked (confirmed working in an earlier session on the same site) and stopped at some point without any intentional change on our end that we’re aware of.

We’ve since run a controlled isolation/A-B test (detailed below) that rules out HivePress itself, WooCommerce, and every other plugin on the site, and confirms the theme is the sole variable controlling whether the attributes render. We’re bringing this to ListingHive support rather than HivePress because of that result.

Expected behavior

Each listing card in the category grid should show a small “coupon card” — discount text, subtext, and a “Shop Now” button — pulled from the four attributes above, in addition to the photo/name/category that already render correctly.

Actual behavior (under ListingHive Child, all plugins active)

Cards in the category grid show only the photo, listing name, and category. None of the four attributes render, even though:

  • They render correctly on the single listing page (/listing/{slug}/)
  • The listing has real data saved in all four fields
  • Nothing else on the card (title, image) is missing — only the attribute-driven content

What we’ve ruled out on the HivePress/attribute-configuration side

  1. Attribute “Areas” configuration — All four attributes are correctly set to Block (primary) + Page (secondary), matching a working attribute (Tagline) that uses the same combination and does render on the grid.
  2. Attribute “Field Type” — All four attributes are Text, matching the working Tagline attribute exactly.
  3. Category-specific attribute scoping — Checked each attribute’s category checklist; all are globally scoped (0 categories checked), not restricted away from the test listing’s category.
  4. Native HivePress template registration — Inspected includes/templates/class-listing-view-block.php in the HivePress plugin directly. It correctly registers both listing_attributes_primary ('area' => 'view_block_primary') and listing_attributes_secondary ('area' => 'view_block_secondary') for the grid/block view.
  5. Stale transients — Cleared all transients (609 rows deleted from _transient_*/_site_transient_*), purged site cache. No change.
  6. HivePress plugin re-registration — Deactivated and reactivated HivePress (state change verified, not just clicked-and-assumed), purged cache. No change.
  7. Re-saving the attributes — Opened and re-saved (Update, no changes) all three attributes, in case of a stale cached definition. No change.
  8. Child theme template override — Checked the ListingHive Child theme’s full file structure. Only 3 files exist total (style.css, functions.php, one unrelated/empty template); there is no override at hivepress/listing/view/block/ or any equivalent path.
  9. Child theme’s own template filter — The only listings-related code in the child theme’s functions.php is a hivepress/v1/templates/listings_view_page filter that sets columns = 3 on the native listings block. No attribute logic anywhere in it.

Throughout all of the above, the single listing page continues to render all four attributes correctly — this is specifically a category-archive/grid (“block” view) problem, and none of it pointed at HivePress or our own configuration.

Isolation test: confirms the theme is the cause, not a plugin

To rule out a plugin conflict vs. a theme conflict, we ran a controlled A/B test on our staging site:

Test A — all 17 site plugins active, theme swapped to a freshly-installed default WordPress theme (Twenty Twenty-Five), everything else unchanged:
Coupon-card rendered correctly — discount text, subtext, and “Shop Now” button all appeared on the grid card.

Test B — same 17 plugins still active (untouched), theme switched back to ListingHive Child:
Coupon-card disappeared again, reproducing the original symptom exactly.

Theme was the only variable that changed between A and B. This directly rules out every plugin on the site (WooCommerce, WooCommerce Payments, WooCommerce PayPal Payments, Popup Maker, Spectra Legacy, Yoast SEO, WPForms Lite, SeedProd, WPCode Lite, Speed Optimizer, All-in-One WP Migration, Duplicate Page, Waitlist WooCommerce, WP Mail Logging, WP Mail SMTP, Zoho Campaigns — WooCommerce did stay active throughout the isolation step due to WordPress’s own plugin-dependency protection, but was active and unchanged across both A and B, so it’s equally ruled out) — none of them are involved. It also rules out HivePress itself, since HivePress was active and unchanged across both tests too. The theme is the confirmed sole cause.

A lead, for what it’s worth

We took a brief look at the parent ListingHive theme’s includes/components/class-theme.php (via the WP Theme Editor). It does hook the exact template in question:

add_filter( 'hivepress/v1/templates/listing_view_block', [ $this, 'alter_listing_view_block' ] );

The callback we could see uses HivePress’s own merge_blocks() helper and appears to only reorder the listing_category sub-block — it doesn’t obviously touch listing_attributes_primary/secondary — so we don’t think this specific method is the bug, but it (and the sibling alter_listing_view_page / alter_listing_category_view_block methods, and the theme’s CSS/config files, which we didn’t have time to fully review) seemed like the most relevant place to start looking, since it’s the theme’s own filter on the failing template. We stopped short of editing anything in the parent theme’s core files, since we didn’t want to risk breaking future theme updates.

Question

Given that:

  • The native HivePress attribute system, template registration, and our attribute configuration are all confirmed correct
  • A controlled A/B test (all plugins held constant, only the theme changed) shows the coupon-card renders under a default theme and disappears again under ListingHive
  • class-theme.php hooks hivepress/v1/templates/listing_view_block directly

…is there a known issue in ListingHive’s alter_listing_view_block (or a related filter/CSS rule) that can suppress Block (primary)/Block (secondary) attribute blocks on the archive grid under certain conditions? Happy to provide the exact attribute IDs, a system status export, staging access, or screen-share if useful.

Thanks for your message — our team will reply shortly.

In the meantime, you can also get instant help from our AI Assistant, familiar with all the docs and solutions we’ve shared over the years.

Hi,

Thanks for the details report.

We’ve tried to reproduce the issue locally, and the attribute is displayed correctly in both the block and page templates. I created a text-type attribute and assigned Block (Primary) and Page (Secondary) as the display areas, and everything worked as expected.

Please send temporary WP access to support@hivepress.io the link to this topic, and we’ll check it (please send only the link, without login and password). You can create a temporary access link using this plugin.

Could you please confirm that we can temporarily disable third-party plugins and customizations while testing? This will allow us to rule out any potential conflicts.