Index Table
Index table - generating, configuring and enabling the index table
Index Table
What is the Index Table?
The Index Table is Ajax Search Pro's dedicated search engine. Instead of searching your posts directly through WordPress on every keystroke (the Regular engine), the plugin builds its own optimized lookup table ahead of time. Every meaningful word from your content is extracted once, cleaned up (stopwords removed, optional inflections added), and stored with per-field weighting so that searches become fast database lookups rather than expensive full-text scans.
In practice the Index Table gives you:
Much faster searches, especially on large sites with thousands of posts.
Better relevance, because each word carries a weight depending on where it was found (title, content, excerpt, tags, custom fields, etc.).
Typo tolerance and keyword suggestions powered by the indexed vocabulary.
Lower server load, since the heavy work happens once during indexing rather than on every search request.
Once it's built, the index keeps itself in sync with your content automatically — when you add, edit or delete a post, its entry in the index is updated in the background, so everyday content changes need no action from you. A full re-generation is only required when you change the indexing settings (which content, post types or fields are indexed, tokenization rules, and so on). In that case the plugin shows a notification telling you a rebuild is needed.
Note: This page covers indexing of posts, pages and custom post types. Indexing of media and uploaded files (PDFs, documents, etc.) is configured on the Media & Files tab and is covered in its own documentation.
You'll find everything below under Ajax Search Pro → Index Table in the WordPress admin menu.

Quick start
Setting up the Index Table takes three steps:
Configure what gets indexed — open the settings panels (General, Post Types & Filters, etc.) and choose which content and post types to include. The defaults work well for most sites, so you can usually skip straight to step 2.
Generate the index — go to the Overview panel and click Create New Index.
Enable the Index table engine on your search instance(s) — generating the index does not switch your searches over to it automatically. See Enabling the Index table engine below.
Generating the index (Overview)
The Overview panel is the control center for building and maintaining the index. At the top it shows three live stat cards:
Posts Indexed — how many items are currently in the index.
Posts Remaining — how many still need processing.
Total Keywords — the number of unique words stored in the index.
The action buttons
Create New Index — wipes any existing index and builds a fresh one from scratch. Use this for the first build, or whenever you want to rebuild everything cleanly.
Continue Existing — resumes indexing from where it left off, only processing the Posts Remaining. Useful if a build was interrupted, or to pick up newly added posts.
Delete Index — removes the entire index from the database (asks for confirmation first). Your searches will fall back to the Regular engine until you rebuild.
Optimize Table — runs a database optimization on the index table to reclaim space and keep lookups fast. Worth running occasionally on large or frequently re-indexed sites.
While indexing runs
When you start a build, the plugin processes posts in batches, showing a live progress bar and percentage. The stat cards update in real time as posts are processed.
The batch size is tuned automatically as it runs — if a batch takes too long it shrinks the next one; if batches are fast it grows them — so indexing adapts to your server without timing out.
A Stop button lets you halt the process at any time. Stopping is safe: the work done so far is kept, and you can resume later with Continue Existing.
Indexing keeps running even if you switch to another Index Table tab — the progress and Stop control stay available when you come back to the Overview.

Index History chart
Once the index has a few days of history, the Overview shows an Index History — Last 30 Days chart, plotting how many posts were indexed and how the keyword count changed over time. Daily snapshots are recorded automatically, so this builds up on its own.
Enabling the Index table engine
This is the step that's easy to miss. Building the index does not, by itself, make your searches use it. The Index Table is a site-wide index, but each search instance decides whether to use it.
For every search instance you want to speed up:
Open the search instance and go to General Options → Sources.
Find the Search engine dropdown and switch it from Regular engine to Index table engine.
Save the search instance.
The Index table engine only works once the index has been generated — if the index is empty, switch to it only after running Create New Index.
When the Index table engine is selected, some options on the instance's settings pages are disabled, because those settings are now controlled here on the Index Table page instead (for example which content and fields are searched).

Keeping the index up to date
There are two different situations, and it's important not to confuse them:
Content changes — handled automatically. When you publish, edit or delete a post, the plugin updates that post in the index for you in the background. You do not need to rebuild the index after normal content edits. (The Scheduling panel lets you fine-tune this automatic behavior.)
Settings changes — require a full re-generation. When you change an indexing setting on this page (which content or post types are indexed, tokenization rules, exclusions, etc.), the existing index no longer matches your configuration and must be rebuilt. The plugin makes this obvious: a banner appears at the top of the Index Table page —

