Skip to content

jtgraham38/ScryWP-Search

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

99 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Scry Search for Meilisearch

The ultimate Meilisearch for WordPress integration. Lightning-fast, typo-tolerant search with zero frontend changes required.

Host with ScryWP

Need a Meilisearch instance fast? Host with ScryWP Search and launch in minutes with managed infrastructure built for WordPress.

License: GPL v3 WordPress: 5.2+ PHP: 8.1+

Why Meilisearch for WordPress?

WordPress's default search is notoriously slow, inaccurate, and frustrating for users. Scry Search for Meilisearch solves this by seamlessly integrating Meilisearchβ€”a lightning-fast, typo-tolerant, open-source search engineβ€”directly into your WordPress site.

The result? Instant, relevant search results that help your visitors find exactly what they're looking for, even when they make typos or use imprecise queries.

Key Features

πŸ”Œ Easy Integration with Any Meilisearch Instance

Connect to Meilisearch in minutes with flexible hosting options:

  • ScryWP Search β€” Our fully managed cloud hosting designed specifically for WordPress (recommended for production)
  • Self-Hosted β€” Run Meilisearch on your own servers with Docker, binaries, or package managers
  • Local Development β€” Spin up Meilisearch locally for testing and development

Simply enter your Meilisearch URL and API keys in the Connection Settings, and you're ready to go.

🎯 Zero Frontend Changes Required

Unlike other search plugins that require theme modifications, shortcode replacements, or widget swaps, Scry Search is a true drop-in replacement for WordPress search:

  • βœ… Existing search forms continue working unchanged
  • βœ… Theme search templates (search.php, searchform.php) work as-is
  • βœ… WordPress search widgets function normally
  • βœ… Block Editor search blocks work out of the box
  • βœ… Page builder search elements (Elementor, Divi, Beaver Builder) work seamlessly

The plugin intercepts WordPress search queries, routes them through Meilisearch, and returns results in the format WordPress expects. Activate, configure, done.

πŸ“Š Per-Post-Type Indexes with Federated Search

Index any WordPress post type independently with its own dedicated Meilisearch index:

  • Posts, Pages, Products β€” Index standard WordPress content
  • WooCommerce Products β€” Full support for product search with meta fields
  • Custom Post Types β€” Any registered post type from any plugin or theme

Each index can be configured independently, and when users search, federated multi-search queries all relevant indexes simultaneously, merging results intelligently.

βš–οΈ Configurable Search Weights

Control how results from different post types are ranked in federated search:

Products: 2.0 (highest priority)
Pages: 1.5 (medium priority)  
Posts: 1.0 (standard priority)

Running an eCommerce store? Weight products higher. Knowledge base? Prioritize documentation. You're in control.

πŸŽ›οΈ Full Control Over Ranking & Relevancy

Fine-tune how Meilisearch ranks your search results with per-index configuration:

Drag-and-Drop Ranking Rules

Reorder Meilisearch's ranking rules to prioritize what matters most:

  • words β€” Number of matching words
  • typo β€” Fewer typos = higher rank
  • proximity β€” Closer matching words = higher rank
  • attribute β€” Matches in important fields rank higher
  • sort β€” Custom sorting criteria
  • exactness β€” Exact matches rank higher

Searchable Fields Configuration

Choose exactly which fields are searchable for each post type:

  • Core fields: title, content, excerpt, slug, dates
  • Taxonomies: categories, tags
  • Author information
  • Custom post meta fields β€” Including fields from ACF, Meta Box, and more

πŸ“– Synonyms & Stopwords

Shape how Meilisearch interprets queries per index, directly in the WordPress admin:

  • Synonyms β€” Link terms that should match each other (aliases, abbreviations, regional variants) so different wording still surfaces the same content.
  • Stopwords β€” Omit words from relevance scoring when they would only add noise, keeping results focused on terms that actually distinguish your pages and products.

Configure both alongside your other index optionsβ€”no separate Meilisearch dashboard or deployment step required.

πŸ”§ Built-In Task Monitor & Debugging

The Task Drawer provides complete visibility into your Meilisearch operations:

  • Real-Time Status β€” View indexing tasks with status indicators (succeeded, processing, failed)
  • Error Details β€” Quickly identify and diagnose failed operations
  • Duration Tracking β€” Monitor task performance and timing
  • Paginated History β€” Browse through your complete task history
  • One-Click Access β€” Available from any Scry Search admin page

No more guessing whether your content is indexedβ€”see exactly what's happening in Meilisearch.

