Title: Choose what to index
Author: WordPress VIP Documentation
Published: November 15, 2021
Last modified: May 26, 2025

---

 1. [Enterprise Search](https://docs.wpvip.com/enterprise-search/)
 2. Choose what to index

#  Choose what to index

By default, Enterprise Search will not index every post type, taxonomy, or meta.
Indexing unnecessary content can result in:

 * Additional time required for modification events or versioning during indexing.
 * Unnecessary items occupying space in the index.
 * Search results polluted by less relevant content.

The taxonomy, meta, and post types that are indexed should be selected based on 
the criteria of a site’s actual queries or searches (e.g. those used in a `WHERE`
clause or used for sorting).

## Objects indexed by default

All of the [**public** post types](https://docs.wpvip.com/vip-search/post-types/#h-public-post-types-are-indexed-by-default),
[statuses](https://docs.wpvip.com/vip-search/post-statuses/), and their [**public** taxonomy terms](https://docs.wpvip.com/vip-search/post-taxonomies/#h-public-taxonomies-are-indexed-by-default)
will be indexed. Post meta is not indexed and will need to be explicitly defined.

To enable indexing of **all** post types and statuses (including private ones), 
the [“Protected content” feature](https://docs.wpvip.com/vip-search/vip-search-features/#h-protected-content)
must be activated.

## Allow lists

An **_allow list_** must be identified and created separately for the below items
that should be indexed and made available for search:

 * [post types](https://docs.wpvip.com/vip-search/post-types/)
 * [post statuses](https://docs.wpvip.com/vip-search/post-statuses/)
 * [taxonomies](https://docs.wpvip.com/vip-search/post-taxonomies/)
 * [post meta](https://docs.wpvip.com/vip-search/post-meta/)

It is important to be consistent for each allow list, but also to be aware of the
format **differences** between the allow lists.

## Indexables

An indexable is a type of database resource in WordPress, which uses a related class(
e.g. `WP_Query`) and has a separate Enterprise Search index. Indexables enable indexing,
search, and queries on any queryable object in WordPress. Not all indexables are
supported, or enabled by default.

 * **Posts:** Supports `WP_Query` and indexed by default.
 * **Terms**: Supports `WP_Term_Query` and [must be enabled](https://docs.wpvip.com/vip-search/vip-search-features/#h-terms).
 * **Users**: Supports `WP_User_Query` and [must be enabled](https://docs.wpvip.com/vip-search/vip-search-features/#h-users).

## Identifying what should be indexed

Begin by auditing any custom queries or query modifications that already exist in
a codebase and identify in those queries the post type(s), the taxonomies, and post
meta that may be involved.

For example, there is a custom user interface that handles updating content and 
a custom, filterable, event search page that allows the user to find events for 
a week when they’ll be in a particular city. Depending on how the code has been 
organized, the allow lists can be developed in two different ways:

 1. **Search Centralized**: Use one file specifically for search, as [a must-use plugin](https://docs.wpvip.com/wordpress-skeleton/client-mu-plugins-directory/),
    which defines each allow list. It is used for making adjustments to search configurations.

 2. **Feature Centralized**: Separate each feature, so that all of the code associated
    with events is in one directory, set of classes, or a plugin. The indexing for 
    the events will be defined in the code associated with the feature, where the `
    register_post_type` and `register_taxonomy` is already declared for these.

Last updated: May 26, 2025