Title: Opuswerk Filter Landing Pages for WooCommerce
Author: opuswerk
Published: <strong>October 25, 2026</strong>
Last modified: October 26, 2026

---

Search plugins

![](https://ps.w.org/opuswerk-filter-landing-pages-for-woocommerce/assets/banner-
772x250.png?rev=3764339)

![](https://ps.w.org/opuswerk-filter-landing-pages-for-woocommerce/assets/icon.svg?
rev=3764339)

# Opuswerk Filter Landing Pages for WooCommerce

 By [opuswerk](https://profiles.wordpress.org/ykamanin/)

[Download](https://downloads.wordpress.org/plugin/opuswerk-filter-landing-pages-for-woocommerce.1.0.1.zip)

 * [Details](https://wordpress.org/plugins/opuswerk-filter-landing-pages-for-woocommerce/#description)
 * [Reviews](https://wordpress.org/plugins/opuswerk-filter-landing-pages-for-woocommerce/#reviews)
 *  [Installation](https://wordpress.org/plugins/opuswerk-filter-landing-pages-for-woocommerce/#installation)
 * [Development](https://wordpress.org/plugins/opuswerk-filter-landing-pages-for-woocommerce/#developers)

 [Support](https://wordpress.org/support/plugin/opuswerk-filter-landing-pages-for-woocommerce/)

## Description

Shoppers often search for something specific, such as “grey velvet sofas”. Your 
shop already
 has that page: the Sofas category with the colour filter set to grey
and the material filter set to velvet. To a search engine, though, it is just a 
filter address. It carries the category’s heading and the category’s text, and most
SEO plugins give it a canonical that points back to the plain category. It does 
not rank on its own.

This plugin turns the filter combinations you pick into real landing pages, at the
address
 the filter already produces. You keep your filters, and no new URL is created.

**How it works**

Open a category in your shop, set the filters and click “Make this a landing page”
in the
 toolbar, or paste the address under Products, Filter landing pages. Write
a heading and an intro text; a text below the products, a title and a description
for search results are optional. Publish. Whoever then opens that filter combination,
through a link, a filter click or a search result, sees your heading and text, and
search engines see a page whose canonical points to itself.

**What it does**

 * Gives each landing page its own H1, intro text, text below the products, title
   and meta
    description, and hides the category description on that page.
 * Prints a self-referencing canonical and `index, follow` on landing pages, through
   Yoast
    SEO or Rank Math, or on its own when no SEO plugin is active.
 * Leaves every other filter combination exactly as it was.
 * Recognises a combination in any form: values in any order, with or without the
   operator
    argument, from the classic filter widget or the Product Filters block.
   It stores one canonical form and uses it everywhere: in the canonical tag, the
   links and the robots.txt lines.
 * Refuses what cannot be a landing page and says why: price, rating, stock or search
   
   arguments, a second results page, a duplicate of an existing landing page, a 
   combination without products. A combination with very few products gets a warning.
 * Lists the landing pages under Products, with category, filters and product count.
 * Adds a “Popular filters” block of links to the landing pages on their unfiltered
   category
    page, so that search engines find them.
 * Shows a robots.txt block to copy: filter addresses disallowed, and an `Allow`
   line for
    each landing page that matches its exact address. The plugin does not
   write robots.txt itself.
 * Makes the WooCommerce Product Filters block reload the page in categories that
   have
    landing pages, so that a shopper who filters into one sees its heading 
   and text. In other categories the block keeps filtering without a reload.
 * Clears the cache of a changed landing page and its category in WP Rocket and 
   LiteSpeed
    Cache. Other caches can listen to an action.
 * Works with page builders through the shortcode `[opusflp_landing part="intro"]`,
   with the
    parts `h1`, `intro`, `bottom` and `links`.
 * Offers the WP-CLI commands `wp opusflp list` and `wp opusflp check <url>`.

**Which shops it is for**

Shops that filter with WooCommerce’s own filters: the “Filter Products by Attribute”
widget,
 the Product Filters block, and themes that reuse their addresses, such 
as `?filter_color=grey`. Landing pages are built on product categories and product
attributes. Filter plugins that write addresses of their own are not read in this
version.

**SEO plugins**

Tested with Yoast SEO (free) and Rank Math. With either of them, the plugin hands
its
 canonical, title, description and robots values to the SEO plugin, so each 
tag appears exactly once. Without an SEO plugin, the plugin prints them itself. 
When another SEO plugin is active, for example SEOPress, All in One SEO or The SEO
Framework, the plugin prints nothing in the page head, to avoid a second canonical,
and says so in one dismissible notice. Headings, texts and links still work.

**For shops in Germany, Austria and Switzerland**

Filter pages (Filterseiten) and faceted navigation (Facettennavigation) are where
a shop’s
 most specific searches land, such as a colour or a material within a category.
A complete German translation is available, in the formal (Sie) and the informal(
du) form. WordPress loads it from translate.wordpress.org. Until the language pack
is published there, German shops see the English admin screens. The texts of the
landing pages are yours, in any language.

**What it deliberately does not do**

It does not phone home and does not require an account. It does not touch filter
addresses
 that are not landing pages: no noindex, no redirect, no new canonical.
It does not write robots.txt or an XML sitemap. Landing pages are built on product
categories, not on brands, tags or the shop page.

**For developers**

Read another filter address format with the `opusflp_dialects` filter, support an
SEO plugin
 with `opusflp_seo_adapters`, and a cache with `opusflp_cache_adapters`
or the action `opusflp_purge_urls`. Choose which landing page a request shows with`
opusflp_match`, change the canonical address with `opusflp_canonical_url`, and set
the product count below which a page counts as thin (default 3) with `opusflp_thin_threshold`.
The actions `opusflp_landing_saved` and `opusflp_landing_deleted` fire after a change.
The full list is in the plugin’s source.

## Screenshots

[⌊The landing pages under Products, with category, filters and product count.⌉⌊The
landing pages under Products, with category, filters and product count.⌉[

The landing pages under Products, with category, filters and product count.

[⌊Editing a landing page: the pasted address, its canonical form, the product count
and the robots.txt line.⌉⌊Editing a landing page: the pasted address, its canonical
form, the product count and the robots.txt line.⌉[

Editing a landing page: the pasted address, its canonical form, the product count
and the robots.txt line.

[⌊A landing page in the shop: its own heading and intro text above the filtered 
products.⌉⌊A landing page in the shop: its own heading and intro text above the 
filtered products.⌉[

A landing page in the shop: its own heading and intro text above the filtered products.

[⌊The settings section under WooCommerce, Settings, Products, with the robots.txt
block to copy.⌉⌊The settings section under WooCommerce, Settings, Products, with
the robots.txt block to copy.⌉[

The settings section under WooCommerce, Settings, Products, with the robots.txt 
block to copy.

[⌊The unfiltered category page with the "Popular filters" links to its landing pages.⌉⌊
The unfiltered category page with the "Popular filters" links to its landing pages
.⌉[

The unfiltered category page with the “Popular filters” links to its landing pages.

## Installation

 1. Install and activate the plugin. WooCommerce must be active.
 2. Open a product category in your shop, set one or more attribute filters and choose“
    Make this a landing page” in the toolbar.
 3. Write the heading and the intro text, then publish.
 4. Optional: copy the robots.txt block from WooCommerce, Settings, Products, Filter
    landing pages into your robots.txt.

## FAQ

### Which filters does it work with?

WooCommerce’s own: the “Filter Products by Attribute” widget, the Product Filters
block, and
 themes that write the same addresses (`filter_<attribute>` and `query_type_
<attribute>`). Filters by price, rating or stock cannot be part of a landing page,
because their results change with every price or stock update. Filter plugins with
an address format of their own are not supported in this version.

### Does it create new URLs?

No. A landing page lives at the address the filter already produces, for example
/
product-category/sofas/?filter_color=grey. There is nothing to redirect, and the
address keeps working when you deactivate the plugin, only without your heading 
and texts.

### What happens to all the other filter combinations?

Nothing. They keep whatever your SEO plugin does with them today. To stop search
engines
 crawling them, copy the robots.txt block from the settings: it disallows
filter addresses and allows each landing page. A blocked address is no longer crawled,
but one that search engines already know may stay listed for a while, without its
content.

### Why an Allow line for each landing page?

A robots.txt that blocks `?filter_` addresses blocks your landing pages too. Google
follows
 the most specific matching rule, so a line with the landing page’s exact
address, ending in `$`, lets it crawl that one page and no variant of it. The plugin
writes the line in the same canonical form as the canonical tag and the links, so
the three always match. Copy the block again after you add or change a landing page.

### Does it work with Yoast SEO?

Yes, tested with Yoast SEO (free). On a landing page, Yoast prints the canonical,
title,
 description and robots values the plugin hands it, in its Open Graph tags
as well. The paid Yoast WooCommerce SEO has not been tested.

### Does it work with Rank Math?

Yes. On a landing page, Rank Math prints the plugin’s canonical, title, description
and
 robots values, in its Open Graph and Twitter tags as well.

### I use another SEO plugin. What happens?

The plugin adds no canonical, title, description or robots tags, so nothing is doubled,
and
 a dismissible notice names the SEO plugin it found. Headings, texts, links 
and the robots.txt lines work as usual. Keep in mind that most SEO plugins give 
filter addresses a canonical to the category, which keeps a landing page out of 
search results.

### Yoast SEO and Rank Math are both active. Is that a problem?

Each of them prints its own canonical, so a page gets two. Both point to the landing
page
 itself, but one SEO plugin per site is the clean setup.

### My theme or page builder still shows the category heading.

The plugin changes the heading and the description through WooCommerce’s hooks and
the
 archive title functions that most themes use. For a page builder or a theme
with a header of its own, use the shortcode: `[opusflp_landing part="h1"]` returns
the heading text for your heading element, and `intro`, `bottom` and `links` print
the texts and the links block. The texts and the links block appear only once per
page, even when a theme hook prints them too.

### Why does the Product Filters block reload the page?

The block normally swaps only the product list. A shopper who filters into a landing
page
 would then see the category’s heading above its products. In categories that
have landing pages, the plugin switches the block to full page loads; elsewhere 
the block stays as it is. Turn this off under WooCommerce, Settings, Products, Filter
landing pages.

### Do I need to clear my cache after editing a landing page?

Not with WP Rocket or LiteSpeed Cache: the plugin clears the landing page and its
category
 when you save, trash or delete it. Clear other caches yourself, or hook
into the action `opusflp_purge_urls`.

### How many landing pages can I create?

As many as you like.

### Does it send any data anywhere?

No. The plugin makes no external requests of its own. The only request it makes 
at all is
 the one you ask for with `wp opusflp check <url> --fetch`, which loads
that page from your own site to read its head.

### What is removed when I delete the plugin?

Its landing pages, its settings, its index of filter combinations and the notices
you
 dismissed. Products, categories and attributes are not touched. Lines you copied
into robots.txt stay there until you remove them.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Opuswerk Filter Landing Pages for WooCommerce” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ opuswerk ](https://profiles.wordpress.org/ykamanin/)

“Opuswerk Filter Landing Pages for WooCommerce” has been translated into 1 locale.
Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/opuswerk-filter-landing-pages-for-woocommerce/contributors)
for their contributions.

[Translate “Opuswerk Filter Landing Pages for WooCommerce” into your language.](https://translate.wordpress.org/projects/wp-plugins/opuswerk-filter-landing-pages-for-woocommerce)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/opuswerk-filter-landing-pages-for-woocommerce/),
check out the [SVN repository](https://plugins.svn.wordpress.org/opuswerk-filter-landing-pages-for-woocommerce/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/opuswerk-filter-landing-pages-for-woocommerce/)
by [RSS](https://plugins.trac.wordpress.org/log/opuswerk-filter-landing-pages-for-woocommerce/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.1

 * Links to the support forum and to rate the plugin on the plugins screen; the 
   settings section names the support forum for problems and bug reports, and once
   three landing pages are live asks for a review, hidden for good with one click.
 * Tested with WordPress 7.1.3 and WooCommerce 11.2.1.

#### 1.0.0

 * First release.
 * Landing pages for WooCommerce filter combinations on product categories, with
   their own H1, intro text, text below the products, title and meta description.
 * Self-canonical and index, follow through Yoast SEO, Rank Math or on its own; 
   nothing in the head when another SEO plugin is active.
 * “Popular filters” links on the category page, robots.txt lines to copy, full 
   page loads for the Product Filters block where landing pages exist.
 * Cache clearing for WP Rocket and LiteSpeed Cache; the shortcode `[opusflp_landing]`;
   WP-CLI `list` and `check`.

## Meta

 *  Version **1.0.1**
 *  Last updated **3 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.5 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 7.4 or higher **
 *  Languages
 * [English (US)](https://wordpress.org/plugins/opuswerk-filter-landing-pages-for-woocommerce/)
   and [German](https://de.wordpress.org/plugins/opuswerk-filter-landing-pages-for-woocommerce/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/opuswerk-filter-landing-pages-for-woocommerce)
 * Tags
 * [canonical](https://wordpress.org/plugins/tags/canonical/)[landing pages](https://wordpress.org/plugins/tags/landing-pages/)
   [product filter](https://wordpress.org/plugins/tags/product-filter/)[seo](https://wordpress.org/plugins/tags/seo/)
   [woocommerce](https://wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://wordpress.org/plugins/opuswerk-filter-landing-pages-for-woocommerce/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/opuswerk-filter-landing-pages-for-woocommerce/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/opuswerk-filter-landing-pages-for-woocommerce/reviews/)

## Contributors

 *   [ opuswerk ](https://profiles.wordpress.org/ykamanin/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/opuswerk-filter-landing-pages-for-woocommerce/)