plugin-icon

Glance Live Search – WooCommerce AJAX Product Search

Instant WooCommerce product search that still finds the product when a shopper types the plural. Fast, light, no page reload.
Versión
1.7.0
Última actualización
Jul 28, 2026
Glance Live Search – WooCommerce AJAX Product Search

A shopper types the plural. Your catalog is written in the singular. The search returns nothing, and the sale is gone.

On a French-language store this is the single most common way a WooCommerce search comes back empty – «chaussures» failing to find «Chaussure», «chevaux» failing to find «Cheval». Glance Live Search treats them as the same word, irregular plurals included.

The rest is what you would expect from a live search, built carefully. Results appear as fast as someone can type, matched on name, SKU or category, with no page reload. A search that finds nothing offers the closest term instead of a dead end. Colors, corners and height follow your brand. And the whole thing adds under 36 KB to your storefront.

Why Glance Live Search?

  • Understands plurals – singular and plural are one word on a French store, irregular ones included, and words that only look plural are left alone: prix stays prix, souris stays souris
  • Instant results – matching products appear as fast as your customers can type
  • Finds everything – searches product titles, SKUs, descriptions, excerpts and categories
  • Beautiful by default – design presets + full Custom mode to match any brand
  • Stays fast under load – recent searches are remembered, so a term someone has just typed is answered immediately
  • Made for phones – the search takes over the screen, and never hides behind a notch
  • Search history – recent searches saved locally and displayed on focus
  • Usable by everyone – works entirely from the keyboard, and screen readers announce the results properly
  • Built to be adapted – 31 documented extension points, listed at the end of this page
  • See what shoppers look for – the terms they search, the ones that find nothing, and the ones that lead to a click
  • Fits your theme – drops into any theme through the shortcode, widget or block, with dedicated adjustments for Shoptimizer, Astra and Kadence

Free Features

  • Instant live search by product name and SKU
  • Plurals understood on French-language stores, including irregular ones
  • Optional search index for large catalogs, built in one click and reversible
  • Search in product descriptions and short descriptions (optional)
  • Up to 100 results per search, with a «View all results» link
  • Search history displayed on focus (configurable, 1–20 items)
  • Recent searches are reused, so repeating one is instant
  • Full-screen mobile overlay with configurable breakpoint
  • 2 design presets: Sharp and Clean
  • Configurable search delay, minimum characters, and placeholder text
  • Search button (icon or text) – inside or outside the bar
  • Text button switches to icon automatically on mobile
  • Analytics dashboard – top keywords over 7 days
  • Shortcode [glance_search], WordPress widget, Gutenberg block, Elementor widget
  • Works with block themes and the site editor
  • Results update on their own when you add, edit or remove a product
  • Dedicated adjustments for Shoptimizer, Astra and Kadence; works with any other theme through the shortcode, widget or block

Pro Features

  • Spelling correction – a search that finds nothing offers the closest matching term instead of a dead end
  • Price ranges – three brackets worked out from your own catalog, offered under the bar
  • In-stock only – hide out-of-stock products from live search
  • 4 design presets – Sharp, Clean, Pill, and fully Custom
  • Full color customization – bar, border, text, placeholder, button
  • Category filter in the search bar
  • Variation search – find products by attribute values (color, size, etc.)
  • Show SKU, rating, and category count in results
  • Categories in search results
  • Upsell recommendations below search results
  • Click tracking – see which results shoppers actually open
  • Advanced analytics – 7, 14, 30 and 90-day views, success rate for each search term, and CSV export
  • Priority support

Learn more

Pricing, screenshots and documentation: www.glancelivesearch.com

For Developers

Glance exposes 31 extension points. They follow one naming rule — area then thing, separated by slashes — for filters and actions alike. The four names without a slash are kept for backward compatibility only and will be removed in a future release.

The search itself

  • glse/search/phrase — the term, before anything is done with it. ( string $term )
  • glse/search/min_chars — how many characters before a search fires. ( int $min, string $term )
  • glse/search/filters — category, stock and price filters. ( array $filters, string $term )
  • glse/search/query_args — the SQL pieces, just before they are assembled: join, where, params, order. ( array $args, string $term, array $filters, int $limit )
  • glse/search/results — the formatted results. ( array $results, string $term )
  • glse/results/product_data — one product row. ( array $data, WC_Product $product, string $term )
  • glse/search/categories — matching categories. ( array $categories, string $term )
  • glse/search/after — action, fired once a search is done. ( string $term, array $results, int $ms, string $category )

Language

  • glse/search/french_morphology — whether French plural rules apply. Decided from the site language. ( bool $applies, string $locale )
  • glse/search/word_variants — the forms a word is looked up under. The typed word always comes first. ( array $forms, string $word )

Index and performance

  • glse/search/use_fulltext — whether the fast index drives this search. A guard on short words may still turn it off afterwards. ( bool $use, string $term )
  • glse/search/hidden_visibility_slugsproduct_visibility terms excluded from results. ( array $slugs )
  • glse/search/price_brackets — the price chips under the bar. ( array $brackets )
  • glse/rate_limit/client_ip — the address requests are counted against. Change it behind a proxy. ( string $ip )

Output

  • glse/template/search_form — path of the form template. ( string $path, array $atts )
  • glse/template/search_results — path of the results template. ( string $path, array $vars )
  • glse/form/html — the rendered bar. ( string $html, array $atts )
  • glse/form/placeholder — the placeholder text. ( string $placeholder )
  • glse/results/output — the whole AJAX response before it is sent. ( array $response, string $term, array $results )
  • glse/results/no_results_html — what shows when nothing matches. ( string $html, string $term, string $url )
  • glse/results/extras_budget — how many rows categories and recommendations may share. Default 6. ( int $rows )
  • glse/search/view_all_url — the «see all results» address. ( string $url, string $term, string $category )
  • glse/scripts/localize — the data handed to the front-end script. ( array $data )
  • glse_force_load_assets — load the assets on a page where the bar is not detected. ( bool $force )
  • glse_fs_loaded — action, fired once the licensing SDK is ready. No arguments.

Dictionary (Pro)

  • glse/suggestions/taxonomies — taxonomies feeding the spelling dictionary. ( array $taxonomies )
  • glse/suggestions/stopwords — words the dictionary ignores. ( array $stopwords )

Deprecated

Still fired, no longer documented as stable. Use the slashed name instead.

  • glse_search_filters glse/search/filters
  • glse_modify_results glse/search/results
  • glse_modify_categories_results glse/search/categories
  • glse_after_search glse/search/after
Gratisen planes de pago
Probado hasta
WordPress 7.0.2
Te puedes descargar este plugin para utilizarlo en tu sitio de .