SwiftSearch replaces your default WordPress search with an instant, typo-tolerant search engine powered by Typesense. It's designed for speed, converting your visitors into customers with lightning-fast results.
🚀 Zero Latency
Runs entirely in the browser. No waiting for your WordPress database (MySQL) to query results.
🔒 Most Secure
We use digital signatures to protect your API keys. Your connection settings are tamper-proof.
📉 Server Offload
Offload search queries to Typesense. Your WordPress server breathes easier, even during traffic spikes.
📱 Mobile First
Includes a sticky mobile search button and a responsive overlay UI designed for touch devices.
1. Installation
Install Typesense
You need a running Typesense server. You can self-host it using Docker (free) or use Typesense Cloud.
Install the Plugin
Upload the swift-search-typesense.zip file to your WordPress Plugins dashboard
and activate it.
Setup Wizard
Go to the SwiftSearch menu in your admin dashboard. Enter your Typesense credentials (Node URL, API Key) to connect.
2. Configuration & Indexing
SwiftSearch simplifies index management with a robust dashboard.
API Keys Best Practice
For optimal security, we recommend using two separate API keys:
- Admin Key: Used by the plugin to create schemas and index content securely from the backend.
- Search-Only Key: Used by the frontend/browser to fetch results. This key is read-only and safe to expose.
Reliable Background Indexing
Click "Index All" to start building your search index. The plugin uses the industry-standard Action Scheduler (the same library used by WooCommerce) to process thousands of items in the background without slowing down your site.
3. Features & Capabilities
⚡ Instant Search
Results appear instantly as you type. Provides a "Google-like" autocomplete experience.
🔍 Typo Tolerance
State-of-the-art spell correction. Finds "iPhone" even if a user types "iphoen".
📦 WooCommerce
Fully compatible. Indexes Products, SKUs, Prices, Categories, and Stock Status.
🗂️ Unified Search
Search everything: Posts, Pages, Products, Custom Post Types, and Authors.
📂 Faceted Filters PRO
Let users refine results by Category, Price, or Brand. Instant updates without reload.
✨ Precision Ranking PRO
Control exactly how results are ranked. Prioritize matches in Titles or boost Stock.
📚 AI Synonyms PRO
Define synonyms (e.g., "Parka" = "Jacket") so users always find what they need.
📌 Pinning PRO
Manually pin specific products to the #1 spot for high-value search terms.
🔧 Custom Fields PRO
Index and search within ACF or map any custom database field (e.g. SEO Meta).
📊 Search Analytics PRO
Track "Top Queries" and specifically "No Result Queries" to discover gaps.
4. Displaying the Search
To display the clean search bar anywhere on your site (header, sidebar, or inside a page), use the shortcode:
[swift_search]
Advanced Options
You can customize the search behavior using specific attributes:
placeholder: Custom placeholder text (Default: "Search...").limit: Maximum number of results to display (Default: 10).show_thumbnail: "true" to show images, "false" for text-only.post_types: Comma-separated list (e.g. "product,post").
Example Usage
[swift_search placeholder="Find products..." limit="8" post_types="product" show_price="true"]
5. Pro Activation
Enter License Key
After installing the plugin, you will see an opt-in screen from Freemius. Enter your License Key there.
Access Account
Manage your license, invoices, and subscription from the Account tab in the plugin settings.
6. Theming & Customization
The search interface is designed to inherit your theme's fonts, but you can override styles using standard CSS.
/* The Outer Wrapper */
.ss-wrapper {
max-width: 600px;
}
/* The Search Input Box */
.ss-search-box input {
border-radius: 8px;
border: 2px solid #e5e7eb;
}
/* Highlighted Matches */
.ss-hit-title mark {
background-color: rgba(255, 0, 85, 0.1);
color: #ff0055;
}
7. Developer Hooks
Interact with the indexing engine programmatically. Useful for custom import scripts.
Async Indexing
// Trigger re-index for Post ID 123
do_action('swift_search_async_index_post', 123);
8. Troubleshooting & FAQ
Result "Connection Failed"?
Check for "Mixed Content" (ensure HTTPS/WSS), verify CORS settings in your Typesense config, and ensure port 443 is open.
Search Bar Not Appearing?
Ensure "Override Default Search" is enabled in settings or place the [swift_search]
shortcode manually.
Schema Mismatch error?
This happens when you change data structures. Solution: Click "Index All" to rebuild the collection.