Description
Deliver an ultra-responsive search experience to your visitors — no page reloads, no jQuery, no lag. Init Live Search is a modern, lightweight, and fully accessible live search solution for WordPress — now with tag-aware matching, SEO metadata support, ACF integration, WooCommerce product filters, and customizable UI presets.
It replaces the default <input name="s">
with a clean, intuitive search modal powered entirely by the WordPress REST API. Everything loads in real-time — with zero disruption to browsing flow.
Perfect for content-heavy blogs, WooCommerce stores, or even headless sites. Every interaction is fast, fluid, and designed to work across devices.
This plugin is part of the Init Plugin Suite — a collection of minimalist, fast, and developer-focused tools for WordPress.
GitHub repository: https://github.com/brokensmile2103/init-live-search
What’s New in Version 1.7.x
- Cross-site Search: merge results from multiple Init Live Search-enabled sites
- Just enter
Site Name|https://example.com/
— no auth or CORS needed - Automatically tags results by site (e.g. “Init Docs”)
- Now disables single-word fallback on both local and remote sites for cleaner relevance
- Just enter
- WooCommerce Slash Commands: major expansion for store owners
- New:
/brand
,/attribute
,/variation
, and/coupon
/coupon
shows active coupons with usage and expiration info- Improved
/price
with optionalsort
/rsort
- Fully supports custom taxonomies and
pa_...
attributes
- New:
- New Shortcode:
[init_live_search]
- Insert a search input or icon anywhere
- Supports dark mode and custom classes
- Keyword Operators: precision search using
+
and-
- Use
+
to require keywords (e.g.+nginx +ubuntu
) - Use
-
to exclude terms (-centos
will filter out CentOS-related posts) - Works across all post types and supports synonym and fallback logic
- Use
- Related Posts Shortcode:
[init_live_search_related_posts]
- Display related posts using smart title-based matching
- SEO-friendly: no REST call, renders full HTML
- Includes template override support and optional schema markup
- Auto layout: 2 columns on desktop if result count ≥ 10
-
Auto Insert Related Posts: display related posts without needing a shortcode
- Options: after content, before/after comment form
- Enabled via settings “Auto Insert Related Posts?”
- Respects selected post types and includes filter for conditional logic
- Uses
[init_live_search_related_posts template="grid" count="6"]
by default
-
Related Posts Templates: switch layouts easily using
template
attribute- Built-in:
default
,grid
,classic
,compact
,thumbright
- All templates fully overrideable via
init-live-search/related-posts-{template}.php
- Smart fallback to
default
if missing - Includes alt text filter and optional schema output
- Built-in:
Features
Packed with everything a modern live search needs — and more:
- Live search via REST API (no admin-ajax, no jQuery)
- Smart tag-aware search mode (title + tag match)
- SEO metadata support: Yoast, Rank Math, AIOSEO, SEOPress, TSF
- ACF field matching and customizable filters
- Synonym expansion with fallback scoring logic
- Slash commands:
/recent
,/popular
,/tag
,/id
,/sku
,/price
,/coupon
, etc. - WooCommerce support: search by product, SKU, brand, attribute, variation, coupon
- Clean modal UI with keyboard navigation (
) Enter Esc
- Optional voice input (SpeechRecognition)
- Tooltip Quick Search (select text to trigger)
- Favorites system via heart icon or
/fav
commands - Infinite scroll and smart category filter (no extra API)
- Deep linking:
?modal=search&term=...
- New
[init_live_search]
shortcode: insert input or icon anywhere - UI presets: default, fullscreen, topbar — with full CSS override
- Local caching + analytics (CSV export, no personal data)
- Developer-ready: custom slash commands, REST filters, JS hooks
Dark Mode Support
Enable dark mode for the modal by either:
-
Adding the dark class:
document.querySelector(‘#ils-modal’)?.classList.add(‘dark’);
-
Or using a global config:
window.InitPluginSuiteLiveSearchConfig = { theme: ‘dark’ };
Options: dark
, light
, auto
Admin Settings
- Choose post types to include in search
- Configure modal triggers (input focus, triple click, Ctrl+/)
- Enable slash commands (e.g. /recent, /tag, /id)
- Enable support for
+
and-
keyword operators (must-have, must-not-have) - Set default slash command to run on modal open (only if slash is enabled)
- Set debounce time and max results
- Choose search mode (title-only, tag-aware, full content)
- Define custom ACF fields to include in search (optional)
- Enable Search in SEO Metadata (Yoast, Rank Math, etc.)
- Toggle excerpt display below each result (1-line contextual snippet)
- Toggle fallback logic (bigram/trim)
- Enable synonym expansion and manage synonym mappings (JSON editor)
- Enable Search Analytics to log queries (no personal data stored)
- Set max words for tooltip search
- Enable voice input (SpeechRecognition API)
- Enable result caching (localStorage)
- Choose frontend UI style (default, fullscreen, or topbar)
- Allow theme override via
init-live-search/style.css
- Automatically insert related posts after content or comments (optional)
- Option to disable all built-in CSS completely
- Add default UTM parameter to result links
- Define or auto-generate keyword suggestions
Keyboard Shortcuts
- Arrow Up / Down — navigate between results
- Arrow Right — add selected result to favorites (if not already added)
- Arrow Left — remove selected result from favorites
- Enter — open selected result or submit
- Escape — close modal and reset state
- Slash (/) — start a command instantly (e.g.,
/recent
,/id 123
)
Developer Reference: Shortcodes, Filters, and Hooks
Shortcodes
[init_live_search]
Display a search icon or input anywhere that opens the Init Live Search modal.
Attributes:
– type
: icon
(default) or input
– choose between a clickable icon or a search box
– placeholder
: (optional) text inside the input if type="input"
– label
: (optional) adds a label next to the icon if type="icon"
– class
: (optional) add custom classes like dark
, my-style
, etc.
– stroke_width
: (optional) set the stroke width for the search icon (default: 1
)
– radius
: (optional) override the border radius of the input form (default: 9999px
from CSS; only applied if value differs)
[init_live_search_related_posts]
Display a list of related posts (static HTML) based on post title or keyword, optimized for SEO and fully themable.
Attributes:
– id
: (optional) the post ID to find related posts for (defaults to current post)
– count
: (optional) number of posts to display (default: 5
)
– keyword
: (optional) override the keyword used for finding related posts
– template
: (optional) layout template to use — default
, grid
, classic
, compact
, thumbright
– css
: 1
(default) or 0
– disable default CSS if you want to fully style it yourself
– schema
: 1
(default) or 0
– disable JSON-LD ItemList
output for SEO schema
Filters for Developers
This plugin includes multiple filters to help developers customize behavior and output at various stages of the search flow.
init_plugin_suite_live_search_enable_fallback
Enable or disable fallback logic (trimming or bigram) when few results are found.
Applies to: search
Params: bool $enabled
, string $term
, array $args
init_plugin_suite_live_search_post_ids
Customize the array of post IDs returned from the search query.
Applies to: search
Params: array $post_ids
, string $term
, array $args
init_plugin_suite_live_search_result_item
Modify each result item before it’s sent in the response.
Applies to: search
Params: array $item
, int $post_id
, string $term
, array $args
init_plugin_suite_live_search_results
Filter the final array of results before being returned.
Applies to: search
Params: array $results
, array $post_ids
, string $term
, array $args
init_plugin_suite_live_search_synonym_map
Inject or override the list of keyword synonym mappings used in synonym expansion logic.
Applies to: search
Params: array $map
init_plugin_suite_live_search_category
Customize the category label shown in search results.
Applies to: all endpoints
Params: string $category_name
, int $post_id
init_plugin_suite_live_search_default_thumb
Override the default thumbnail if the post lacks a featured image.
Applies to: all endpoints
Params: string $thumb_url
init_plugin_suite_live_search_query_args
Modify WP_Query arguments for recent, date, taxonomy-based, or product-based commands.
Applies to: recent
, date
, tax
, product
, random
Params: array $args
, string $type
, WP_REST_Request $request
init_plugin_suite_live_search_stop_single_words
Customize the list of single-word stopwords removed before generating bigram.
Applies to: keyword suggestion
Params: array $stop_words
, string $locale
init_plugin_suite_live_search_stop_words
Customize the stop-word list used when auto-generating suggested keywords.
Params: array $stop_words
, string $locale
init_plugin_suite_live_search_taxonomy_cache_ttl
Customize the cache duration (in seconds) for the /taxonomies
endpoint. Return 0
to disable caching.
Applies to: taxonomies
Params: int $ttl
, string $taxonomy
, int $limit
init_plugin_suite_live_search_filter_lang
Filter the list of post IDs by the current language. Supports Polylang and WPML.
Applies to: search, related, read, and other multilingual-aware endpoints
Params: array $post_ids
, string $term
, array $args
init_plugin_suite_live_search_category_taxonomy
Override the taxonomy used to fetch and display category labels in results.
Applies to: all endpoints
Params: string $taxonomy
, int $post_id
init_plugin_suite_live_search_seo_meta_keys
Customize the list of meta keys used for matching SEO Titles and Meta Descriptions.
Applies to: search (when Search in SEO Metadata is enabled)
Params: array $meta_keys
init_plugin_suite_live_search_weights
Customize the weighting array used to merge and sort post IDs from multiple sources (title, SEO, tag, etc.).
Applies to: search (search modes: title
, title_tag
, title_excerpt
)
Params: array $weights
, string $search_mode
init_plugin_suite_live_search_commands
Allow registration of custom slash commands to be displayed in the command list and handled via custom logic.
Applies to: slash command system (/
prefix input)
Params: array $commands
, array $options
init_plugin_suite_live_search_smart_post_thumbnail_alt
Allow overriding the generated alt
text for post thumbnails used in related post templates or result items.
Applies to: image accessibility / SEO rendering (alt
attribute)
Params: string $alt
, int $post_id
init_plugin_suite_live_search_auto_insert_enabled
Allow conditionally enabling or disabling auto-insertion of related posts based on the current position or post type.
Applies to: automatic shortcode injection via the_content
, comment_form_before
, comment_form_after
Params: bool $enabled
, string $position
, string $post_type
init_plugin_suite_live_search_default_related_shortcode
Customize the shortcode string used when auto-inserting related posts into post content or comment areas.
Applies to: automatic related post output
Params: string $shortcode
REST API Endpoints
Fully documented, lightweight, and API-first endpoints. Ideal for headless or decoupled builds.
All endpoints are under namespace: initlise/v1
-
/search?term=example
Standard search query (uses settings like post types, search mode, fallback…) -
/id/{id}
Fetch a post by ID. Returns permalink. -
/recent
Fetch the most recent posts based on plugin settings. -
/date?value=Y
,/date?value=Y/m
,/date?value=Y/m/d
Fetch posts by year, month, or day. -
/tax?taxonomy=category&term=slug-or-id
Fetch posts by taxonomy (e.g.,category
,post_tag
, or custom). -
/related?title=page-title&exclude=ID
Fetch posts related to the current page title (useful for showing similar articles). -
/read?ids=1,2,3
Fetch post data by IDs stored in localStorage (e.g., byInit Reading Position
plugin or custom logic). -
/random
Return a random published post based on settings. Redirects via JavaScript. -
/taxonomies?taxonomy=category
Return a list of taxonomy terms (e.g., categories, tags), sorted by count. -
/product?page=1&on_sale=1&in_stock=1&sku=ABC&min_price=100&max_price=500
Fetch WooCommerce products using flexible query parameters. Supports slash commands:/product
,/on-sale
,/stock
,/sku
,/price
.
Accepts:term
: Search keywordsku
: Partial or full SKU matchon_sale
:1
to filter products on salein_stock
:1
to filter products in stockmin_price
/max_price
: Numeric range filterprice_order
:sort
orrsort
to sort by pricebrand
,attribute
,variation
,value
: For taxonomy filteringpage
: For pagination
Returns basic product info (title, URL, price, category, thumbnail), sale and stock status, andadd_to_cart_url
. Caching is applied per query.
-
/coupon
Fetch valid WooCommerce coupons (non-expired and under usage limit).
Returns: code, description, remaining uses, expiration date, copy-to-clipboard support.
License
This plugin is licensed under the GPLv2 or later.
You are free to use, modify, and distribute it under the same license.
Screenshots
Search Triggers: input focus, Ctrl + /, triple click, data-ils
attributeSearch Behavior: post types, slash commands, fallback, SEO fields Performance & UX: debounce, max results, caching, analytics, voice input Styling & Suggestions: UI style, custom CSS, suggestions, UTM tracking Synonym Configuration: define and auto-expand keyword mappings Search Analytics: view logs, result count, export CSV Modal UI: clean interface with suggestions and instant results Results View: filter pills, post types, contextual excerpts Dark Mode: automatic or manual toggle for night-friendly UI Slash Command Helper: real-time dropdown with command list WooCommerce Search: product results with price, stock, sale badge Fullscreen Style: overlay modal using style-full.css
presetTopbar Style: fixed top bar layout using style-topbar.css
preset
Installation
- Upload the plugin folder to
/wp-content/plugins/
or install via the WordPress admin panel. - Activate the plugin through Plugins Installed Plugins.
- Go to Settings Init Live Search to configure options.
- The search modal can be triggered by default using:
- Focusing any
<input name="s">
field - Pressing Ctrl + / (or Cmd + / on Mac)
- Triple-clicking anywhere on the page (within 0.5s)
- Clicking an element with a
data-ils
attribute - Visiting a URL with
#search
or?modal=search&term=your+keyword
- Focusing any
FAQ
-
Does this plugin use jQuery?
-
No. It’s built entirely with modern Vanilla JavaScript — no jQuery, no external dependencies.
-
Can I insert the search box anywhere on the page?
-
Yes. Use the
[init_live_search]
shortcode to insert a search input or icon anywhere. You can also add custom classes or enable dark mode. -
How is the search triggered?
-
By default, it binds to any
<input name="s">
. You can also trigger it via:
– Ctrl + / (or Cmd + /)
– Triple-click on blank space
– Text selection tooltip
–?modal=search
in the URL
– Any element withdata-ils
attribute -
Can I prefill the modal from a link?
-
Yes. Append
?modal=search&term=your+keyword
or#search
to any URL to prefill the modal and trigger it. -
Is voice search supported?
-
Yes. It uses the browser’s SpeechRecognition API with auto-stop, language detection, and error handling.
-
What are slash commands?
-
Slash commands are typed commands starting with
/
, such as:
–/recent
— show latest posts
–/tag seo
— filter by tag
–/category news
— filter by category
–/id 123
— fetch a post by ID
–/fav
,/fav_clear
— manage favorites
–/random
— show a random post
–/history
,/history_clear
— manage recent search historyIf WooCommerce is active:
–/product
,/sku
,/price
,/stock
,/on-sale
,/coupon
If other Init plugins are active:
–/popular
,/trending
,/day
,/week
,/month
— via Init View Count
–/read
— via Init Reading PositionYou can disable slash commands entirely in the plugin settings. Developers can register custom ones using the
init_plugin_suite_live_search_commands
filter. -
What is the Quick Search tooltip?
-
When users select 1–8 words, a floating tooltip appears to trigger an instant search. You can configure or disable it in settings.
-
Does it support synonyms or alternate keywords?
-
Yes. You can define custom keyword
synonym mappings via the Synonyms tab in settings.
When enabled, the plugin will auto-expand search terms using these synonyms if few results are found. -
Yes. The plugin supports a special “Smart Tag-Aware” mode that matches both post titles and tags.
It can also search inside SEO Titles and Meta Descriptions from plugins like Yoast SEO, Rank Math, AIOSEO, The SEO Framework, and SEOPress. -
Does it support WooCommerce?
-
Yes. You can search for products by:
– Keyword
– SKU
– Price range (/price
)
– Stock status (/stock
)
– Sale status (/on-sale
)
– Brand, attribute, variation, and coupons (/coupon
)Results include title, price, stock status, and Add to Cart links.
-
Does it support excerpts in search results?
-
Yes. It generates a 1-line contextual excerpt with the keyword highlighted for better scan-ability.
-
Yes. In the plugin settings, you can choose to automatically insert related posts after the content or around the comment section.
It uses the[init_live_search_related_posts]
shortcode internally with a default layout.
You can still use the shortcode manually for full control. -
Can I override or disable the plugin’s CSS?
-
Yes. You can:
– Dropinit-live-search/style.css
in your theme
– Choose a built-in preset (style-full.css
,style-topbar.css
)
– Or disable all built-in CSS and style it from scratch -
Is it mobile-friendly?
-
Yes. The modal is responsive with mobile optimizations like excerpt clamping and floating mic button.
-
Is result caching supported?
-
Yes. It uses
localStorage
to cache search results and reduce repeat queries. -
Does the plugin track user data?
-
Only if Search Analytics is enabled. It logs:
– Search term
– Timestamp
– Result count
No personal information (IP, user agent, etc.) is stored. -
What happens if I press Enter without selecting a result?
-
The plugin will redirect to WordPress’s default search results page.
-
Can I use this in a headless setup?
-
Yes. All features are powered by REST API (
initlise/v1
) — ideal for decoupled frontends. -
Can I preload a default slash command when the modal opens?
-
Yes. In settings, you can define a default command like
/recent
,/read
, or/related
. There’s also a “smart detection” mode based on page context. -
Does it support multiple languages?
-
Yes. It auto-detects the active language when Polylang or WPML is installed. You can also filter results via
init_plugin_suite_live_search_filter_lang
.
Reviews
Contributors & Developers
“Init Live Search – Smart, Slash Commands, REST API” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Init Live Search – Smart, Slash Commands, REST API” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.7.6 – June 30, 2025
- Improved
[init_live_search_related_posts]
shortcode:- Added
post_type
parameter to filter related results by one or more post types - Accepts single value (
post_type="post"
) or multiple values (post_type="post,page,product"
) - Supports any registered post type (e.g.
post
,product
,manga
, etc.) - Fully compatible with all templates (
template="..."
) and theme overrides
- Added
- Enhanced internal search logic:
post_type
now resolved from bothpost_type
(string or comma-separated) andpost_types
(array) in$args
- Ensures accurate filtering for related content across multiple content types
1.7.5 – June 26, 2025
- Enhanced
[init_live_search_related_posts]
shortcode- Added
template
parameter to switch between multiple layouts: default
: Row layout with thumbnail on the left (existing)grid
: Responsive grid with large image and titleclassic
: Headline with excerpt (blog style)compact
: Plain text listthumbright
: Title and date with thumbnail on the right- All templates fully overrideable via theme using:
init-live-search/related-posts-{template}.php
- Auto-fallback to
default
if template not found
- Added
- Improved internal keyword cleaning logic:
- Removes all non-letter/number characters (including emoji, punctuation, Unicode dashes like
–
) - Ensures clean and reliable matching for related post detection
- Removes all non-letter/number characters (including emoji, punctuation, Unicode dashes like
- Added auto-insert option for related posts (after content, before/after comments)
- Can be enabled via plugin settings
- Uses default shortcode
[init_live_search_related_posts count="10"]
1.7.4 – June 25, 2025
- Added optional support for
+
and-
search operators+keyword
: must include-keyword
: must exclude
- Added new shortcode:
[init_live_search_related_posts]
- Display SEO-friendly related posts with static HTML
- Auto-detect post title or use
keyword
param - Uses internal search logic (no REST or JS)
- Fully themable via
init-live-search/related-posts.php
- Optional
css="0"
param to disable default styles - Optional
schema="0"
to disable JSON-LD ItemList output
1.7.3 – June 19, 2025
- Refactored to true async search rendering (no more blocking)
- Primary results render instantly, cross-site results stream in later
- Fixed: loader now hides even when only remote results are shown
- Fixed: “no result” only appears when all sources are empty
1.7.2 – June 16, 2025
- Added Shortcode Builder support
- Visual builder now available for
[init_live_search]
shortcode - Accessible via admin UI with icon, input, label, and style configuration
- Supports dynamic shortcode preview, one-click copy, and instant insert
- Fully localized with customizable labels via
wp_localize_script()
- Visual builder now available for
1.7.1 – June 14, 2025
- Massive WooCommerce slash command expansion
- Added
/brand
,/attribute
,/variation
, and/coupon
support /coupon
returns active, usable coupons with usage info and expiration- Fully compatible with custom taxonomies and
pa_...
attributes
- Added
- Improved
/price
slash command- Now supports optional
sort
/rsort
keywords - Full backward compatibility
- Now supports optional
- Cross-site search refinement
- Automatically disables single-word fallback on both source and remote sites for cleaner results
- New
[init_live_search]
shortcode- Allows inserting a search icon or input anywhere, with custom classes and optional dark mode
1.7.0 – June 11, 2025
- Added Cross-site Search
- New setting: enter multiple domains (
Site Name|https://example.com/
) - Fetches & merges results from other Init Live Search sites
- Results are labeled (e.g. “Init Docs”) for clarity
- No auth or CORS setup needed – just works
- New setting: enter multiple domains (
1.6.9 – June 8, 2025
- Added Synonym Expansion system for smarter search matching
- New “Synonyms” tab in settings with live JSON editor and helper UI
- Define site-specific vocabulary mappings like
{"reaction": ["tương tác", "phản hồi"]}
- Auto-inject or update keyword-synonym pairs via UI button or Enter key
- Full JSON validation with inline error messages and form guard
- Enhanced search logic with intelligent synonym fallback
- When no or few results are found, synonyms are auto-expanded and re-queried
- Synonym results are scored lower than direct matches but included for better coverage
- Works seamlessly with all search modes (title, tag, excerpt, ACF, SEO, etc.)
- New toggle setting: “Enable Synonym Expansion?”
- Allows enabling/disabling the synonym logic without affecting mappings
- Disabled by default for performance-conscious setups
1.6.8 – June 7, 2025
- Added support for multi-term filtering in
/tag
and/category
slash commands (AND logic) - Added
/trending
slash command using real-time trending data from Init View Count - Excluded “Media” (
attachment
) from selectable post types in settings for cleaner configuration - Removed tracking of
user_id
andsource
for simpler and privacy-friendly analytics - Optimized internal query limits by adapting to the configured result count (no longer hardcoded to 200)
1.6.7 – June 4, 2025
- Internal refinements for long-term maintainability and performance
- Unified duplicate language detection logic (
detect_language
detect_lang
) - Cleaned up legacy utility functions and applied clearer naming conventions
- Standardized logic for excerpt highlighting, thumbnail fallback, and WooCommerce integration
- Unified duplicate language detection logic (
- Enhanced admin keyword generator (modal default input)
- Improved bi-gram extraction from post titles
- Added locale-aware stop word filtering (Vietnamese, English)
- Now generates up to 7 randomized high-signal keywords for better UX
- Stabilized and extensible codebase
- All core modules are modular, reusable, and optimized for extensibility
- Future development will focus on expanding slash command support and developer experience
- Improved JavaScript hook support for slash commands
- Developers can now reliably use
ils:search-started
to render custom commands from themes or plugins
- Developers can now reliably use
1.6.6 – May 31, 2025
- Major fallback upgrade: added intelligent single-word fallback logic
- Automatically breaks long queries into single words if no results found
- Matches each word as full term only (e.g.
sea
won’t matchsearch
) - Each match is scored and weighted for relevance
- Improved result ranking with weight-based merge
- Dynamically ranks fallback results based on number of keyword hits
- Prioritizes stronger matches while still showing broader coverage
- SEO-aware fallback reuse
- Reuses existing SEO meta fields (title + description) in fallback queries
- Controlled by setting and
init_plugin_suite_live_search_seo_meta_keys
filter
- Full refactor: fallback logic moved to
search-core.php
- Improves code maintainability and separation of concerns
- Paves the way for future optimizations like partial streaming
1.6.5 – May 30, 2025
- Introduced intelligent 1-line excerpt for all search results
- Automatically extracts a short snippet containing the search keyword from excerpt or content
- Falls back to
get_the_excerpt()
if no relevant match is found - Keyword is highlighted within the snippet
- Mobile-optimized: excerpt is displayed as a single line with ellipsis (
-webkit-line-clamp: 1
) - Fully integrated into existing REST API output
- Improved relevance ranking for
title_excerpt
andtitle_content
modes- Weighted scoring:
title > excerpt > content
- Weighted scoring:
- Refactored result handler logic into modular subroutines
- Improves readability, performance, and extensibility
1.6.4 – May 30, 2025
- Enhanced slash command system and developer API
- Finalized
init_plugin_suite_live_search_commands
filter logic - Register custom commands and handle them via JS events
- Finalized
- Added
ils:result-clicked
custom event- Fires on result click with full metadata payload (
id
,url
,type
, etc.)
- Fires on result click with full metadata payload (
- Optimized voice search engine
- Language detection from
<html lang>
with fallback map - Improved error handling and auto-stop logic
- Mic UI toggle and sessionStorage keyword injection
- Language detection from
1.6.3 – May 29, 2025
- New slash commands:
/day
,/week
,/month
(requires Init View Count plugin) - Fully supports infinite scroll and REST API for high-traffic sites
- Improved dynamic command registration
- Added search history commands:
/history
,/history_clear
1.6.2 – May 28, 2025
- New feature: Default Slash Command on Modal Open
- Preload
/recent
,/related
,/popular
, etc. based on page context - Includes “Smart Detection” mode
- Preload
- Plugin-aware slash command detection
- Only shows
/popular
,/read
if supporting plugins are active
- Only shows
- Improved settings validation and injection prevention
1.6.1 – May 28, 2025
- Added Search Analytics panel (Analytics tab in settings)
- Log keyword search queries (term, result count, time, source, user ID)
- Stored via transient-based chunk system
- Exportable to CSV
- Improved tracking logic
- Ignores empty and slash-only queries
- Excludes structural commands like
/recent
,/fav
- Renamed tracking file:
analytics.php
tracking.php
- Better nonce protection and UX polish
1.6.0 – May 27, 2025
- Added frontend UI presets:
style-full.css
: fullscreen overlaystyle-topbar.css
: fixed top bar (like Spotlight)
- Theme override support: use
init-live-search/style.css
in theme - Option to disable plugin CSS entirely
- Internal CSS loader refactor
1.5.4 – May 27, 2025
- Added SEO metadata search support (no AI)
- Search within SEO Title and Meta Description
- Compatible with Yoast, Rank Math, AIOSEO, SEOPress, The SEO Framework
- New filters for developer control:
init_plugin_suite_live_search_seo_meta_keys
init_plugin_suite_live_search_weights
1.5.3 – May 27, 2025
- ACF search field support (define keys in admin)
- Multilingual enhancements
- Supports Polylang, WPML
- Language-aware filters and queries
- New developer filters:
init_plugin_suite_live_search_filter_lang
init_plugin_suite_live_search_category_taxonomy
- Performance: improved ACF join + status filtering
1.5.2 – May 26, 2025
- New search mode: Init Smart Tag-Aware Search
- Combines title and tag matches
- Auto bi-gram fallback for short terms
- Tooltip Quick Search now works on single-word selections
1.5.1 – May 26, 2025
- Added WooCommerce slash commands:
/product
,/on-sale
,/stock
,/sku
,/price
- Display product data: price, sale badge, stock, add-to-cart
- Visual indicators: “Sale”, “Sold Out”
- Infinite scroll and smart SKU/price filtering
- Enhanced keyboard nav in result list
1.5.0 – May 25, 2025
- Quick Search tooltip (2–8 words selection)
- Support for
data-ils
attribute to trigger modal - Favorite management via
/fav
,/fav_clear
commands - Toggle favorite from results list
- Unified modal trigger logic
- Optimized state handling
1.4.3 – May 24, 2025
- Lazy modal init (only creates DOM on trigger)
- New JS events:
ils:modal-opened
,ils:modal-closed
,ils:search-started
,ils:results-loaded
- Improved keyboard nav and accessibility
- Scroll logic optimized for large result sets
1.4.2 – May 24, 2025
- Enhanced slash command dropdown (
/re...
) - Added
?modal=search&term=...
URL trigger - Option to disable all slash commands
- UI/keyboard refinements
1.4.1 – May 23, 2025
- Added advanced slash commands:
/related
,/read
,/random
,/categories
,/tags
,/help
,/clear
,/reset
/read
integration with Init Reading Position- Internal command result caching with
localStorage
- Fully internationalized commands
- Refactored JS modules
1.4.0 – May 23, 2025
- Introduced full slash command system
/recent
,/popular
,/tag
,/category
,/date
,/id
- Smart
/date
parsing - REST-powered, cached results
- Modal trigger options: Ctrl + /, triple-click, focus
- Unified query parser
1.3.0 – May 22, 2025
- Added modal triggers:
- Ctrl + /, triple-click
- Client-side category filter
- Post type badge in results
- UI: input clear button, dropdown polish
- Refactored codebase, namespacing
1.2.0 – May 20, 2025
- Voice input (SpeechRecognition API)
- New settings: fallback toggle, CSS toggle, dark mode
- Developer filters added for full control
1.1.0 – May 18, 2025
- Trimmed + bigram fallback logic
- Remembers last search via
sessionStorage
- Enforces 100-char input limit
- Caching, UTM, dark/light theme options
1.0.0 – May 17, 2025
- First stable release
- Modal-based search via REST API
- Fully keyboard accessible
- Inline fallback + suggestions
- Support for manual and auto-generated keyword suggestions
- Lightweight Vanilla JS, no jQuery