CelerSearch – AI-Powered Instant Search with Meilisearch
CelerSearch routes WordPress search through Meilisearch: fast responses, typo tolerance, autocomplete, highlighting, optional AI semantic search, and full WooCommerce support.
🎬 Try it live
All three demos run this exact plugin with AI Semantic Search enabled:
- Outdoor Shop (WooCommerce): search keep my coffee hot on the summit and a vacuum flask ranks first, even though its product copy never uses those words.
- Art Gallery (custom post type): try a moody storm at sea, then narrow by medium, style, and era.
- Cinema: describe a feel-good time-travel movie without knowing a single title.
More context for each demo at celersearch.com/demos.
🔍 Search
- Instant results on any site size
- Typo tolerance and stemming out of the box
- Optional AI semantic search that blends meaning with keyword relevance (see below)
- Optional AI chatbot that answers visitor questions from your indexed content, as a floating widget, shortcode, or block (bring your own OpenAI-compatible API key)
- Live, paginated autocomplete as users type
- Match highlighting on titles and excerpts
- Category, tag, and custom-taxonomy filtering
- Pin documents at fixed positions for chosen queries (per-index Rules)
- Custom search results pages via Views + block/shortcode
- Native WordPress search fallback when Meilisearch is unreachable
🤖 AI Semantic Search
Semantic search matches meaning, not just words. CelerSearch configures a Meilisearch embedder on the index and blends vector similarity with keyword relevance (hybrid search) on every query.
- Enable it per index: Index Settings, AI Search, “Enable AI semantic search”
- Bring your own OpenAI API key; keyword search never needs one
- Pick the model: text-embedding-3-small (default, cheapest) or text-embedding-3-large (most accurate)
- Tune the keyword-to-semantic balance with a ratio slider, plus an optional relevance cutoff
- Applies automatically everywhere: site search, autocomplete, and WooCommerce shop filters
- Works with any Meilisearch 1.13+ (or 1.3+ with the vectorStore experimental flag), self-hosted or managed
Full walkthrough in the AI Semantic Search guide, and see the FAQ below for models and costs.
🗂 Indexing
- Posts, pages, any custom post type
- WooCommerce products (including variations) and orders
- Users, for membership and community sites (strict privacy allowlist; email excluded by default)
- Meta Box custom fields, including fields stored in Custom Database Tables
- Real-time sync on publish, update, trash, and watched meta changes
- Manual reindex with configurable batch size; “Refresh in place” mode keeps search live (zero downtime)
- Per-index searchable, filterable, sortable attributes and synonyms, all editable in the admin
- Content splitting for long posts (configurable; Meilisearch deduplicates results)
🌐 Where search runs
- Frontend site search (replace the default results page with a custom View)
- Admin list search (posts, products, orders, media, users)
- BuddyPress members directory
- REST API search (headless/decoupled setups)
- AJAX-faceted WooCommerce shop & archive filters
📊 Analytics (opt-in)
- See your top queries and which ones return zero results, so you can fix content gaps
- Daily query-volume trend per index over 7/30/90-day windows
- Off by default and fully private: data stays in your own database, with bounded retention (see Privacy & Data below)
🎯 Use cases
- WooCommerce stores with thousands of orders: native admin order search slows to a crawl and misses matches as the orders table grows. Enable the “WooCommerce Admin Orders Search” area and lookups stay instant at any scale.
- Product catalogs with rich attributes: drive shop and category archives with AJAX-faceted filters for color, size, brand, price, plus typo-tolerant keyword search.
- Content-heavy sites (news, blogs, documentation): replace the frontend search with live autocomplete and fuzzy matching so readers find posts by typing a few characters.
- Membership and community sites: index users behind a strict privacy allowlist and make the wp-admin Users screen and the BuddyPress members directory instant and typo-tolerant.
- Custom post types at scale: directories, job boards, listings. Native WP search is a slow
LIKE '%…%'across a handful of columns; CelerSearch indexes every field and ranks by relevance.
🧑💻 Developer-friendly
- 40+ filter hooks across indexing, search, and results
- Extend with your own index types (
celersearch_supported_indices) - Custom search-area types (
celersearch_area_types) for LearnDash and others (BuddyPress ships built-in) - Taxonomy-aware queries translate WP_Query
tax_queryto the engine filter syntax
Full documentation at celersearch.com/docs.
Requirements
- WordPress 6.0+
- PHP 8.1+
- A Meilisearch instance: self-host on your VPS, or get a managed one at celersearch.com from $12/mo.
- Optional, for AI Semantic Search: an OpenAI API key and Meilisearch 1.13+ (or 1.3+ with the vectorStore experimental flag).
🚀 Getting started
After activation a welcome notice points you to the setup flow:
- Stand up Meilisearch: self-host (guide) or use celersearch.com
- Add the service under CelerSearch → Services
- Create an index under CelerSearch → Indices and rebuild it
- Enable the relevant search area under CelerSearch → Settings
Privacy & Data
CelerSearch does not phone home. Keyword search forwards queries only to the Meilisearch instance you configure under CelerSearch → Services. One optional feature involves a third party: if you enable AI Semantic Search on an index, document text (as rendered by the document template, capped by its byte limit) and search queries are sent to OpenAI to generate embeddings, using your own API key. That feature is off by default.
The optional Analytics feature (off by default; opt-in under CelerSearch → Settings → Analytics) stores each performed search in your own WordPress database so you can see what visitors search for. When enabled it records:
- The search term (the text typed by the visitor)
- The matching index, area type, and the number of results returned
- The search engine that served the request (e.g.
meilisearch) and a timestamp
IP addresses, user identifiers, session tokens, referrers, and user-agent strings are never stored. Retention is bounded by a configurable window (default 30 days, range 7–365) and a daily background job prunes older rows automatically. You can disable Analytics at any time and clear all collected data from the Settings page. Uninstalling the plugin drops the analytics table entirely.
