Brand Atlas for WooCommerce

Designer Archives & A–Z Glossaries with Logos

  • WP 6.x
  • WC 8–9.x
  • WPML
  • RTL
  • GA4
  • JSON-LD
  • Safe Filter
  • Caching

Overview

Brand Atlas adds premium brand browsing to WooCommerce:


What’s Included


Screenshots

Admin — Brand Atlas Overview tab
Admin → Brand Atlas → Overview
Admin — Brand Atlas Shortcodes tab
Admin → Brand Atlas → Shortcodes
Admin — Brand Atlas Brand Detection tab
Admin → Brand Atlas → Brand Detection
Admin — Brand Atlas Advanced tab
Admin → Brand Atlas → Advanced
Admin — Brand Atlas Help & Diagnostics tab
Admin → Brand Atlas → Help & Diagnostics
Frontend — A–Z Designers demo
Frontend → A–Z Designers demo
Frontend — Designers (Safe links) demo
Frontend → Designers (Safe links) demo
Frontend — Multi-Taxonomy A–Z demo
Frontend → Multi-Taxonomy A–Z demo

Requirements


Installation

  1. Upload brand-atlas-woo to wp-content/plugins/ and Activate.
  2. Go to Settings → Permalinks and click Save.
  3. Open Brand Atlas → Shortcodes and click Create Page for a Designers page.
  4. (Optional) Add widgets to Appearance → Widgets → Designer Filters.

Quick Start

  1. Place [designer_a2z] on a page (archive links) or [designers_glossary] (safe links).
  2. Visit /designer/<your-brand-slug>/ to view the archive.
  3. If you see all products, check Routing.

Settings

Brand taxonomyAuto-detected (Woo Brands / PWB / YITH / pa_brand). Override if needed.
Rewrite slugBase for brand archives (default designer).
Sidebar on brand archivesEnable the off-canvas “Designer Filters” area.
Inline CSS & JSPrint minimal assets only on relevant pages.
Glossaries: hide emptyHide terms without products.
Glossary link modearchive (brand archive) or safe (Shop filter with nonce).
Cache TTLMinutes to keep cached HTML.
Custom price filter SQLAdvanced catalogs only; exclude term_taxonomy_ids list.
Remove data on uninstallDelete plugin settings, caches, and pages created by the builder (safe opt-in).

Shortcodes Reference

[designer_a2z]

AttributeValuesDefaultDescription
hide_emptyyes | noyesHide brands with no products
modearchive | safefrom settingsLink to archive or safe Shop filter
headingtextDesignersHeading above the list
[designer_a2z hide_empty="yes" mode="archive" heading="Designers"]

[designers_glossary]

AttributeValuesDefaultDescription
hide_emptyyes | noyesHide brands with no products
[designers_glossary hide_empty="yes"]

[my_glossary]

AttributeValuesDefaultDescription
hide_emptyyes | noyesHide empty terms
taxCSV of taxonomiescategory,post_tag,product_cat,pa_brandInclude your brand taxonomy
modearchive | safefrom settingsApplies only to the brand taxonomy within the mix
[my_glossary hide_empty="yes" tax="category,post_tag,product_cat,pa_brand" mode="archive"]

Brand Archives & Routing

  1. Rewrite: /designer/<term>/ → ?{brand_tax}=<term>
  2. If a Page exists at /designer, WP may parse child URLs as pages. The plugin converts them back to taxonomy queries.
  3. Always Save Permalinks after first activation or when changing the rewrite slug.

Safe Shop Filter

Safe mode produces URLs like /shop/?ba_brand=slug&ba_nonce=…. The main query gets a verified tax_query on brand when viewing the Shop or product archives.


Brand Logos

We read common term meta keys: thumbnail_id, pwb_brand_image, yith_product_brand_logo. Add more via:

add_filter('brandatlas/logo_meta_keys', function($keys){
  $keys[] = 'my_brand_logo_id';
  return $keys;
});

WPML / Polylang / RTL


Glossary UX


Performance & Caching


Developer Hooks

Filters

HookArgsUse
brandatlas/designer_filters_enabled(bool $enabled)Toggle sidebar on brand archives
brandatlas/designer_wrap_classes(string $classes)Change container classes
brandatlas/logo_meta_keys(array $keys)Add custom logo meta keys

Actions

HookArgsUse
brandatlas/after_detect($winner, $candidates)React to detection result
brandatlas/cache/flushCache epoch bumped; clear custom stores

Examples

// Disable sidebar on specific theme pages
add_filter('brandatlas/designer_filters_enabled', function($on){
  return is_page_template('no-sidebar.php') ? false : $on;
});

// Narrow container width
add_filter('brandatlas/designer_wrap_classes', fn() => 'container container--narrow');

Theme & Builder Compatibility


Troubleshooting

Designer page shows all products
  • Save Settings → Permalinks
  • Ensure no Page exists at /designer (or change the rewrite slug)
  • Try Safe mode links to bypass rewrites
“All” shows in English on Arabic/Hebrew
  • We render a localized label via WPML String Translation; if missing, the plugin falls back to الكل / הכל
  • Clear page cache/CDN so the new label appears
Brand logos don’t show
  • Assign a term image via common meta keys (see Logos)
  • Add your custom key using brandatlas/logo_meta_keys
A–Z filter isn’t working
  • Ensure inline JS is enabled (or enqueue the provided assets/js/frontend.js)
  • Hard refresh, disable minifier temporarily to test
Some theme styles override the list
  • Add a small CSS override scoped to .my-glossary-wrapper

FAQ

Does it support FooEvents / custom product types?

Yes. Filtering is taxonomy-based on product, so any product type assigned to a brand is included.

Does it add new DB tables?

No. It uses WordPress/WooCommerce core data and term meta only.

Will it slow my site?

Shortcodes are cached and render only where needed; JSON-LD is small; GA4 pushes are optional.


Uninstall & Data Policy

Enable Remove data on uninstall to delete plugin settings, caches, and pages created by the builder. Products and third-party data are untouched. Always flush Permalinks after re-install.


Updating the Plugin

Upload the new ZIP or replace files via SFTP, then purge object/page cache, CDN, and hard refresh (Ctrl/Cmd+Shift+R).


Changelog (short)


Support

Open a ticket via our helpdesk: https://brandatlas-help.aaa-wa.com/support/

Please include WordPress & WooCommerce versions, PHP version, theme, active plugins, hosting/WAF (Cloudflare/LiteSpeed), steps to reproduce, and any console/network logs.