CelerSearch – Lightning Fast Search with Meilisearch

Description

CelerSearch routes WordPress search through Meilisearch. Sub-50ms responses, typo tolerance, autocomplete, highlighting, and full WooCommerce support — with an admin UI built for day-to-day use, not just setup.

🔍 Search

  • Millisecond results on any site size
  • Typo tolerance and stemming out of the box
  • Live autocomplete as users type
  • Match highlighting on titles and excerpts
  • Category, tag, and custom-taxonomy filtering
  • Custom search results pages via Views + block/shortcode
  • Native WordPress search fallback when Meilisearch is unreachable

🗂 Indexing

  • Posts, pages, any custom post type
  • WooCommerce products (including variations) and orders
  • Real-time sync on publish, update, trash, and watched meta changes
  • Manual rebuild with configurable batch size
  • Per-index searchable, filterable, sortable attributes + 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, media)
  • REST API search (headless/decoupled setups)
  • AJAX-faceted WooCommerce shop & archive filters

🎯 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.
  • 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 BuddyPress, LearnDash, etc.
  • Taxonomy-aware queries translate WP_Query tax_query to the engine filter syntax

Full documentation at docs.celersearch.com.

Requirements

  • WordPress 6.0+
  • PHP 8.1+
  • A Meilisearch instance — self-host on your VPS, or get a managed one at celersearch.com from $10/mo.

🚀 Getting started

After activation a welcome notice points you to the setup flow:

  1. Stand up Meilisearch — self-host (guide) or use celersearch.com
  2. Add the service under CelerSearch Services
  3. Create an index under CelerSearch Indices and rebuild it
  4. Enable the relevant search area under CelerSearch Settings

Screenshots

  • Service create page
  • Services index page
  • Index create page
  • Indices index page
  • Index settings modal
  • Index browser – See what’s in the index and preview the documents structure
  • Views creation and embed to public page
  • Plugin settings
  • Search Area configuration – WooCommerce product search
  • Search Area configuration – Swap public WordPress search with CelerSearch based search

Blocks

This plugin provides 1 block.

  • CelerSearch Embed a CelerSearch search view.

Installation

  1. Upload the celersearch folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Configure your MeiliSearch service under CelerSearch > Services
  4. Create indices and configure search areas

FAQ

Do I need my own Meilisearch server?

Yes. Two options:

  • Self-host on your VPS — free, but you handle updates, backups, and SSL. Upstream guide.
  • Managed at celersearch.com — from $10/mo, provisioned in seconds, updates and backups handled.

Does it work with WooCommerce?

Yes. Dedicated Products and Orders index types, plus AJAX-faceted shop & archive filters.

Will it slow down my site?

No. Search queries go to Meilisearch, which responds in under 50ms.

What if Meilisearch goes down?

With fallback enabled (default), search reverts to native WordPress search automatically.

Can I disable content splitting for large posts?

Yes. Open CelerSearch Indices, edit the index, and toggle Content Splitting (chunk size is configurable per index).

For site-wide overrides you can also set these in wp-config.php:

define( 'CELERSEARCH_SPLIT_POSTS', false );
define( 'CELERSEARCH_CONTENT_MAX_SIZE', 3000 );

Rebuild the affected indices after changing either.

How do I replace the default search results page?

  1. CelerSearch Views — create a View, pick an index, configure behavior.
  2. Create a WordPress page and embed the View via the CelerSearch block or [celersearch] shortcode.
  3. CelerSearch Settings Search Areas — on “WordPress Public Search”, enable “Replace Search Results Page” and pick the page.

What’s the difference between Search Areas and Views?

They solve different problems and often work together.

  • Search Areas (Settings Search Areas) intercept WordPress search where it already happens — the frontend search, admin list search, REST API search, WooCommerce shop filters — and route it through Meilisearch. No template changes; you pick which index each context uses.
  • Views (CelerSearch Views) are a UI primitive for building custom search experiences you embed via the CelerSearch block or the [celersearch] shortcode. A View bundles the input, autocomplete, filters, results layout, and sorting as one configurable unit you drop onto any page or widget area.

Typical setup uses both: create a View-powered search page, then enable “Replace Search Results Page” on the WordPress Public Search area and point it at that page — the Search Area handles the interception, the View renders the page.

Reviews

Read all 1 review

Contributors & Developers

“CelerSearch – Lightning Fast Search with Meilisearch” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.4.0

  • Add first-run welcome notice
  • Add host-options picker to the Services empty state and Create Service modal
  • Add per-index settings UI for searchable, filterable, sortable attributes and synonyms
  • Add Index Browser modal with in-engine search, filters, and index configuration
  • Add row-level action menus, toast notifications, reusable confirmation modals, and admin footer polish
  • Improve: frontend search-view and WooCommerce shop-filter typography now scales with the theme’s font size
  • Fix: MultiSelect dropdowns inside modals no longer get clipped by the modal edge
  • Fix: Indices page no longer fatals when an index references a deleted service
  • Fix: admin assets enqueue with exact page-slug match, avoiding leakage onto third-party admin pages
  • Fix: admin modals correctly center and align with the WP admin content area
  • Tested and ready for WordPress 7.0

1.3.1

  • Fix: Defer translation of index type labels to avoid the “translation loading triggered too early” notice on WordPress 6.7+

1.3.0

  • Fix: Ensure Meilisearch indexes are created with correct primary key and settings before first sync
  • Fix: Provision index with filterable attributes on creation, preventing empty search results
  • Fix: Detect and automatically clean up stuck Action Scheduler sync jobs
  • Add content splitting as a per-index setting (enable/disable and max record size)
  • Add sync error logging visible to admins via AJAX endpoints
  • Improve documents column to clarify indexed vs local counts when content splitting is active

1.2.4

  • Fix: URL based search query does not persist in search page
  • Fix: CelerSearch menu registers for non-admin users too in wp-admin

1.2.3

  • Respect initial_display setting when search input is cleared in Views

1.2.2

  • Add sorting option in Views and Search areas

1.2.1

  • Fix post splitting / deduplication

1.2.0

  • Add on-demand service health checks from Services page
  • Add index document count stats on Indices page
  • Fix deleting an index now also removes it from the remote search engine
  • Improve service creation form and status display

1.1.3

  • Minor bug fix related to product indexing

1.1.2

  • Improve bundling process
  • Add option “Replace Search Results Page” with selected page that embeds View via Block or shortcode in Search area settings for “WordPress Public Search” type
  • Add filter celersearch_view_search_hit for adding additional data to the hits response
  • Improve UI in view form

1.1.1

  • Improve build process
  • Fix admin page icon

1.1.0

  • Add WooCommerce integration
  • Add Views
  • Improved code quality
  • Improved UI/UX

1.0.4

  • Add celersearch as committer
  • Add Confirmation for reindex operation
  • Fix WooCoomerce order index thumbnail
  • Fix Autocomplete dialog result display HTML escaped strings

1.0.3

  • Add WooCommerce Orders index
  • Improved code quality

1.0.2

  • Improved code quality

1.0.1

  • Fixed minor bugs

1.0.0

  • Initial release