FacetWP Conditional Logic Addon
Antivirus scan
Powered by ClamAV
✅ Verified clean
This product file has passed our security filters.
Want to run a fresh ClamAV scan right now? Takes a few seconds and shows scanner version, signature DB and live result.
This can take 5 to 30 seconds.
Clean file Threat detected
No threats detected in this file.
- File
- Size
- Scanned
- ClamAV
- Signature database
⚡ Powered by ClamAV
Scan could not be completed
Report product
If you detected an issue (broken file, malware, inappropriate content, etc.) let us know and we'll review it ASAP.
Sign in to report
About FacetWP Conditional Logic Addon
A filter that does not apply still asks for attention
In a faceted listing, every filter takes up its space even when it serves no purpose at that moment. A size facet that only makes sense inside a category also appears when none has been chosen yet. Another runs out of visible choices and leaves a heading hanging. The visitor scans the whole column to find out what they can use.
FacetWP Conditional Logic makes the panel respond to what the visitor picks: a facet appears when another has a value, a column hides if no choices remain, a block changes with the URL. It adds no facets and does not change how they filter: it decides what shows and when.
A rule is an IF, a THEN and an ELSE
Each ruleset has those three parts. IF conditions can be combined with AND or OR, and a ruleset with no conditions always applies its actions.
These are the available conditions:
- No facets in use or some facets in use.
- Facet value: true when the user selects that choice. It accepts several comma-separated values, with OR logic. Left blank, it checks whether the facet is in use.
- Page URI: with no leading or trailing slash, and one wildcard at the end at most.
- Result count: true when that number matches the listing's results.
- Template: true when a Listing Builder template is on the page.
Actions are show or hide, and the object can be one facet, all facets, the template chosen in the condition or a custom selector.
Selectors to hide what surrounds the facet
Hiding an empty facet can leave its container or heading visible. Custom selectors handle that, with four special targets: $EMPTY, $NONEMPTY, $ACTIVE and $INACTIVE.
With $EMPTY.closest('.widget') you target the whole widget holding a facet with no choices, and with $ACTIVE.prev('h3') the heading before an active facet.
One piece to keep in mind: these selectors use the FacetWP fUtil library, not jQuery. Methods such as closest(), find(), parents(), prev() and next() work, but not every jQuery method exists; children(), for example, is not there.
Four details that make a rule fail
- The value is the technical one. The condition uses the value shown in the URL, such as
alfa-romeo, not the visible label, Alfa Romeo. - Facets with ghosts are never empty. With that option on,
$EMPTYdoes not reach them. - Caching interferes with the URI. A caching plugin can make page URI rules inconsistent. The way out is to exclude that page from caching or use another condition.
- Order matters. Rulesets run in the order they appear and can override each other. The ELSE option Do the opposite can overrule what an earlier ruleset left in place, especially with URI conditions. Do nothing avoids this.
What you need installed and a first ruleset
It is an add-on: it requires a current version of FacetWP and, for its facet rules, facets already created.
This sequence covers the case of a facet that should only appear when another has a value:
- Install and activate the add-on alongside FacetWP.
- Copy from the URL the technical value of the choice that will act as the trigger.
- Create a ruleset and give it a recognizable name.
- Add the facet value condition and the action that shows the other facet.
- Leave ELSE on Do the opposite if you want it hidden when the selection is removed.
- Test with the choice selected and unselected.
A ruleset can be disabled with its checkbox without losing its configuration, which helps locate which rule overrides another.
FacetWP pieces that pair well with this
The base is FacetWP. Rules can also reach elements of the mobile panel in FacetWP Mobile Flyout through a custom selector.
Answers for before you write rules
Can I require two values at once?
Comma-separated values work with OR logic. To require both, use two single-value conditions joined with AND.
Does it work on more than facets?
Yes. With a custom selector the action reaches other elements on the page, and it can also show or hide the Listing Builder template.
Can I move the rules to another site?
Yes, from the add-on's Settings tab. Importing replaces all rulesets already on the destination.
Version history
-
v
1.5.1 Current 26 Mar 2026
Customer reviews
Sign in to leave a review. Only people who have the product can review it.
No reviews for this product yet.
Frequently asked questions
-
GPL (General Public License) is the license under which WordPress and most premium plugins/themes are distributed. It grants you the right to use, modify and redistribute the software in as many projects as you want, with no domain restrictions.
-
Yes. With membership you get automatic updates via our GPLClub Updater plugin (installed on your WP, detects new versions and applies them). With individual purchase, you get one year of manual updates from your account.
-
Depends on the plan. Monthly: 3 domains. Semi-annual: 7. Annual and Lifetime: 15. Individual purchase: 1 domain.
-
GPLClub offers its own support for installation, configuration and compatibility. For direct support from the original author (feature requests, product-specific bugs), a license purchased from the author is required.