⚑ Automatic & Manual Indexing

Automatic Sync:

  • Posts are indexed automatically when created or updated
  • Posts are removed from the index when trashed
  • Your search index stays current without manual intervention

Manual Controls:

  • Index Posts β€” One-click bulk indexing for any post type
  • Wipe Index β€” Clear and rebuild an index from scratch
  • Live Preview β€” Test search queries directly in the admin panel

Installation

1. Set Up Meilisearch

You'll need a running Meilisearch instance. Choose your preferred option:

ScryWP Search (Recommended):

Sign up at https://scrywp.com
Create a project and get your URL + API keys
Fully managed, designed specifically for WordPress

Self-Hosted with Docker:

docker run -d -p 7700:7700 \
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:latest \
  meilisearch --master-key="your-master-key"

Self-Hosted Binary:

curl -L https://install.meilisearch.com | sh
./meilisearch --master-key="your-master-key"

2. Install the Plugin

Via WordPress Admin:

  1. Download the plugin zip file
  2. Go to Plugins β†’ Add New β†’ Upload Plugin
  3. Upload and activate

Via FTP/SFTP:

  1. Upload the scry-search-meilisearch folder to /wp-content/plugins/
  2. Activate through the Plugins screen

3. Configure Connection

  1. Navigate to Scry Search β†’ Connection Settings
  2. Enter your Meilisearch URL (e.g., https://your-project.scrywp.com or http://localhost:7700)
  3. Enter your Admin API Key (for managing indexes)
  4. Optionally enter a Search API Key (for frontend queries)
  5. Click "Test Connection" to verify
  6. Save settings

4. Create Indexes

  1. Go to Scry Search β†’ Index Settings
  2. Check the post types you want to index
  3. Save changes
  4. Click Index Posts for each post type to perform initial indexing

5. Configure Search (Optional)

  1. Go to Scry Search β†’ Search Settings
  2. Adjust search weights for each indexed post type
  3. Save settings

That's it! Your WordPress search is now powered by Meilisearch.

Configuration Guide

Connection Settings

Setting Description
Meilisearch URL The full URL to your Meilisearch instance
Admin API Key API key with admin permissions for managing indexes
Search API Key (Optional) Read-only key for search operations

Index Settings

For each post type index, you can configure:

  • Searchable Attributes: Which fields are included in search
  • Ranking Rules: Order of relevancy factors
  • Synonyms: Groups of equivalent terms Meilisearch should treat as interchangeable for that index
  • Stopwords: Words to exclude from ranking considerations for cleaner, more relevant matches
  • Index Affix: Custom prefix for index names (useful for staging/production separation)

Search Settings

Setting Description
Post Type Weights Numeric weight (0.0+) for each post type in federated search

Higher weights mean results from that post type rank higher when searching across multiple types.

Compatibility

Themes

  • βœ… Any theme with standard WordPress search
  • βœ… Block themes (FSE)
  • βœ… Classic themes
  • βœ… Custom themes

Page Builders

  • βœ… Elementor
  • βœ… Divi
  • βœ… Beaver Builder
  • βœ… WPBakery
  • βœ… Bricks

Plugins

  • βœ… WooCommerce
  • βœ… Advanced Custom Fields (ACF)
  • βœ… Meta Box
  • βœ… Custom Post Type UI
  • βœ… Any plugin that creates custom post types

WordPress Features

  • βœ… Standard search forms
  • βœ… Search widget
  • βœ… Search block (Gutenberg)
  • βœ… Search REST API endpoints
  • βœ… Multisite (per-site configuration)

Requirements

  • WordPress 5.2 or higher
  • PHP 8.1 or higher
  • Meilisearch instance (ScryWP Search managed hosting or self-hosted)

Why Choose Scry Search?

Feature Scry Search Other Plugins
Zero frontend changes βœ… ❌ Usually require theme mods
Per-post-type indexes βœ… ⚠️ Limited
Federated search with weights βœ… ❌ Rare
Custom ranking rules per index βœ… ❌ Usually global only
Synonyms & stopwords per index (admin UI) βœ… ⚠️ Limited
Built-in task monitoring βœ… ❌ Rare
Custom meta field search βœ… ⚠️ Limited
Managed cloud & self-hosted βœ… ⚠️ Limited options

Support

License

Scry Search for Meilisearch is open source software licensed under the GPL v3.


Transform your WordPress search today. Install Scry Search for Meilisearch and give your users the instant, accurate search experience they deserve.

About

A powerful semantic search plugin with advanced filtering and sorting features.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors