Super Speedy Search by WP Intense

Super Speedy Search by WP Intense 5.52.32

No permission to download
* `wp sss rebuild` now flushes the WordPress object cache at the end of the build. Without this, sites with a persistent object cache (Redis, Memcached) could keep serving the pre-rebuild alloptions blob and the search-column list used to build MATCH() queries would lag the actual rebuilt FULLTEXT index — manifesting as "Can't find FULLTEXT index matching the column list" until the cache expired on its own.
* New multi-post-type search on the Front-end tab. Picking "Search multiple post types" (the renamed "Do not set" option, now moved off the Main tab) exposes a Layout choice: Single ranked list (the existing single-query behaviour) or Mixed sections by post type (a new layout that runs one query per post type and renders each section with its own template). Each path is independent - sites that never touch the new controls are unaffected.
* Single-list mode adds two opt-in overrules: "Overrule post types" forces the search to exactly the ticked types (replaces whatever theme/Woo/site hooks would otherwise decide), and "Overrule template" routes the results page through the chosen post type's archive-{slug}.php so a multi-type search can look and feel like (e.g.) the product archive. Both default to "Let my site decide" so existing behaviour is preserved on upgrade.
* Per-row weights in single-list multi-type queries. Previously SSS picked one post type and used its weights for the entire result set (so e.g. a mixed post+product query ranked products with post weights, ignoring product-specific metamatches like the _stock_status=instock boost). Each row is now scored using its own post type's weights via per-row CASE expressions over wp_superspeedysearch.post_type. Single-type queries are unaffected and emit the same SQL as before.
* New "Post Type Promotion" row on each per-type Weights block - adds a constant boost to that type's relevancy score so admins can bias e.g. products above posts in a single ranked list. Has no effect in single-type searches or in Mixed Sections layout (where section order is the ranking).
* Mixed Sections layout ships three new templates: templates/sss-multi-search.php (wrapper), templates/sss-multi-search-section.php (generic), and templates/sss-multi-search-section-product.php (Woo-aware, uses wc_get_template_part for full product cards). Themes can override at <theme>/super-speedy-search/<file>.php. Each section header supports a configurable heading with a `<search-term>` placeholder substituted at render time.
* Plugin-wide exclude_from_search policy. Post types registered with `exclude_from_search => true` are no longer offered as options anywhere - Weights, Suggestions, Ajax post types, Default Post Type dropdown, multi-search overrule list, mixed-sections "Add section" dropdown, widgets, Gutenberg block. The post type author's intent (exclude from search) is now honoured by SSS's UI. Sites that intentionally want to expose such a CPT can re-enable it via the existing sss_post_types_args filter. Side effect on upgrade: an excluded CPT previously configured in (e.g.) the Ajax tab will disappear from the admin UI but its saved settings remain in sss_options.
* Taxonomy combination suggestions are now ranked by how completely the user's typed words actually claimed the row's terms, not by raw depth. Each typed word claims at most one term, and rows where every term was claimed (perfect-fit) are surfaced first; within that tier, more terms claimed wins (a 3-term match beats a 2-term beats a 1-term). The old "depth priority multiplier" setting is removed - it could push triples to the top even when the user only typed a single word that incidentally hit two terms in the row, which produced misleading suggestions. Rows where the search only matched the post-type label (no term claimed) are no longer returned.
* New "Token matching" setting on the Taxonomy Suggestions section: Optimal (default) finds the best token-to-term assignment regardless of typed order; Strict order requires tokens to claim terms left-to-right in the admin's tax_a → tax_b → tax_c order, so out-of-order typing scores lower. Choose Strict if you set the taxonomies in the order you expect users to type.
* Taxonomy combination suggestion URLs now route through Super Speedy Filters when it's active, so click destinations like "Dogs ▸ Dog Grooming ▸ Cool Dogs Co ▸ Red" land on the pretty permalink form (e.g. /product-category/dogs/dog-grooming/brands/cool-dogs-co/color/red/) instead of mixing the pretty base with raw query args (?product_brand=cool-dogs-co&pa_color=red). Without SSF the existing query-arg URL is still produced. Requires the SSF Pretty URLs add-on for the prettified form.
* Taxonomy Suggestions combination rows now have a "Show Post Type Name" dropdown (Don't Show / Show at Start / Show at End) so you can decide per-row whether to surface the post-type label in the suggestion (e.g. "Caterpillar - Excavators ▸ Machine") and where it appears. Default is Don't Show. Changing this preference takes effect immediately - no rebuild needed.
* Taxonomy combination suggestions now bold the matching prefix tokens (e.g. typing "dog to" bolds "Dog" and "To" in "Dog Toys"), matching the existing post-title suggestions, and the dropdown styling (padding, hover, link colour) now matches the post-title and taxonomy lists for visual consistency.
* Taxonomy combination suggestions now go through the ultra-fast ajax mu-plugin path when "Enable our ultra-fast ajax" is enabled - previously combinations always fell through to the standard WP REST API path while post-title and taxonomy suggestions used the fast path, so combinations were noticeably slower than the other suggestion types. (Bumps the bundled mu-plugin to 1.14.3 - it auto-redeploys on the next admin page load.)
* Taxonomy Suggestions combination rows now filter the Taxonomy A/B/C dropdowns to only show taxonomies registered for the selected post type, so you can't accidentally pick a taxonomy that doesn't apply.
* New Taxonomy Suggestions feature - precompute suggestion rows that combine 1, 2, or 3 taxonomy terms for a specific post type (e.g. "Caterpillar - Excavators - Machine") with accurate post counts per row. Only combinations that actually exist on published posts are indexed. Suggestions appear in the ajax dropdown below the existing token suggestions. Configure on the new Taxonomy Suggestions section of the Suggestions tab - pick a post type and 1-3 taxonomies per row; the depth is inferred from how many taxonomy slots you fill.
* Same (make, category) pair that exists in multiple post types produces one suggestion row per post type, each with its own post count and post-type label, so users see e.g. "Caterpillar - Excavators - Machine" and "Caterpillar - Excavators - Industry" as separate rows when both contain products.
* Filtered archive URLs for taxonomy-combination clicks are built at read time and land on a WooCommerce/taxonomy archive page with the other terms applied as query args - no dependency on Super Speedy Filters.
* New REST endpoint /wp-json/sss/v1/combinations/<term> returns matching combinations as JSON.
* New WP-CLI subcommand: wp sss rebuild taxonomy_suggestions rebuilds only the taxonomy-combinations table. wp sss rebuild (no scope) and wp sss rebuild all now also include taxonomy suggestions as the final step; wp sss rebuild search and wp sss rebuild suggestions continue to skip them. Recommended: add wp sss rebuild to your server crontab for nightly refreshes if the admin-triggered rebuild ever hits your hosting's PHP timeout.
* Advanced tab now lists all WP-CLI rebuild commands with guidance to prefer CLI when admin-triggered rebuilds fail due to hosting limits (30-second PHP timeout, memory caps, unreliable WP-cron).
* Rebuild skips disabled suggestion types - if Enable Post Title Suggestions is off, the post-title token-generation pipeline is not run (previously it rebuilt the suggestion table regardless of whether anything would query it). Same applies to Enable Taxonomy Suggestions. The existing suggestion table is left in place so re-enabling the feature later doesn't require a rebuild to start working again.
* Restructured Suggestions tab into two sections: Post Title Suggestions (the existing token-based suggestions, now with a post-types picker so you can scan specific post types for suggestion tokens instead of relying on the Ajax Post Types selection) and the new Taxonomy Suggestions section.
* Ajax tab "Enabled Ajax Suggestions" renamed to "Enable Suggestions" with two checkboxes: Enable Post Title Suggestions, Enable Taxonomy Suggestions.
* Legacy "Suggest Taxonomies" single-term field on the Ajax tab is now hidden for new users via a one-shot migration; existing sites that already had taxonomies ticked keep it visible so their setup continues to work unchanged.
* Fixed a gap between the wp-admin toolbar and the left sidebar that appeared on every admin page under PHP 8.2+ - the SSS class was creating dynamic properties without declaring them, firing E_DEPRECATED warnings that caused WP to add a .php-error class to body.
* Fixed undefined $wpdb warning in the Readiness Status collation list.
* Renamed "Search Analytics" tab to "Analytics & Caching" to better reflect the caching options it contains
* Added auto-cache for slow searches: caches any search term whose tracked average speed exceeds a configurable threshold (default > 250ms) for a configurable duration (default 20 minutes). Works alongside the existing frequency-based and top-X auto-cache options
* Fixed missing avg speed in Analytics & Caching table - front-end main-query searches were being tracked before the query ran so no speed was recorded (column always showed -). Now stashes the start time in pre_get_posts and records elapsed ms from the_posts filter after the query actually executes. Slow-search auto-cache now has real data to work with.
* Meta Search tab now loads instantly on first page view - only a curated whitelist of commonly-searched meta keys (SKU, MPN, GTIN, ISBN, EAN, UPC, ASIN, brand, manufacturer, model, supplier, supplier code, part number, subtitle, byline, deck, summary, purchase note, variation description, etc.) is queried against wp_postmeta via an indexed IN lookup
* Added "Fetch all meta keys" button on the Meta Search tab (replaces "Refresh Meta Keys List") that runs the exhaustive postmeta scan on demand via AJAX
* Already-selected meta keys are always surfaced on first page load so saved settings remain visible even if not in the whitelist
* Added new sss_meta_keys_whitelist filter so the whitelist can be extended per-site
* Added exclusion for any meta_key containing "post_id" (e.g. foo_post_id_123) from the exhaustive scan - catches plugins that embed post IDs into meta key names
* Added exclusion for meta keys starting with fsp_fb_ from the exhaustive scan
* WP-CLI rebuild now prints each SQL statement BEFORE executing it (previously printed after completion) so users can see which query is currently running in real time
* Added Search Analytics tab - track which terms users search for, view top searches, and configure per-term redirects and caching
* Added search term redirects - admins can redirect popular search terms (e.g. "borisov") to specific URLs (e.g. /tags/borisov/) instead of running a search
* Added search result caching - global cache, per-term cache, and auto-cache for top X searches from last Y hours
* Added search tracking - aggregate search frequency tracking with INSERT ON DUPLICATE KEY UPDATE for minimal performance impact
* Fixed undefined $default_language variable in suggestion builder causing PHP warnings and incorrect language assignment for user-added suggestions
* Fixed collation detection: SSS tables now match the actual wp_posts table collation (detected via SHOW TABLE STATUS) instead of relying on wp-config.php defaults which may differ from existing tables
* Removed hardcoded collate utf8mb4_unicode_ci from suggestions DELETE join - the rebuild now ensures all suggestion tables have matching collations automatically
* Rebuild process now ALTERs persisting suggestion tables (useradded/userremoved) to match the detected collation if they differ
* Readiness check now always shows collation of all SSS and WordPress tables regardless of whether TranslatePress is installed
* TranslatePress collation mismatches now show ALTER SQL for the user to run manually
* Build process now properly aborts on "Duplicate entry" scheduler errors instead of retrying in an infinite loop, with instructions to use wp sss rebuild via CLI
* Build process now properly cancels the queue on SQL errors instead of calling exit which left the queue intact
* Fixed search result caching - cache now works for both full page and AJAX searches via shared code path in sss_pre_get_posts
* Fixed cache storage bug where WordPress's found_posts filter fired before the_posts, clearing pending cache data before IDs could be captured
* Changed cache storage from query vars (which WordPress resets internally) to SSS instance property using spl_object_id for reliable tracking
* Cache now stores found_posts total from FOUND_ROWS() for correct pagination on cache hits
* Frequency-based caching: "Cache searches which happen X times within Y period for Z duration" replaces simple "cache all" toggle
* Settings tabs now retain active tab after saving (hash preserved in form referer)
* Search speed (avg query time in ms) now tracked and displayed in Search Analytics table
* Added Multi-search tab with two-phase search: Phase 1 restricts to recent content for faster results, Phase 2 falls back to unrestricted search if not enough recent results found
* Configurable recent period (days/weeks/months) and "Search older items" button text
* When Phase 1 fills a full page, pagination is replaced with "Search older items" button that shows remaining results excluding the recent ones
* AJAX dropdown search also uses multi-phase: tries recent-only first, falls back to unrestricted if insufficient results
* Multi-phase search works with existing search caching - cached results respect the date restriction
* Added filter removal for Anasta filters when SSS is active on front end to speed up and improve search on those sites
* Added fix for media search where some images were marked as hidden but should have been showing up anyway
* Added 2 column display option into Ajax Settings tab (if you already added 2 columns with your own CSS you don't need to enable this)
* Added polylang support for suggestions so only the current language suggestions appear
* Added new Polylang setting to Additional Options tab - let's you choose if you wish to filter suggestions and posts/products by the language (you don't have to)
* Fixed minor bug in suggestions which could cause z's to appear (z is used as a replacement for special characters to improve small token search)
* Fixed minor bug in suggestions where minimum suggestions was actually 1 more than interface suggested (e.g. if you had it set to 2 occurrences required, it was actually 3 occurrences required)
* Added polylang language awareness to post search - previously, it was working but it was relying on polylang taxonomy join which is a bit slower than the language column directly on wp_superspeedysearch
* Added table maintenance for language column for polylang for posts
* Improved onboarding - fixed auto-build so it won't build until after settings saved and tested repeatedly on new installs (working perfectly!)
Top