=== eZearch ===
Contributors: dayzsolutions
Tags: woocommerce search, product search, instant search, ajax search, ai search
Requires at least: 6.0
Requires Plugins: woocommerce
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.1.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Instant, typo-tolerant, AI-powered product search for WooCommerce with tunable relevance, ACF support, merchandising and analytics.

== Description ==

eZearch replaces the WooCommerce product search with a hosted search index built for shops. Shoppers get results as they type; you get control over what ranks and what sells.

* Results in milliseconds as shoppers type, even with 100,000+ products
* Typo tolerance, synonyms and "did you mean"
* Weight titles, SKUs, attributes, ACF fields and custom fields
* AI semantic search and natural-language filters ("red shoes under 50")
* Pin, hide and redirect for any search term, with scheduling
* Full-screen search layer with filters, or an instant dropdown
* Ready-made search designs, grid/list view, sorting and pagination
* Powers your theme's search results page with no template changes
* Search analytics: no-result searches, click-through, add to cart, purchases
* Always falls back to WordPress search if the service is unavailable

= Free plan =

Start free from inside wp-admin — enter your email and the plugin sets itself up. The free plan covers 100 products, 500 searches a month, one site and one search design. No card and no trial clock. Larger catalogues can upgrade at any time; upgrading keeps your index, settings and rules.

= External service =

eZearch is a client for the eZearch Cloud search service, operated by Dayz Solutions. The plugin does not work without it: the search index and the search API run on the service.

What is sent to the service:

* **When you sync**: your published product data — title, description, SKU, price, stock, images, categories, attributes and any custom or ACF fields you select in *Data & fields*. You choose which fields are sent.
* **When a shopper searches**: the search query, the filters and sort applied, the page number, and an anonymous session identifier used to report click-through and conversion. No names, emails or addresses are sent.
* **Periodically**: your site URL, plugin, WordPress, WooCommerce and PHP versions, and your licence key, so the service can check the licence and show you support information.
* **When you deactivate or uninstall**: your site identifier and key, so the service can release the seat your licence was using.

Nothing is sent until you connect the plugin: before you enter an email or a licence key on the eZearch screen, the plugin makes no outbound requests at all.

The service is reachable at https://ezearch.com.
Terms of service: https://ezearch.com/terms
Privacy policy: https://ezearch.com/privacy

== Source code ==

The files in `assets/` are compiled. The human-readable TypeScript and CSS they
are built from, together with the build configuration, live in the public
repository:

REPLACE-ME-WITH-YOUR-PUBLIC-REPO-URL

To build them yourself:

`cd src && npm install && npm run build`

That runs esbuild for the storefront script and Vite for the admin app, writing
the results into `assets/`.

== Installation ==

1. Upload and activate the plugin (WooCommerce must be active).
2. Go to **eZearch** in wp-admin. Enter your email to start on the free plan, or paste a licence key if you bought one.
3. Click **Full sync**. Search is live when it completes.
4. Optional: add the "eZearch Search Box" block or the `[ezearch]` shortcode where you want a search box.

== Frequently Asked Questions ==

= Does my store break if the service is down or my plan lapses? =

No. eZearch hands the search back to WordPress automatically, so shoppers always get results.

= What happens if I have more products than my plan allows? =

The sync indexes up to your plan's limit and finishes normally — it does not fail. The dashboard tells you how many of your products are searchable and offers an upgrade.

= Does it work with ACF? =

Yes. ACF fields (including repeaters and choice labels) can be indexed, weighted, filtered and faceted from *Data & fields*.

= Can I change how the search looks? =

Yes — pick a design in *Appearance*, set accent colour and columns per row, or add your own CSS.

== Developers ==

* WP-CLI: `wp ezearch sync`, `wp ezearch status`, `wp ezearch search "query"`, `wp ezearch activate <key>`
* Filters: `ezearch_document`, `ezearch_is_indexable`, `ezearch_frontend_config`, `ezearch_replace_search_query`, `ezearch_api_url`
* JavaScript: `window.eZearch.open('query')`, `window.eZearch.close()`
* Custom endpoint: `define( 'EZEARCH_API_URL', 'https://api.example.com' );`

== Changelog ==

= 1.1.0 =
* New layouts: command palette (centred, with tabs for products, categories and suggestions) and split preview (results left, live product preview right).
* New Style settings: solid, glass or fully transparent surfaces, blur and opacity, light/dark/auto scheme, page dimming or blur, shadow, density, corner radius and colours.
* Full-screen layer: hero header, category tabs, side rail with trending searches and top categories, tile and minimal product cards, start in list view.
* Seven new designs, and every design and setting now previews live in wp-admin with the real search script.
* Filter names follow the shop's language automatically (built-in Dutch, German and French; attribute names from WooCommerce, per language on WPML and Polylang). Renamed filters keep their name.
* The search layer now always sits above the theme, and hover styles are eZearch's own on every theme.
* Popular products show as soon as the palette or dropdown opens.

= 1.0.0 =
* Initial release.
