Documentation

From install to first millisecond.

The full reference ships with the plugin. This page is the short version, including what we have verified and what we have not.

Quick start

  1. Requirements: WordPress 6.5+, WooCommerce 8.0+, PHP 8.1+ (with the sodium extension).
  2. Upload the plugin zip under Plugins > Add New > Upload, then activate it.
  3. Searchmaker > License: paste your key. It is verified offline against the site's domain.
  4. Searchmaker > Dashboard: Rebuild all now. The first build indexes your catalog; later changes are patched automatically.
  5. Diagnostics > Compatibility: check your setup and, if you use a known theme, apply the suggested search selectors.

Integration levels

  • Augment your search box. Enter a CSS selector under Search > Existing search inputs. The instant dropdown attaches to it.
  • Shortcodes and blocks. [searchmaker_search], [searchmaker_filters], [searchmaker_catalog] or the matching blocks.
  • Compatibility mode. Searchmaker returns product IDs to WooCommerce; your theme renders.
  • Fast Grid. Searchmaker renders the grid and filters on shop and category pages inside your theme shell. Appearance settings control accent colors, radius, card size and where the filters sit.

Indexing and freshness

Builds are immutable and validated; a failed build never touches the live index and rollback is one click. Price and stock changes are patched in tens of milliseconds, edits and new or removed products become delta layers, and a full rebuild is used for term-level changes, the first build and after plugin updates that change the format. If the index is unhealthy, WooCommerce results take over.

Synonyms

The plugin bundles open language packs (Finnish, English, Swedish, German, Estonian) and compiles them per site, keeping only rules whose words occur in your catalog. Matches found only through a synonym rank below every match of what the shopper typed. Untick packs under Search > Synonym packs to leave areas out; wp searchmaker synonyms recompiles on demand.

Learning from searches

When a search finds nothing and the shopper then searches for something else and clicks a result, the connection is remembered. After 5 different visitors (adjustable 3 to 50) did the same, with at least one click and a meaningful share of everyone who ended on the first query, the first word also finds those products.

  • Safe by design: brand names and model numbers are never rewritten, rules point only to words your catalog has, capped at 500 rules and 3 per query, and a rule disappears by itself when its support fades.
  • Anonymous: no IP address, user agent or user id; the visitor is a day-salted hash of a random per-tab id; personal-looking queries are dropped; raw events are deleted after 35 days; Do Not Track is respected.
  • In your control: switch it off, disable single rules or delete all collected data in Search > Search learning. A suggested privacy-policy sentence: "The shop search stores anonymous search terms without any identifier for up to 35 days to improve search results."

Multilingual

One catalog (index) per language, built for WPML and Polylang. Feeds are generated per language; synonym packs follow the catalog language.

SEO of archives

Compatibility mode leaves your markup untouched. Fast Grid renders the first page on the server with real product links and ItemList structured data, adds noindex and a canonical for filter combinations, and returns a real 404 beyond the last page.

Compatibility, honestly

We would rather you know what is verified than discover it in production.

SetupStatusNotes
Block theme (Fast Grid replaces the inheriting Product Collection block)verifiedLive in WordPress and a real browser.
Classic theme (hooks, widget, Compatibility mode)verifiedLive in WordPress and a real browser.
Salient 18 + WPBakeryverifiedIncluding the Salient search overlay preset.
WPMLpartly verifiedBuilt against the WPML API and tested with a simulation of its filters and tables. Real-site validation is in progress.
Polylangpartly verifiedImplemented against the Polylang API; not yet tested on a real installation.
Other theme presets (Storefront, Astra, Flatsome, Kadence, Divi, Avada, WoodMart, The7 and more)partly verifiedSuggested selectors written from general knowledge; the admin screen labels them unverified.
Elementor and WPBakery grids with their own queriespartly verifiedNot replaced by Fast Grid; use the [searchmaker_catalog] shortcode or block.
TranslatePressnot verifiedNot supported yet.
Multisite, cron-driven rebuilds and WP-CLI on real hostsnot verifiedNot yet verified.
100,000 products on a real MariaDB catalognot verifiedEngine timings are measured on synthetic data; a real-catalog measurement is pending.

Security and privacy

The public query endpoint is read-only: no SQL, no WordPress bootstrap, no eval, no user-controlled includes, strict request limits, and the language and modes come from a config file, never the request. Learning events go to a separate append-only endpoint with size caps. Admin actions require a capability and a nonce. Licenses are Ed25519-signed and verified offline.

WP-CLI

wp searchmaker status
wp searchmaker rebuild [--lang=fi]
wp searchmaker rollback [--lang=fi]
wp searchmaker feed [--lang=fi]
wp searchmaker synonyms [--lang=fi]
wp searchmaker learn [--lang=fi]
wp searchmaker license status