— with a shortcut link back to the Overview. From there, run Create New Index to apply the changes.
Settings panels
The panels in the left-hand menu control exactly what gets indexed and how. Each panel has its own Save button. Remember that saving a panel only stores the configuration — you still need to rebuild the index for changes to take effect.
General — what content to index
Toggles for which parts of each post are included in the index:
Index title — the post/page title.
Index content — the main content body.
Index excerpt — the post/page excerpt.
Index permalinks — the URL slug.
Index author name — the author's display name.
Index author bio — the author's biographical description.

Post Types & Filters — what to include
Defines the scope of the index:
Post types — which post types to index (posts, pages, products, any custom post type).
Taxonomies to index — which taxonomies to include; tags and categories are selected here too.
Post statuses — which statuses to include (e.g.
publish,draft,pending,private,future). Type a status and press Enter or comma to add it.Index password-protected posts — whether to include password-protected content.
Blogs to index (multisite) — on multisite, choose which sites in the network to index.
Taxonomy term exclusion rules
You can exclude posts from the index based on the taxonomy terms they're assigned to. For example, exclude every product in a "Discontinued" category, or every post tagged "internal". Add one or more rules selecting a taxonomy and the terms to exclude — posts matching those terms are skipped during indexing.

Custom Fields — indexing meta values
Custom fields to index — search for and select the meta keys whose values should be added to the index. This makes content stored in custom fields (e.g. ACF fields, product attributes) searchable.
Re-index on meta update — automatically re-index a post when one of its custom field values changes. A warning is shown when this is on: on sites where plugins bulk-update meta (WooCommerce, ACF, etc.) this can trigger frequent re-indexing and impact performance, so enable it only when you need it.
Custom field exclusion rules
Exclude posts from the index when their custom fields meet certain conditions (combined with AND logic). For example, exclude posts where a hide_from_search field equals 1, or where a stock field is 0. Build one or more conditions on meta key, comparison and value.

Tokenization — how words are processed
Controls how raw content is broken down into indexed words:
Use stopwords — filter out common, low-value words (the, and, of…). When enabled, edit the Stopwords list to add or remove words.
Minimum word length — words shorter than this are skipped (default: 1).
Extract iframes — attempt to index content embedded via iframes.
Extract Gutenberg blocks — index text from Gutenberg block markup.
Extract shortcodes — execute shortcodes and index their rendered output. When enabled, use Exclude shortcodes to skip specific shortcodes by name.
Word inflections — also index singular/plural forms of words for broader matching. This improves recall but greatly increases index size.
Inflections language — the language used for stopword filtering and inflection rules.

Scheduling — automatic re-indexing
Fine-tune how the index keeps itself in sync with your content:
Re-index on post save — keep newly published and edited posts in sync immediately as they are saved. (Edits to already-indexed posts and deletions are always reflected automatically; this option also adds brand-new posts as soon as they're published.)
Enable scheduled re-indexing — run a full re-index automatically on a recurring schedule via WP-Cron. Useful as a safety net to periodically rebuild everything from scratch.
Cron period — how often the scheduled re-index runs: every 2, 3, 5, 15, 30 or 60 minutes, twice daily, or daily.

Performance — tuning the build
Tune how indexing behaves on your server:
Posts per indexing batch — how many posts are processed per iteration. Lower this if indexing times out; raise it on fast servers to index quicker. (The Overview also auto-adjusts this while a build is running.)
Enable index compression — compress indexed data to reduce database storage.
Auto-calculate pool size — let the plugin tune internal pool sizes based on your post count. Disable it to set the four pool-size tiers manually (under 1,000 / 1,000–10,000 / 10,000–100,000 / over 100,000 posts).

Indexing with WP-CLI
On large sites, or to automate builds outside the browser, you can run indexing from the command line with WP-CLI instead of the Overview buttons. This avoids browser timeouts and is ideal for scheduled server-side jobs. See the dedicated WP-CLI documentation for the available commands.
Troubleshooting
My searches aren't any faster / aren't using the index. Confirm you switched the instance's Search engine to Index table engine (see Enabling the Index table engine) and that the index isn't empty.
New posts don't show up in search. Edits and deletions sync automatically, but adding brand-new posts to the index on publish requires Re-index on post save (Scheduling panel). Enable it, or rebuild the index manually.
Indexing times out or stalls. Lower Posts per indexing batch on the Performance panel, or use WP-CLI for large builds.
A "Re-create the index" banner is showing. You changed an indexing setting; run Create New Index on the Overview to apply it.
Last updated