B3 logoB3Docs

B3 Product Filters Article

Delivery & Shareable URLs

Deliver the panel automatically or with a block, shortcode, or widget, then preserve filter state in URLs and no-JavaScript requests.

Choose one clear delivery path for each storefront location. Automatic placement covers standard WooCommerce archives, while the block, shortcode, and widget handle custom templates and builder-owned layouts.

Browse docs
StorefrontURLs

Automatic archive delivery

Auto-render the panel on the WooCommerce archive surfaces you enable.

The Placement settings can automatically render the filter panel and load its assets on the shop page, product-category archives, product-tag archives, and product search results. Disable a surface when its template already provides a manually placed panel.

Block, shortcode, and widget

Embed the same filter panel in editors, builders, and classic sidebars.

Product Filters block
Add the dynamic block to a page or template in the WordPress block editor.
[b3_product_filters] shortcode
Place the shortcode in a page builder or any content area that supports shortcodes.
B3 Product Filters widget
Add the classic widget to a sidebar or widget area provided by the active theme.
  1. 1
    Choose one delivery method for the location you are editing.
  2. 2
    Load the page and confirm the panel can identify the intended product loop.
  3. 3
    Apply one filter, clear it, and repeat the cycle after any builder or infinite-scroll content update.

Shareable state and fallback

Keep filtered views bookmarkable while preserving a server-rendered fallback.

With Shareable URLs enabled, the plugin writes filter state to namespaced pf_ query parameters. Shoppers can bookmark a filtered view and browser back and forward restore the corresponding state.

Terms and attributes
Selected values use the matching taxonomy parameter, such as pf_pa_color.
Price and catalog state
Price, stock, on-sale, rating, search, sorting, and pagination use their own pf_ parameters.
No-JavaScript fallback
The panel includes a GET form so supported WooCommerce archive requests can still apply filter state without the AJAX app.