Skip to content

Renamed from WP Loupe

Loupe Search is the successor to the WP Loupe plugin. Existing installs upgrade seamlessly — nothing breaks on update. The old names below still work but are deprecated and will be removed in a future major release.

On upgrade: no. Every old name is still wired up, and the existing index is reused, so sites and integrations keep working untouched.

Before the next major release: yes. Update any code that uses the old names. The quickest way to find it:

  • Set WP_DEBUG to true and exercise your integration. Deprecated filters raise standard WordPress deprecation notices naming their replacement, and wp wp-loupe prints a CLI warning.

  • Grep your own code for the legacy names:

    Terminal window
    grep -rn "wp_loupe_\|wp-loupe/v1\|wp wp-loupe\|wp-loupe-db" .
AreaLegacy (deprecated)CurrentDeprecated since
Index folderwp-content/wp-loupe-dbwp-content/loupe-search-db1.1.0
Developer filterswp_loupe_*loupe_search_*1.1.0
REST namespacewp-loupe/v1loupe-search/v11.1.0
WP-CLI commandwp wp-loupewp loupe-search1.1.0
Abilitieswp-loupe/search, wp-loupe/get-postloupe-search/search, loupe-search/get-post1.2.0
Ability categorywp-loupeloupe-search1.2.0

New installs create wp-content/loupe-search-db.

On upgrade, the legacy wp-content/wp-loupe-db folder keeps being used only while the new folder does not exist — so no reindex is required. If both folders exist, loupe-search-db wins. To move over deliberately, delete or rename the legacy folder and run wp loupe-search reindex.

The path is filterable via loupe_search_db_path (legacy: wp_loupe_db_path).

Filters use the loupe_search_* prefix (e.g. loupe_search_db_path, loupe_search_schema_post). The old wp_loupe_* names still fire via apply_filters_deprecated(). Update your add_filter() calls to the new names.

The REST namespace is loupe-search/v1 (e.g. /wp-json/loupe-search/v1/search). The old wp-loupe/v1 namespace is still registered as a deprecated alias.

The command is wp loupe-search (e.g. wp loupe-search reindex). The old wp wp-loupe command still works as a deprecated alias.

Abilities are registered as loupe-search/search and loupe-search/get-post under the loupe-search category. The legacy wp-loupe/search and wp-loupe/get-post abilities (category wp-loupe) remain registered as deprecated aliases sharing the same callbacks.

See the Changelog for the full history.

Some identifiers deliberately keep the wp_loupe_ prefix. These are not oversights, and there is nothing to migrate:

IdentifierWhy it stayed
Options wp_loupe_custom_post_types, wp_loupe_fields, wp_loupe_advancedRenaming would orphan existing settings on every install
REST error codes, e.g. wp_loupe_missing_query, wp_loupe_unallowlisted_fieldA REST error code is a single string; changing it would break clients that branch on it
PHP namespace Soderlind\Plugin\WPLoupe and WP_Loupe_* class namesInternal API, not part of the public contract