The FacetWP WPML Add-on (often referred to as the Multilingual add-on) is a bridge plugin designed to synchronize FacetWP’s filtering capabilities with WPML’s translation framework. It ensures that when a user switches languages, the filters (facets) and their counts update to reflect only the content available in that specific language.
This is EXACTLY the same product as distributed by the developer. Sales Page
Core Specifications & Features
-
Automatic Language Detection: The add-on detects the active language and stores it in the
FWP_HTTP['lang']parameter. This ensures that AJAX refreshes only pull data for the current language. -
String Translation Support: Integrates with WPML String Translation to translate “dynamic” UI strings, such as facet labels, placeholder text (e.g., “Any Category”), and “See More” text.
-
Taxonomy & Term Filtering: Automatically filters results based on translated taxonomies. If a user is on the French version of your site, the facet will only show French category names and relevant post counts.
-
URL Structure Support: Fully supports sub-domains (e.g.,
fr.example.com) and sub-directories (e.g.,example.com/fr/).-
Note: It does not support language as a URL parameter (e.g.,
?lang=fr).
-
-
Indexing Logic: FacetWP indexes posts per language. It treats each translated post as a unique entry in its index table to maintain speed and accuracy.
Technical Requirements
To use this add-on successfully, your environment should meet these standards:
-
Base Plugins: * FacetWP (Core)
-
WPML Multilingual CMS (Core)
-
WPML String Translation (Add-on)
-
-
PHP Version: 7.0 or higher (PHP 8.x is fully supported).
-
WordPress Version: 5.0 or higher.
-
Memory Limit: WPML requires a minimum of 128MB, but 256MB is highly recommended for sites using FacetWP to prevent indexing timeouts.
Critical Setup Configuration
To avoid the “disappearing posts” or “empty facets” issues, you must configure WPML settings as follows:
-
Post Types/Taxonomies Translation: Go to WPML > Settings > Multilingual Content Setup.
-
Selection: Set your post types and taxonomies to “Translatable – only show translated items.”
-
Avoid Fallbacks: Do not use the “display provided fallback” option; FacetWP requires a strict 1:1 relationship between the post language and the index.
-
Re-indexing: Always perform a full re-index (Settings > FacetWP > Re-index) after changing language settings or adding new translations.
Known Issues & Limitations
-
Post Types Order Plugin: If you use “Post Types Order,” you must disable the “Auto Sort” setting. Otherwise, it can cause the indexer to only “see” one language during cron jobs.
-
ACF Checkboxes: There is a known edge case where translated ACF checkbox labels may not render correctly when used inside certain Page Builder shortcodes (like Elementor). A common fix involves a small code snippet in
functions.phpto manually register those strings. -
Multi-Language Posts: FacetWP does not support a single post ID belonging to multiple languages simultaneously; each language version must be its own separate post.
- Categories: WordPress Plugins
- Tags: FacetWP
