Changelog
September 10, 2026 · View on GitHub
All notable changes to this project will be documented in this file, per the Keep a Changelog standard.
Unreleased
5.3.5 - 2026-09-10
This is a security release addressing two issues in specific configurations:
- Protected Content: If the feature is active, Authors filtering the admin list by private status could see other authors' private posts.
- Comments: If the feature is active and the site has password-protected posts, anonymous comment search could return those comments.
Fixed
- Prevent an array-to-string conversion warning in Custom Search Results when post terms are not a string. Props @burhandodhy and @leedxw via #4364.
Security
- Prevent an explicit private-status filter in the admin post list from exposing other authors' private posts, including custom private statuses, to users without
read_private_posts. Props @Zyy0530, @lzhou1110, @Str1ckl4nd, @mauriceng98, @7thParkk, @felipeelia, and @jeffpaul via #4366. - Prevent the Comments REST search from disclosing approved comments on password-protected posts to unauthenticated visitors. Props @mrglwglwgl and @felipeelia via #4366.
- Bumped
postcss-selector-parserfrom 7.1.0 to 7.1.5. Props @dependabot via #4363. - Bumped
fast-urifrom 3.1.5 to 3.1.7. Props @dependabot via #4363.
Developer
- Update
@wordpress/envfrom 11.13.0 to 11.15.0. Props @felipeelia via #4367.
5.3.4 - 2026-08-27
Added
ep_instant_results_excluded_post_typesfilter to exclude post types from Instant Results facets and search results. Props @Sidsector9 and @feliciaoctocog via #4290.ep_instant_results_excluded_term_idsfilter to exclude taxonomy terms from Instant Results facets. Props @Sidsector9 and @feliciaoctocog via #4290.
Changed
- Hide the Subscription Token value in the Settings page. Props @faisalahammad and @felipeelia via #4324 and #4361.
Fixed
- Correct WooCommerce Filter by Price results when the shop displays prices including tax. Props @faisalahammad, @stefanmm, and @burhandodhy via #4338 and #4347.
- Prevent TypeError in Elementor template parsing when
_elementor_datais an array. Props @muhitasraf via #4341. - Prevent ElasticPress from corrupting cached
WP_Postobjects by encoding meta and taxonomy values as JSON. Props @burhandodhy and @marc-kohde via #4342. - Resolve translation warnings when generating the POT file. Props @faisalahammad via #4323.
- Respect
ep_is_facetablefalse to disable faceting on queries. Props @burhandodhy and @dmitrijCraq via #4337. - Prevent
max_num_pagesfrom becoming negative whenposts_per_pageis -1. Props @burhandodhy and @dmitrijCraq via #4336. - Guard
Utils\get_site()andis_site_indexable()against non-existent site IDs. Props @thisismyurl via #4319. - Prevent WooCommerce
product_visibilitytax queries from forcing product-only site search results. Props @ZacharyRener via #4321. - Disable
cache_resultsfor cross-site queries (site__in,site__not_in, orep_search_scopeset toall) and when a persistent object cache is in use. The posts cache is per-blog and keyed by post ID only, so a laterget_post()for a local ID could return another site's content. Props @burhandodhy and @dannyreaktiv via #4353 and #4355. - Guard the
post_authorread informat_hits_as_posts(), preventing PHP warnings and a fatal error when the field is missing or malformed in an Elasticsearch hit. Props @freibergergarcia via #4354. - Load React admin screens and Instant Results on WordPress 6.2 by registering the
react-jsx-runtimescript handle that 10up-toolkit requires and WordPress only ships from 6.6. Props @felipeelia via #4356. - Prevent a WordPress 7.1 deprecation warning by using the
helpprop instead of__experimentalShowHowToon FormTokenField. Props @burhandodhy via #4358. - Fix the Features page notice layout on WordPress 7.1. Props @burhandodhy via #4359.
- Update ElasticPress.io article URLs to the
/resources/articles/path. Props @burhandodhy via #4360.
Security
- Bumped
react-routerfrom 7.14.1 to 7.18.2. Props @dependabot via #4351. - Bumped
uuidfrom 11.0.5 to 14.0.0. Props @dependabot via #4314. - Bumped
@babel/plugin-transform-modules-systemjsfrom 7.25.9 to 7.29.4. Props @dependabot via #4314. - Bumped
fast-urifrom 3.0.3 to 3.1.5. Props @dependabot via #4314 and #4343. - Bumped
postcssfrom 8.4.49 to 8.5.25. Props @dependabot via #4314 and #4343. - Bumped
webpack-dev-serverfrom 5.2.3 to 5.2.6. Props @dependabot via #4314 and #4343. - Bumped
esbuildfrom 0.28.0 to 0.28.1. Props @dependabot via #4343. - Bumped
immutablefrom 5.1.5 to 5.1.9. Props @dependabot via #4343. - Bumped
launch-editorfrom 2.13.2 to 2.14.1. Props @dependabot via #4343. - Bumped
linkify-itfrom 5.0.0 to 5.0.2. Props @dependabot via #4343. - Bumped
markdown-itfrom 14.1.1 to 14.3.0. Props @dependabot via #4343. - Bumped
qsfrom 6.14.2 to 6.15.3. Props @dependabot via #4343. - Bumped
svgofrom 3.3.3 to 3.3.4. Props @dependabot via #4343. - Bumped
wsfrom 8.20.0 to 8.21.2 and from 7.5.10 to 7.5.13. Props @dependabot via #4343. - Bumped
websocket-driverfrom 0.7.4 to 0.7.5. Props @dependabot via #4343.
Developer
- Spell-checking with
crate-ci/typosin CI. Props @szepeviktor, @felipeelia, and @Sidsector9 via #4311. - Add compatibility fixes for React 19. Props @ZacharyRener and @Sidsector9 via #4340.
- Fix tests and tooling for WordPress 7.0 and updated GitHub token formats. Props @ZacharyRener via #4321.
- Update
10up-toolkitto 7.0.0-next.1,@wordpress/envto 11, and Node to 24. Props @felipeelia via #4356. - Overhaul the e2e environment: a single wp-env install, Makefile targets and a gitignored
.env, a cached database, one Playwright worker, and expanded docs. Props @felipeelia via #4356.
5.3.3 - 2026-05-07
Added
- Numbered pagination option for Instant Results. Props @ZacharyRener via #4274.
- New elasticpress_general_ep_screens filter. Props @felipeelia via #4256.
- New ep_feature_requirements_status_* filters and a new "Temporarily disabled" feature status (in code). Props @felipeelia via #4265.
Changed
- Optimize mb_strlen calls during sync process. Props @kasparsd via #4304.
- Saving feature settings now reflects feature dependencies without refreshing the page. Props @ZacharyRener via #4275.
Fixed
- Keep the sync running when code outputs directly in the post content. Props @burhandodhy, @tomjn, and @felipeelia via #4266.
- Prevent saving Custom Results while posts are loading. Props @burhandodhy via #4260.
- Update label for bulk request timeout in ElasticPress status report. Props @burhandodhy via #4259.
- Undefined array key warnings in Weighting.php. Props @burhandodhy and @BWBama85 via #4270.
- Ensure the Sync creates the Instant Results templates for all the sites. Props @burhandodhy and @anjulahettige via #4258.
- Ensure that WordPress caches the meta and term queries. Props @burhandodhy and @maciejmackowiak via #4268.
- An issue where posts were not returned correctly when the search term contained accented characters. Props @burhandodhy via #4263.
- Prevent fatal error in Instant Results facets when
ep_facet_include_taxonomiesreturns non-WP_Taxonomy values. Props @laraib15 via #4255. - Instant Results displayed special characters as HTML encoded text. Props @burhandodhy and @wparslans via #4276.
- Error when trying to use queried object that doesn't exist. Props @tomjn and @ZacharyRener via #4285.
- Only consider a feature active if not disabled by code. Props @felipeelia via #4272.
- Several typos. Props @szepeviktor and @felipeelia via #4248.
- Query count in the basic status admin bar. Props @Sidsector9 via #4309.
- Settings notice layout on the settings page during sync in WordPress 7.0. Props @burhandodhy via #4310.
Security
- Updated Node.js dependencies (including a webpack override) to address npm audit findings. Props @felipeelia via #4307.
Developer
- Ensure
ep_{$indexable->slug}_sync_killproperly prevents object indexing during sync and post updates. Props @burhandodhy, @felipeelia, and @matthijsch via #4282. - Gracefully handle incorrect return types from
ep_admin_noticesfilter callbacks. Props @qudwill, @felipeelia, and @Sidsector9 via #4281. - Webpack configuration option for JavaScript and CSS source maps (editor debugging). Props @fiftin and @ZacharyRener via #4247 and #4288.
- Fix e2e tests. Props @felipeelia via #4262.
5.3.2.2 - 2026-03-26
Fixed
- Deployment to WordPress.org. Props @felipeelia via #4301.
5.3.2.1 - 2026-03-26
Changed
- Method of verifying ElasticPress.io environments. Props @felipeelia via #4300.
5.3.2 - 2025-11-21
Added
- Notice about keeping the sync page open during the sync process. Props @felipeelia and @tott via #4240.
Fixed
- Media search not working in the admin dashboard. Props @burhandodhy, @ognjanovic, and @maciejmackowiak via #4239.
- [Autosuggest] Setting allowed values. Props @felipeelia via #4238.
5.3.1 - 2025-11-06
Fixed
- Compatibility with PHP 7.4. Props @realrellek and @felipeelia via #4232.
5.3.0 - 2025-11-05
Highlights of this version:
- Improved compatibility with Elementor
- Better UX/UI in the Features Screen: Grouped features and conditional display of fields
- New indicator in the WordPress Admin Bar: See if your content is powered by Elasticsearch and how many queries were fired and failed in the current page.
Added
- Grouped features. Props @ZacharyRener and @felipeelia via #4137, #4154, and #4207.
- Selected features and groups now persist across reload. Props @ZacharyRener, @burhandodhy, and @felipeelia via #4138.
- Feature fields can be dependent on other fields. Props @ZacharyRener and @felipeelia via #4141 and #4215.
- Ability to create groups of fields. Props @ZacharyRener and @felipeelia via #4142, #4171, and #4172.
- Ability for a feature to require multiple other features, instead of just one. Props @ZacharyRener and @felipeelia via #4143 and #4229.
- Add new widgets for Date, Meta, and Meta Range Filters. Props @burhandodhy via #4156.
- Status indicator in the WordPress Admin Bar. Props @felipeelia, @burhandodhy, and @tott via #4199 and #4219.
- Add Elasticsearch 9 support. Props @burhandodhy via #4194.
- Support for rand with a seed in the orderby clause. Props @asharirfan, @asharirfan, @burhandodhy, @felipeelia, @tlovett1, @mustafauysal, and @jgmedialtd via #1639.
- Implement "OR" filter relationship in DateQuery. Props @burhandodhy and @eartahhj via #4165.
- Add support for new WP_Query argument
ep_intercept_request. Props @burhandodhy via #4185. - New ElasticPressIoTemplateManager class. Props @burhandodhy and @JakePT via #4189.
- Support for painless scripts in the ES queries. Props @burhandodhy and @scottbuckel via #4181.
- Support to set an array value in the
orderby_meta_mappingfilters. Props @burhandodhy and @jzzaj via #4188. - New
ep_skip_search_exclusionsWP_Query argument. Props @burhandodhy and @JakePT via #4184. - [Autosuggest] Added link in Status Report to send allowed parameters directly. Props @felipeelia, @burhandodhy, and @tott via #4199.
- New
ep_get_query_logfilter. Props @felipeelia via #4209.
Changed
- Index
srcsetfor post thumbnails. Props @burhandodhy and @JakePT via #3693. - Menu SVG icon with default WP color. Props @LenVan via #4167.
- Aggregation data stored at query level instead of a global variable. Props @burhandodhy and @JakePT via #4182.
- Text explaining when a manual sync may be required. Props @felipeelia and @anjulahettige via #4203.
- ElasticPress.io endpoint to fetch messages and available services. Props @felipeelia via #4124.
- [Autosuggest] WP_Query arguments are now passed to Elasticsearch->query() when setting allowed parameters. Props @felipeelia via #4204.
- Exceptions thrown during a post sync will now become error messages in sync processes. Props @felipeelia via #4210.
- Points the taxonomy filter URL to the facet section. Props @burhandodhy via #4217.
- Bumped
react-router-domfrom 6.14.3 to 7.9.4. Props @burhandodhy via #4214.
Deprecated
- Remove deprecated side param from edge_ngram filter for ES 8.16.x compatibility. Props @rebeccahum via #4155 and #4173.
- The
ep_bypass_exclusion_from_searchfilter (replaced by the newep_skip_search_exclusionsWP_Query argument). Props @burhandodhy and @JakePT via #4184.
Removed
- Old feature settings code. Props @burhandodhy and @JakePT via #4187.
Fixed
- Autosuggest doesn't work if the placeholder is changed via a
ep_autosuggest_query_placeholderfilter. Props @fabianmarz and @burhandodhy via #1619. - Link to compatibility documentation in admin notices. Props @dilipbheda via #4126.
- [Metadata Range filter] Warning
Undefined array key "is_preview". Props @burhandodhy via #4157. - 'Filter by Taxonomy' widget does not appear in Elementor. Props @burhandodhy via #4152.
- Add support to handle values in array format when the comparison operator was 'IN' or 'NOT IN'. Props @burhandodhy via #4168.
- Users could see other authors' private posts. Props @burhandodhy via #4169.
- Undefined array key warning related to media mime types. Props @burhandodhy and @DarioBF via #4208.
- Warning: value prop on "input" should not be null. Props @burhandodhy via #4216 and #4221.
- Comment query when orderby set to none. Props @burhandodhy via #4220.
- JS warnings on Status Report page. Props @burhandodhy via #4218.
Security
- Bumped
http-proxy-middlewarefrom 2.0.7 to 2.0.9. Props @dependabot via #4135. - Bumped
tar-fsfrom 3.0.8 to 3.1.1. Props @dependabot via #4160 and #4225. - Bumped
compressionfrom 1.7.5 to 1.8.1. Props @dependabot via #4175. - Bumped
form-datafrom 4.0.1 to 4.0.4. Props @dependabot via #4178. - Overwrite package
@babel/runtimecoming from core packages due to a vulnerability. Props @hugosolar via #4177.
Developer
- Fixed e2e tests on WP 6.8. Props @felipeelia via #4125.
- Migrated e2e tests from Cypress to Playwright. Props @felipeelia via #4134.
5.2.0 - 2025-04-10
This version bumps the minimum WordPress version to 6.2+.
Added
- New ACF Repeater Field Compatibility feature. Props @felipeelia via #4075.
- Add new filter
ep.InstantResults.filter.taxonomy.terms. Props @burhandodhy and @syedc via #4067. - Support to "number" fields in the Features Settings API. Props @felipeelia via #4072.
- Add
include,exclude,upper-limit-object-id, andlower-limit-object-idsupport for the term and comment indexable. Props @burhandodhy via #4074, #4102, and #4099. - Ability to display results on focus back + cached autosuggest results on same query. Props @oscarssanchezz, @JakePT, and @felipeelia via #4064.
- Document status displayed in the admin bar. Props @felipeelia, @tott, and @burhandodhy via #4096 and #4100.
Changed
- Minimum required version of WordPress (from 6.0 to 6.2). Props @felipeelia via #4082.
ElasticPress\Feature\RelatedPosts::get_related_query(),ElasticPress\Feature\RelatedPosts::find_related()parameter name change to$post_return. Props @oscarssanchez and @felipeelia via #4061.- The
ep_remote_requestaction to also run on non-blocking requests. Props @felipeelia via #4093. - Potentially resource intensive status reports are loaded on demand with AJAX. Props @oscarssanchezz, @felipeelia, and @archon810 via #4095.
- If a feature doesn't have all its requirements fulfilled, prevent it to run its setup method. Props @felipeelia via #4107.
Fixed
- PHP warning: Attempt to read property "base" on null. Props @burhandodhy and @yarovikov via #4060.
- Notice not displayed while updating a term. Props @burhandodhy and @MARQAS via #4070.
- PHP Notice: Function _load_textdomain_just_in_time was called incorrectly. Props @burhandodhy via #4065.
- PHP 8.4: Implicitly marking parameter $woocommerce as nullable is deprecated. Props @BrookeDot via #4087.
- WP-CLI sync timer resetting after 16 minutes. Props @felipeelia and @columbian-chris via #4094.
- Cannot get outside of autosuggest list pressing up on first item. Props @oscarssanchezz, @JakePT, and @felipeelia via #4064.
- Prevent other code from modifying the ORDERBY clause in Post and Term indexable queries. Props @burhandodhy and @felipeelia via #4101.
- Date Query returns no result when the before and after range is the same and inclusive is set to true. Props @burhandodhy and @ErikBrendel via #4103.
- Warning for undefined "post_type" array key. Props @econscript via #4106.
- Delete a post from the index if it had a password added. Props @felipeelia and @dtakken via #4108.
- [Synonyms] Linebreaks being wrongly replaced in Windows Systems. Props @nymwo via #4056.
- Deprecated
36px default size is deprecatedwarnings. Props @burhandodhy via #4109. - The Sync Complete message being displayed when the log is cleared. Props @felipeelia and @burhandodhy via #4114.
- Selecting a value in the date filter not redirecting users back to page 1. Props @felipeelia and @burhandodhy via #4119.
- Discard Changes button coming back when saving the feature twice. Props @felipeelia and @burhandodhy via #4120.
- WooCommerce Orders Incompatibility not appearing when plugin is activated network wide. Props @burhandodhy via #4121.
Security
- Bumped
serialize-javascriptfrom 6.0.1 to 6.0.2,jsdocfrom 3.6.11 to 4.0.4, andtaffydb. Props @dependabot via #4078. - Bumped
tar-fsfrom from 3.0.6 to 3.0.8. Props @dependabot via #4117.
Developer
- Trufflehog GitHub Action to detect secrets leak. Props @felipeelia and @tott via #4052.
- Install Unit Tests without relying on SVN. Props @felipeelia via #4058.
- Remove the setup step from the
build-with-vendor-prefixed.ymland standardize the use of Node Version. Props @burhandodhy via #4062. - Fixed E2E tests. Props @burhandodhy via #4069.
- PHP, JS and Style lint fixes. Props @oscarssanchez and @felipeelia via #4061.
- Several node and composer packages updated. Props @felipeelia via #4079 and #4083.
- Updated the chart.js library. Props @felipeelia via #4081.
5.1.4 - 2024-12-12
Added
- New filter
ep_facet_selected_filters. Props @burhandodhy via #3953. - New filter
ep_disable_query_loggingto disable query logging. Props @davidsword and @rebeccahum via #4019. - New setting to Protect Content to use WP default order in admin. Props @felipeelia and @realrellek via #4028.
Changed
- Apply ElasticPress filters to the requests in status and stats CLI commands. Props @edpittol via #4000.
- Autosuggest Endpoint field explanation. Props @burhandodhy and @felipeelia via #4009.
- Alignment of custom search results action icons. Props @felipeelia and @anjulahettige via #4020.
- Update all of our blocks apiVersion from 2 to 3, to indicate support for working in an iframed editor. Props @dkotter and @JakePT via #4029.
- If using the new way to index meta, avoid querying distinct meta fields in the sync page. Props @felipeelia and @majiix via #4033.
- Updated several composer and node packages. Node 20 is now the default version. Props @felipeelia via #4039 and #4043.
- Improve readability of sync output (MB/GB) and number formatting on the Health Status page. Props @columbian-chris via #4042.
Fixed
- Hardcoded
tmppath replaced with a dynamic value. Props @burhandodhy via #3962. - Variable names and descriptions in the docblocks for
ep_formatted_argsandep_post_formatted_args. Props @barryceelen via #3977. - Remove 'None' from Highlight tag list. Props @burhandodhy via #3979.
- [Facets] Incorrect link on description when not using a block theme. Props @felipeelia and @burhandodhy via #3997.
- Deprecation warning in
strtotime()call. Props @felipeelia and @barryceelen via #3998. - Special characters like
\in search terms for both Autosuggest and Instant Results. Props @felipeelia and @burhandodhy via #3999. - [WooCommerce] Incompatibility when "Enable table usage" was enabled to filter the product catalog. Props @felipeelia and @burhandodhy via #4002.
- Deprecation warning related to PluginPostStatusInfo. Props @burhandodhy and @felipeelia via #4008.
- [Custom Results] Inconsistent Reordering Issue. Props @felipeelia, @anjulahettige, @burhandodhy via #4018 and #4045.
- Update supported document file types in Documents feature summary. Props @burhandodhy via #4024.
- "Exclude from search results" to work in AJAX contexts. Props @felipeelia and @burhandodhy via #4025.
- Retain CR & RD Labels Upon Saving Custom Search Result Posts. Props @felipeelia and @anjulahettige via #4020.
- Typo in "All filters" text domain. Props @felipeelia and @arturomonge via #4031.
- Autosuggest GA tracking to work when ad blocks are enabled. The dataLayer.push() call now pushes a custom event called ep_autosuggest_click with ep_autosuggest_search_term and ep_autosuggest_clicked_url as custom parameters. Props @felipeelia and @anjulahettige via #4032.
- Delay
load_plugin_textdomaintoinitand set a Domain Path. Props @felipeelia via #4036. - Only display the Exclude From Search checkbox if the post type supports
custom-fields. Props @felipeelia and @maartenhunink via #4040. - JS error when submit button is clicked without selecting a date. Props @burhandodhy via #4044.
- Deprecated warnings for margin style. Props @burhandodhy via #4046.
Security
- Bumped
composer/composerfrom 2.7.0 to 2.7.8. Props @dependabot via #3972. - Bumped
symfony/processfrom 6.4.8 to 6.4.14. Props @dependabot via #3996.
Developer
- Tests use ES 8 by default. Props @felipeelia via #4017.
- Update E2E tests to work properly with the iframed block editor. Props @dkotter via #4029.
- E2e tests for WP 6.6. Props @felipeelia via #3959.
- E2e tests for WP 6.7. Props @felipeelia via #4010.
- Unit Tests: Fail faster on requests we know will fail. Props @felipeelia via #4047.
- E2e tests: Fix the debug-bar-elasticpress dependency of ElasticPress. Props @felipeelia via #4048.
5.1.3 - 2024-06-11
Fixed
- Missing nonces on some sync trigger URLs, making them require a manual interaction from the user. Props @felipeelia via #3933.
5.1.2 - 2024-06-11
This is a security release affecting all previous versions of ElasticPress.
Security
- Missing nonce verification for the sync triggered during activation of some features. Props @felipeelia and @dhakalananda via #3929.
- Missing nonce verification for retrying the EP connection and fixed PHPCS linting rules. Props @felipeelia via #3932.
5.1.1 - 2024-05-27
Changed
- Update Support Article URLs. Props @felipeelia via #3919.
Fixed
5.1.0 - 2024-04-29
Added
- [Filters] New
ep_facet_enabled_in_editorfilter to enabled facet blocks in the post editor. Props @JiveDig and @felipeelia via #3845. - Official support to Elasticsearch 8.x. Props @felipeelia via #3854.
- A new Sync errors tab, with errors grouped by type and links to support documentation when available. Props @JakePT and @apurvrdx1 via #3803.
- [WooCommerce] HPOS compatibility notice for WooCommerce Orders. Props @felipeelia via #3861.
- [Synonyms] A new settings screen with the the ability to bulk delete synonyms, support for many-to-many replacements, and a new type of synonym for terms with a hierarchical relationship, called hyponyms. Props @JakePT and @apurvrdx1 via #3814.
- Infinite loop when using excerpt highlighting with posts that use blocks that print an excerpt. Props @felipeelia and @JakePT via #3867.
- Context parameter to the
get_capability()function. Props @felipeelia and @selim13 via #3866. - A tooltip for meta keys to the weighting screen to allow seeing the full key if it has been truncated. Props @JakePT via #3865.
- New
ep_weighting_optionsfilter to modify the weighting dashboard options. Props @burhandodhy via #3827. - New
ep_post_test_meta_valuefilter. Props @felipeelia via #3850. - New message related to indices limits on ElasticPress.io. Props @felipeelia via #3898.
Changed
- Acknowledge all Elasticsearch modules, making the Documents feature available in ES 8 installations by default. Props @felipeelia, @Serverfox, and @jerasokcm via #3844.
- [Documents] Index CSV and TXT file contents. Props @felipeelia via #3885.
- [Documents] Only set documents-related parameters if no post type was set or if the list already contains attachments. Props @felipeelia via #3889.
- Automatically open the error log when a sync completes with errors. Props @JakePT and @felipeelia via #3895.
- Aggregations created with the 'aggs' WP_Query parameter, are now retrievable using
$query->query_vars['ep_aggregations']. Props @felipeelia via #3847. - Major refactor of the
Term::format_args()method and conditionally set search fields for term queries in REST API requests. Props @felipeelia and @mgurtzweiler via #3869. - Replaced
lee-dohm/no-responsewithactions/staleto help with closing no-response/stale issues. Props @jeffpaul via #3870. - Bumped actions/upload-artifact from v3 to v4. Props @iamdharmesh via #3897.
- Required node version. Props @oscarssanchez via #3896.
Fixed
- [Autosuggest] Hide the Autosuggest Endpoint URL field for EP.io users. Props @felipeelia and @JakePT via #3835.
- [Autosuggest] Google Analytics integration gtag call. Props @felipeelia and @JakePT via #3835.
- [Autosuggest] Link click when using a touchpad. Props @romanberdnikov via #3818.
- [Autosuggest] Pressing Enter to select an Autosuggest suggestion would instead open Instant Results. Props @JakePT via #3864.
- [Synonyms] Fatal error when saving synonyms if an index does not exist. Props @felipeelia, @MARQAS, @randallhedglin, and @bispldeveloper via #3846.
- [Synonyms] Fix Synonyms case sensitive issue. Props @burhandodhy via #3857.
- [Documents] Media search returns no result in admin dashboard. Props @felipeelia and @burhandodhy via #3837 and #3871.
- [WooCommerce] E2e tests. Props @felipeelia via #3848.
- [Instant Results] A default post type filter set by a field in the search form was cleared if a new search term was entered. Props @JakePT and @burhandodhy via #3891.
- Inconsistent search results when calling the same function via PHP and Ajax. Props @burhandodhy via #3875.
- Unit test related to blog creation. Props @felipeelia and @burhandodhy via #3839.
- Correct PHPdoc return type for
Elasticsearch::index_documentand related methods. Props @ictbeheer via #3881. - Unnecessary horizontal scroll for the
<pre>tag on the status report page. Props @burhandodhy via #3894.
Security
- Bumped
composer/composerfrom 2.6.5 to 2.7.0. Props @dependabot via #3831.
5.0.2 - 2024-01-16
Changed
- [Terms] Counts are now calculated with
wp_count_terms()inquery_db. Props @rebeccahum via #3791. - Composer and npm files are now part of the final package. Props @felipeelia via #3810.
Fixed
- [WooCommerce] Not use a hard-coded list of order post types. Props @felipeelia via #3807.
- [Autosuggest] Stop calling the get
-autosuggest-allowedendpoint to build the REST API schema. Props @felipeelia via #3809.
Security
- Bumped
follow-redirectsfrom 1.15.3 to 1.15.4. Props @dependabot via #3808.
5.0.1 - 2023-12-12
Added
- Failed queries in the Index Health page will now be outputted with their error messages. Props @felipeelia and @pvnanini via #3776.
Fixed
- Queries failing due to a "request body is required" error. Props @felipeelia via #3770.
- Fatal error when site has a bad cookie. Props @burhandodhy via #3778.
- Broken i18n of some strings. Props @felipeelia and @iazema via #3780.
- PHP Warning on term archive pages when the term was not found. Props @felipeelia and @Igor-Yavych via #3777.
- PHP warning when using block themes. Props @felipeelia and @tropicandid via #3781.
- Several typos. Props @szepeviktor via #3750.
- Index cleanup process - offset being zeroed too late. Props @pknap via #3765.
- PHP warning in site health page. Props @turtlepod via #3758.
- ReactDOM.render is no longer supported in React 18. Props @burhandodhy and @felipeelia via #3686.
- E2e tests with WordPress 6.4. Props @felipeelia via #3771.
- PHP Setup in GitHub Actions. Props @felipeelia via #3784.
5.0.0 - 2023-11-01
ElasticPress 5.0.0 contains some important changes. Make sure to read these highlights before upgrading:
- This version does not require a full reindex but it is recommended, especially for websites using synonyms containing spaces. See #3610.
- Meta keys are not indexed by default anymore. The new Weighting Dashboard allows admin users to mark meta fields as indexables. The new
ep_prepare_meta_allowed_keysfilter allows to add meta keys programmatically. See #3068. - Features now have their fields declared in JSON. Custom features may need to implement the
set_settings_schema()method to work. See #3655. - The
Usersfeature was moved to the ElasticPress Labs plugin and is no longer available in this plugin. If you use this feature, make sure to install and configure EP Labs before upgrading. See #3670. - The
TermsandCommentsfeatures are now hidden by default for sites that do not have them active yet. Check our blog post for more info. See #3691. - New minimum versions (see #3668) are:
Min Max Elasticsearch 5.2 Unset WordPress 6.0+ latest PHP 7.4+ latest
Added
- New Sync page. Props @JakePT, @felipeelia, @apurvrdx1, @brandwaffle, @anjulahettige, @burhandodhy, and @MARQAS via #3657 and #3735.
- New feature settings screen. Props @JakePT, @felipeelia, @apurvrdx1, @brandwaffle, and @anjulahettige via #3712.
- New weighting dashboard with support for making meta fields searchable. Props @JakePT, @mehidi258, and @felipeelia via #3068.
- New Date Filter Block. Props @burhandodhy, @JakePT, and @felipeelia via #3700.
- Sync history to the Sync page. Props @JakePT, @felipeelia, @apurvrdx1, @brandwaffle, and @anjulahettige via #3664.
- Final status of syncs (success, with errors, failed, or aborted.) Props @felipeelia and @JakePT via #3669.
- REST API endpoint at
elasticpress/v1/featuresfor updating feature settings. Props @JakePT via #3676. - New
ElasticsearchErrorInterpreterclass. Props @felipeelia via #3661. - New
default_searchanalyzer to differentiate what is applied during sync and search time. Props @felipeelia and @MARQAS via #3610 and #3703. - The sync page now describes what triggered the current sync, and previous syncs. Props @JakePT via #3722.
- Weighting and Synonyms Dashboards to multisites. Props @felipeelia via #3724.
- No-cache headers to sync calls. Props @felipeelia via #3731.
Changed
- Abstracted Sync page logic into a provider pattern. Props @JakePT via #3630.
- Moved syncing from an
admin-ajax.phpcallback to a custom REST API endpoint with support for additional arguments. Props @JakePT via #3643. - Store previous syncs info, changed option name from
ep_last_indextoep_sync_history. Props @felipeelia and @JakePT via #3647. - Features settings declared as JSON. Props @felipeelia and @JakePT via #3655.
- Tweaked layout and notifications style on the Status Report screen for consistency with the updated Sync page. Props @JakePT via #3662.
- Moved REST API endpoint definitions to controller classes. Props @JakePT via #3650.
- SyncManager array queues are now indexed by the blog ID. Props @sathyapulse and @felipeelia via #3689.
- Comments and Terms are now hidden by default. Props @felipeelia via #3691.
- WooCommerce-related hooks are now removed when switching to a site that does not have WC active. Props @felipeelia and @MARQAS via #3688.
- Run e2e tests against the minimum supported WordPress version. Props @felipeelia via #3540.
- Several tweaks in the Features settings API. Props @JakePT via #3708 and #3709.
- EP Settings are now reverted if it is not possible to connect to the new ES Server. Props @felipeelia, @burhandodhy, and @scottbuscemi via #3684.
- Node packages updated. Props @felipeelia via #3706.
- Updated the labels of feature settings and options for consistency and clarity. Props @JakePT via #3721.
- Depending on the requirements, some feature settings are now saved to be applied after a full sync. Props @felipeelia and @JakePT via #3720.
- Minimum requirements. Props @felipeelia and @brandwaffle via #3668.
- Old features will have their settings displayed based on their default setting values. Props @felipeelia and @JakePT via #3728.
- Radio and checkbox settings were changed from booleans to strings. Props @felipeelia and @JakePT via #3730.
- The troubleshooting article link was updated. Props @felipeelia and @anjulahettige via #3748.
Deprecated
- The
IndexHelper::get_last_indexmethod was replaced byIndexHelper::get_last_sync. See #3647. - The
FailedQueries::maybe_suggest_solution_for_esmethod was replaced byElasticsearchErrorInterpreter::maybe_suggest_solution_for_es. See #3661. Weighting::render_settings_section,Weighting::handle_save,Weighting::redirect, andWeighting::save_weighting_configurationwere deprecated in favor of React components. See #3068.
Removed
- Users-related files from the main plugin. Props @felipeelia via #3670.
- Removed mapping files related to older versions of Elasticsearch. Props @MARQAS via #3704.
Fixed
- Docblock for the
ep_facet_renderer_classfilter. Props @misfist via #3696. - Instant Results console warning. Props @burhandodhy via #3687.
- Total fields limit message interpretation. Props @felipeelia @JakePT via #3702.
- End to end tests intermittent failures. Props @felipeelia via #3572.
- React warning on Sync page. Props @burhandodhy via #3718.
- Content was not showing properly on the tooltop on install page. Props @burhandodhy via #3725.
- Redirect to correct sync url after enabling feature that requires a new sync. Props @burhandodhy via #3726.
- Post type setting wasn't respected during sync. Props @burhandodhy via #3727.
- Fix a JS error appearing when sync requests are intentionally stopped. Props @burhandodhy via #3736.
- Features description copy. Props @felipeelia, @burhandodhy, and @MARQAS via #3737.
- Endpoint URL field is not a URL type field. Props @burhandodhy via #3733.
- WooCommerce feature not autoactivating. Props @felipeelia via #3739.
- Elasticsearch errors interpretation. Props @felipeelia via #3741.
- Deactivating a feature via WP-CLI also takes into account draft states. Props @felipeelia via #3749.
Security
4.7.2 - 2023-10-10
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code. Check our blog post for more info.
Added
- New
ep_highlight_number_of_fragmentsfilter. Props @dgnorrod and @felipeelia via #3681. -
=PHP 7.0 version check. Props @bmarshall511 and @felipeelia via #3641.
- GitHub action to automatically open a new issue when a new version of WordPress is released. Props @felipeelia via #3666.
Removed
- Unnecessary aliases in use statements. Props @felipeelia via #3671.
Fixed
- Calls to
ep_woocommerce_default_supported_post_typeswere ignored. Props @felipeelia and @MARQAS via #3679. - WooCommerce Orders search field disappearing when Orders Autosuggest receives an unexpected response from ElasticPress.io. Props @JakePT and @anjulahettige via #3682.
- Call composer while building docs. Props @felipeelia via #3625.
- Make sure
post__not_inandpost_statusare translated into arrays, not objects. Props @felipeelia via #3652 and #3680. - Updated phpDoc entries. Props @renatonascalves via #3635.
- Docblock for
Utils\get_optionreturn type. Props @felipeelia via #3653. - Docblock for
ep_capabilityandep_network_capabilityfilters. Props @burhandodhy via #3685. - PHP warning related to the Autosuggest template generation. Props @felipeelia via #3651.
- WooCommerce unit tests running multiple times. Props @felipeelia via #3656.
- Display the meta range facet block in versions prior to WP 6.1. Props @felipeelia and @MARQAS via #3658.
- Number of expected arguments for
add_attachmentandedit_attachment. Props @burhandodhy via #3690. - Error while running
composer installon PHP 8. Props @burhandodhy via #3683.
Security
- Bumped
composer/composerfrom 2.5.8 to 2.6.4. Props @dependabot via #3672.
4.7.1 - 2023-08-31
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code. Check our blog post for more info.
Added
- Synonyms and weighting settings added to the status report. Props @felipeelia via #3609.
Changed
- Composer packages are namespaced by Strauss. Props @felipeelia and @junaidbhura via #3621.
- E2e tests now log the formatted query info from Debug Bar ElasticPress. Props @felipeelia via #3613.
Fixed
- WooCommerce products sorted by popularity are now always sorted in a descending order. Props @felipeelia and @burhandodhy via #3619.
- E2e tests with WordPress 6.3. Props @felipeelia via #3599.
4.7.0 - 2023-08-10
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code. Check our blog post for more info.
Added
- Exclude Media Attachments from search results. Props @burhandodhy via #3539.
- New
Default to Site Languageoption in the language dropdown in ElasticPress' settings page. Props @felipeelia via #3550. - Compatibility with block themes for the Facet meta blocks. Props @felipeelia via #3498.
- Integrate Did You Mean feature in the Instant Results. Props @burhandodhy and @JakePT via #3564.
- All blocks now support styling features in themes that support them. Props @JakePT via #3403 and #3584.
- Descriptions and keywords have been added to all blocks. Props @JakePT via #3403.
- New
ep_stopfilter, that changes the stop words used according to the language set. Props @felipeelia via #3549. - New
get-index-settingsWP-CLI command. Props @felipeelia via #3547. - New
ep_facet_tax_special_slug_taxonomiesfilter. Props @oscarssanchez via #3506. - New
--stop-on-errorflag to thesynccommand. Props @oscarssanchez via #3500. - New
getWP-CLI command. Props @felipeelia via #3567. - Transient utility functions. Props @felipeelia via #3551.
- Indices' language settings in status reports. Props @felipeelia via #3552.
- Initial changes to implement a DI Container. Props @felipeelia and @tott via #3559.
- New
$only_indexableparameter to theUtils\get_sites()function. Props @felipeelia via #3577.
Changed
- WooCommerce feature only integrates with queries that are the main query, a search, or have ep_integrate set as true. Props @felipeelia via #3546.
- Miscellaneous changes to all blocks, including their category, names, and code structure. Props @JakePT, @oscarssanchez, and @felipeelia via #3403.
- The Facets feature was renamed to Filters. Props @JakePT and @felipeelia via #3403, #3581, and #3597.
- The WooCommerce feature was refactored, separating code related to products and orders. Props @felipeelia via #3502.
- Transients deletion during uninstall. Props @felipeelia via #3548.
- Bump Elasticsearch version to 7.10.2 for E2E tests. Props @burhandodhy via #3556 and #3561.
- Refactor
get_settings()usage inside ElasticPress features. Props @oscarssanchez and @felipeelia via #3558. - In a multisite, if a site is indexable or not is now stored in site meta, instead of a blog option. Props @felipeelia via #3571.
- Autosuggest authenticated requests are not cached anymore and are only sent during the sync process or when the weighting dashboard is saved. Props @felipeelia and @kovshenin via #3566.
- Use
createRootinstead ofrenderto render elements. Props @oscarssanchez, @burhandodhy, @JakePT, and @felipeelia via #3573 and #3595. - Moved methods to abstract Facet classes. Props @oscarssanchez and @felipeelia via #3499.
- Only display available languages in the Settings screen. Props @felipeelia and @JakePT via #3587.
- WooCommerce feature description. Props @brandwaffle, @felipeelia, and @JakePT via #3592.
Deprecated
Autosuggest::delete_cached_query()was deprecated without a replacement. See #3566.EP_Uninstaller::delete_related_posts_transients()andEP_Uninstaller::delete_total_fields_limit_transients()was merged intoEP_Uninstaller::delete_transients_by_name. See #3548.- The
ep_woocommerce_default_supported_post_typesfilter was split intoep_woocommerce_orders_supported_post_typesandep_woocommerce_products_supported_post_types. See #3502. - The
ep_woocommerce_supported_taxonomiesfilter is nowep_woocommerce_products_supported_taxonomies. See #3502. - All old
WooCommerce\Ordersmethods were migrated to the newWooCommerce\OrdersAutosuggestclass. See #3502. - The
Elasticsearch::clear_total_fields_limit_cache()method was replaced byElasticsearch::clear_index_settings_cache(). See #3552. - Several methods that were previously part of the
WooCommerce\WooCommerceclass were moved to the newWooCommerce\Productclass. See #3502. - Several methods that were specific to Facet types were moved to the new
BlockandRendererabstract classes. See #3499.
Fixed
- Same error message being displayed more than once on the Dashboard sync. Props @felipeelia, @MARQAS, @tott, and @wildberrylillet via #3557.
- Sync media item when attaching or detaching media. Props @MARQAS and @felipeelia via #3562.
- Display "Loading results" instead of "0 results" on first search using Instant Results. Props @oscarssanchez and @JakePT via #3568.
- Highlighting returning inaccurate post title when partial/no term match on Instant Results. Props @oscarssanchez, @JakePT, and @tomi10up via #3575.
- Warning in Orders Autosuggest:
"Creation of dynamic property $search_template is deprecated". Props @burhandodhy via #3591. - Warning while using PHP 8.1+:
Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated. Props @felipeelia and @burhandodhy via #3593. - Warning in the metadata range facet renderer:
Undefined array key "is_preview". Props @felipeelia and @burhandodhy via #3594.
Security
- Bumped
word-wrapfrom 1.2.3 to 1.2.4. Props @dependabot via #3543. - Bumped
tough-cookiefrom 4.1.2 to 4.1.3 and@cypress/requestfrom 2.88.10 to 2.88.12. Props @dependabot via #3583.
4.6.1 - 2023-07-05
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code. Check our blog post for more info.
Added
- Add doc url for "Did You Mean" feature. Props @burhandodhy via #3529.
Changed
- Use
wp_cache_supportsoverwp_cache_supports_group_flush. Props @spacedmonkey via #3501. - Update the
ep_exclude_from_searchpost meta only if it is set or has some value. Props @MARQAS and @columbian-chris via #3521.
Fixed
- Deprecation notice in
ElasticPress\Feature\WooCommerce\Orders. Props @mwidmann via #3507. - Don't apply a facet filter to the query if the filter value is empty. Props @burhandodhy via #3524.
- Syncing a post with empty post meta key. Props @MARQAS and @oscarssanchez via #3516.
- Order by clauses with Elasticsearch field formats are not changed anymore. Props @felipeelia and @tlovett1 via #3512.
- Failed Query logs are automatically cleared on refreshing the "Status Report" page. Props @burhandodhy via #3533.
- Warning message on Health page when Last Sync information is not available. Props @burhandodhy via #3530.
- Deprecation notice: json_encode(): Passing null to parameter #2. Props @burhandodhy via #3532.
- Documentation of the
ep_facet_search_get_terms_argsfilter. Props @burhandodhy via #3525.
4.6.0 - 2023-06-13
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code. Check our blog post for more info.
Added
- 'Did you mean' feature. Props @burhandodhy, @felipeelia, @brandwaffle, and @tott via #3425 and #3492.
- Facet by Post type. Props @oscarssanchez, @felipeelia, and @burhandodhy via #3473.
- Two new options to disable weighting results by date in WooCommerce products related queries. Props @MARQAS and @felipeelia via #3462.
- Sort meta queries by named clauses and sort by different meta types. Props @felipeelia and @selim13 via #3469.
- New
--forceflag in the sync WP-CLI command, to stop any other ongoing syncs. Props @felipeelia and @tomjn via #3479. - Installers added to composer.json, so
installer-pathsworks without any additional requirement. Props @felipeelia and @tomjn via #3478. - Links to Patchstack Vulnerability Disclosure Program. Props @felipeelia and @brandwaffle via #3465.
- E2E tests for Password Protected Post. Props @burhandodhy and @felipeelia via #2864.
Changed
- If no index is found, the "failed queries" message will be replaced with a prompt to sync. Props @felipeelia via #3436 and #3466.
- Bumped Cypress version to v12. Props @felipeelia via #3441.
- Documentation partially moved to Zendesk. Props @felipeelia and @brandwaffle via #3493.
Fixed
- Fatal error related to the
maybe_process_error_limitfunction. Props @burhandodhy via #3454. - Display the error message returned by Elasticsearch if a mapping operation fails. Props @felipeelia via #3464 and #3495.
- Negative
menu_ordervalues being transformed into positive numbers. Props @felipeelia and @navidabdi via #3468. - Password protected content being indexed upon save when Protected Content is not active. Props @felipeelia and @burhandodhy via #2864.
- Error message when the Elasticsearch server is not available during the put mapping operation. Props @felipeelia via #3483.
4.5.2 - 2023-04-19
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code. Check our blog post for more info.
Added
- New
ep_enable_query_integration_during_indexingfilter. Props @rebeccahum via #3445.
Changed
- Automated message sent in GitHub issues after 3 days of inactivity. Props @felipeelia and @brandwaffle via #3448.
Fixed
- Authenticated requests for autosuggest were not being properly cached while using external object cache. Props @felipeelia via #3438.
4.5.1 - 2023-04-11
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code. Check our blog post for more info.
Added
- New
ep_instant_results_args_schemafilter for filtering Instant Results arguments schema. Props @JakePT via #3389. - New
ep.Autosuggest.navigateCallbackJS filter for changing the behavior of a clicked element on Autosuggest. Props @oscarssanchez, @felipeelia, and @JakePT via #3419. - New
ep.Autosuggest.fetchOptionsJS filter for filtering Elasticsearch fetch configuration of Autosuggest. Props @tlovett1, @MARQAS, and @felipeelia via #3382. - Code linting before pushing to the repository. Props @felipeelia via #3411.
- Unit tests for the Status Reports feature. Props @burhandodhy via #3395.
Changed
- Meta field facets now only filter based on fields selected on blocks. The new
ep_facet_should_check_if_allowedfilter reverts this behavior. Props @felipeelia and @burhandodhy via #3430.
Fixed
- Instant Results crashing when using taxonomies as facets that are attached to both searchable and non-searchable post types. Props @JakePT via #3386.
- Fatal error during plugin uninstall. Props @felipeelia via #3407.
- Compatibility issue which prevented Instant Results from working in WordPress 6.2. Props @JakePT via #3417.
- Fatal error while syncing on older versions of WordPress. Props @felipeelia, @TorlockC via #3420.
- Facets removing taxonomy parameters in the URL when not using pretty permalinks. Props @MARQAS and @felipeelia via #3422.
- JS errors when creating Facet blocks in WP 6.2. Props @felipeelia and @burhandodhy via #3429.
ep_index_metaoption blowing up on an indexing process with many errors. Props @rebeccahum and @felipeelia via #3399.- Typo in
index_outputWP-CLI command help text. Props @bratvanov via #3405. - React warning messages for the comments block. Props @burhandodhy via #3434.
- Fixed
action_edited_termto callkill_syncin SyncManager for post Indexable. Props @rebeccahum via #3432. - Undefined array key
'index'during sync. Props @felipeelia and @burhandodhy via #3435. - Meta Range Facet Block e2e tests. Props @oscarssanchez and @felipeelia via #3426.
- Users e2e tests using WP 6.2. Props @felipeelia via #3431.
Security
- Bumped
webpackfrom 5.75.0 to 5.76.3. Props @dependabot via #3412.
4.5.0 - 2023-03-09
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code. Check our blog post for more info.
ElasticPress 4.5.0 release highlights:
- Autosuggest for WooCommerce Orders (#3175, #3308, #3321, #3324, #3323, #3310, #3349, #3339, and #3363)
- New Facet by Meta Range block (#3289, #3342, #3337, #3361, #3364, #3368, and #3365)
- ElasticPress.io messages system (#3162 and #3376)
- Indices of disabled features will be deleted during a full sync (#3261)
- WooCommerce Queries (#3259 and #3362)
Added
- Autosuggest for WooCommerce Orders. Props @JakePT and @felipeelia via #3175, #3308, #3321, #3324, #3323, #3310, #3349, and #3339.
- New Facet by Meta Range block (currently in Beta.) Props @felipeelia via #3289, #3342, #3337, #3361, #3363, #3364, #3368, and #3365.
- Option to display term counts in Facets blocks. Props @felipeelia via #3309.
- New capability for managing ElasticPress. Props @tlovett1, @tott, and @felipeelia via #3313.
- New "Download report" button in the Status Report page. Props @felipeelia via #3319.
- ElasticPress.io messages system. Props @felipeelia and @JakePT via #3162 and #3376.
- WP CLI commands
get-search-template,put-search-template, anddelete-search-template. Props @oscarssanchez via #3216. - New
--statusparameter to theget-indicesWP-CLI command. Props @felipeelia via #3261. - New
ep_instant_results_per_pagefilter for changing the number of results per page in Instant Results. Props @JakePT via #3292. - Support for
post_parent__inandpost_parent__not_in. Props @MARQAS via #3300. - New
ep_sync_argsfilter. Props @felipeelia and @nickchomey via #3317. - "Full Sync" (Yes/No) to the Last Sync section in Status Report. Props @felipeelia via #3304.
- New
ep_user_register_featureandep_feature_is_visiblefilters. Props @felipeelia via #3334. - Requests now have a new header called
X-ElasticPress-Request-IDto help with debugging. Props @felipeelia via #3307. - Compatibility with
'orderby' => 'none'in WP_Query. Props @felipeelia via #3318. - Unit tests related to the
ep_weighting_configuration_for_searchfilter. Props @felipeelia via #3303. - New Unit tests for the WooCoomerce feature. Props @burhandodhy and @felipeelia via #3259.
- Description for the
--network-wideflag in WP-CLI commands. Props @MARQAS via #3350. - New
is_available()helper method in the Feature class. Props @burhandodhy via #3356.
Changed
- Indices of disabled features will be deleted during a full sync. Mappings of needed but non-existent indices will be added even during a regular sync. Props @felipeelia via #3261.
- Reduced number of WooCommerce product queries automatically integrated with ElasticPress. Props @burhandodhy and @felipeelia via #3259 and #3362.
- The number of results per page in Instant Results now matches the site's posts per page setting. Props @JakePT via #3292.
- Under the hood improvements to the structure of Instant Results. Props @JakePT via #3159 and #3293.
- Apply the "Exclude from Search" filter directly on ES Query. Props @burhandodhy via #3266.
- Avoid using Elasticsearch if query has an unsupported orderby clause. Props @burhandodhy via #3273.
- E2e tests split into 2 groups to be executed in parallel. Props @iamchughmayank, @burhandodhy, and @felipeelia via #3283.
- Filter command flags using
get_flag_value(). Props @oscarssanchez and @felipeelia via #3301. - Code Standards are now applied to the test suite as well. Props @felipeelia via #3351.
- Text displayed when a feature that requires a sync is about to be enabled. Props @felipeelia and @brandwaffle via #3380.
Removed
- Remove legacy filters
woocommerce_layered_nav_query_post_ids,woocommerce_unfiltered_product_ids, andep_wp_query_search_cached_posts. Props @burhandodhy via #3230.
Fixed
- API requests for Instant Results sent on page load before the modal has been opened. Props @JakePT via #3159.
- Prevent search queries for coupons from using Elasticsearch. Props @burhandodhy via #3222.
- Thumbnails are not removed from indexed WooCommerce Products when the attachments are deleted. Props @burhandodhy and @JakePT via #3267.
- Auto sync posts associated with a child term when the term parent is changed. Props @MARQAS and @felipeelia via #3145.
- Status Report page firing requests to ES twice. Props @felipeelia via #3265.
- Sanitization of Meta Queries. Props @MARQAS via #3271.
- Facets styles not enqueued more than once. Props @felipeelia and @MediaMaquina via #3306.
- Duplicate terms listed in Instant Results facets. Props @felipeelia via #3335.
- Not setting the post context when indexing a post. Props @tomjn via #3333.
- Some utility methods in the Command class treated as WP-CLI Commands. Props @burhandodhy and @felipeelia via #3320.
- Make the "Failed Queries" notice dismissible. Props @oscarssanchez and @felipeelia via #3348.
- Undefined index
'elasticpress'in the Status Report page. Props @MARQAS via #3374. - Undefined array key
'displayCount'error for facet. Props @burhandodhy via #3373. - Warnings on the feature setup page. Props @burhandodhy via #3377.
Security
- Bumped
http-cache-semanticsfrom 4.1.0 to 4.1.1. Props @dependabot via #3295. - Bumped
gotfrom 9.6.0 to 11.8.5 andsimple-bin-helpfrom 1.7.7 to 1.8.0. Props @dependabot via #3290. - Bumped
simple-gitfrom 3.15.1 to 3.16.0. Props @dependabot via #3278. - Bumped
json5from 1.0.1 to 1.0.2. Props @dependabot via #3251.
4.4.1 - 2023-01-10
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code.
This is a bug fix release.
Added
- Node 18 support. Props @burhandodhy and @felipeelia via #3224.
- Unit tests for WP-CLI Commands. Props @burhandodhy and @felipeelia via #3202.
- Unit tests for the
HealthCheckElasticsearchclass, Protected Feature, and #3106. Props @burhandodhy via #3213,#3183, and #3184.
Changed
- Detection of indexable meta fields when visiting the sync and status report pages. Props @felipeelia, @paoloburzacca, and @burhandodhy via #3215 and #3250.
put-mappingWP-CLI command returns an error message if mapping failed. Props @burhandodhy, @JakePT, and @felipeelia via #3206.- Last Sync subsection title in the Status Report page. Props @MARQAS, @felipeelia, and @tomioflagos via #3228.
- Title for Autosuggest and Instant results features, if connected to an ElasticPress.io account. Props @burhandodhy, @felipeelia, and @NV607FOX via #3207.
- "Exclude from search" checkbox text. Props @burhandodhy, @JakePT, @felipeelia, and @anjulahettige via #3210.
- Visibility of the
analyze_logmethod of theFailedQueriesclass. Props @MARQAS via #3223. - Text of the notice under the Documents feature. Props @MARQAS and @NV607FOX via #3212.
- Usage of
get_index_default_per_pageinstead of a direct call toUtils\get_option. Props @burhandodhy via #3163.
Removed
- Unnecessary
remove_filtersfrom the unit tests. Props @burhandodhy via #3220.
Fixed
- Sync is stopped if put mapping throws an error. Props @burhandodhy, @JakePT, and @felipeelia via #3206.
- Layout issue in Instant Results that would occur with small result sets. Props @JakePT via #3200.
- Issue where keyboard focus on a facet option was lost upon selection. Props @JakePT via #3209.
- JS error on Status Report page. Props @burhandodhy and @felipeelia via #3187.
- Hooks documentation reference. Props @burhandodhy via #3244.
'current'as value for the'sites'parameter. Props @burhandodhy, @oscarssanchez, and @anders-naslund via #3243.Uncaught ArgumentCountError: Too few arguments to function WP_CLI::halt()message. Props @burhandodhy and @JakePT via #3242.- Queries with
post_parentset to0not working correctly. Props @JiveDig via #3211. - Sync command exits without any error message if mapping fails. Props @burhandodhy and @felipeelia via #3202.
- Evaluate the WP-CLI
--prettyflag as real boolean. Props @oscarssanchez via #3185. - Remove deprecated command from the error message. Props @burhandodhy via #3194.
- CLI command
delete-index --network-widethrows error when EP is not network activated. Props @burhandodhy via #3172. - E2E tests for PHP 8. Props @burhandodhy via #3188.
- Feature title issue on the report page and notices. Props @burhandodhy and @JakePT via #3248.
- Autosuggest Site Health Info containing incorrect information unrelated to Autosuggest. Props @JakePT via #3247.
- Styling of the Instant Results Facets field. Props @JakePT via #3249.
Security
- Bumped
simple-gitfrom 3.6.0 to 3.15.1. Props @dependabot via #3190.
4.4.0 - 2022-11-29
Note that starting from the ElasticPress 5.0.0 release the Users feature will be moved to the ElasticPress Labs plugin. The Terms and Comments features will remain in ElasticPress but will be available only if enabled via code.
ElasticPress 4.4.0 release highlights:
- New Status Report page and failed queries logs (#3130, #3148, and #3136)
- Instant Results template customization (#2959)
- Facets by Meta available by default. Users should delete the 1-file plugin released with 4.3.0 (#3071)
- New option to exclude posts from search (#3100)
- Renamed some WP-CLI commands and added deprecation notices for the old versions (see table below)
Added
- New Status Report page. Props @felipeelia, @JakePT, @tott, and @brandwaffle via #3130, #3148, and #3154.
- New Query Logger to display admin notices about failed queries and the list in the new Status Report page. Props @felipeelia, @JakePT, and @brandwaffle via #3136 and #3165.
- New option to exclude posts from search. Props @burhandodhy, @felipeelia, and @JakePT via #3100, #3156, and #3161.
- Search Comments block. Replaces the Comments widget in the block editor. Props @JakePT and @felipeelia via #2986.
- [Instant Results] Notice when ElasticPress is network activated warning that Instant Results will not work on all sites without additional steps. Props @JakePT via #3149.
- Extra debugging information in the browser console when syncing fails and more useful error messages with a troubleshooting URL. Props @JakePT via #3133.
- New
elasticpress.InstantResults.ResultJavaScript filter for filtering the component used for Instant Results search results. Props @JakePT via #2959. - New
window.epInstantResults.openModal()method for developers to manually open Instant Results. Props @JakePT via #2987. - Support for
stock_statusfilter on the WooCommerce Admin Product List. Props @felipeelia and @jakgsl via #3036. - Option to toggle the term count in Instant results. Props @MARQAS and @JakePT via #3007.
- New
ep_autosuggest_query_argsfilter, to change WP Query args of the autosuggest query template. Props @felipeelia via #3038. - New
ep_post_filtersfilter and refactor of thePost::format_argsmethod. Props @felipeelia via #3044. - New
get_index_settings()method to retrieve index settings. Props @rebeccahum via #3126. - New
ep_woocommerce_default_supported_post_typesandep_woocommerce_admin_searchable_post_typesfilters. Props @ecaron via #3029. - Add test factories for Post, User and Term. Props @burhandodhy via #3048.
- Unit tests to check access to custom results endpoints. Props @burhandodhy via #3022.
- New unit tests for the user feature. Props @burhandodhy via #3061.
Changed
- Facets by Meta available by default. Props @burhandodhy via #3071.
- If an Elasticsearch index is missing, force a full sync. Props @MARQAS, @felipeelia, and @JakePT via #3011.
- ElasticPress.io clients only need to enter the Subscription ID now. Props @MARQAS and @felipeelia via #2976.
Renderer::order_by_selectedvisibility. Props @burhandodhy via #3009.- After editing a term, only sync posts if the term is associated with fewer posts than the Content Items per Index Cycle number. Props @felipeelia, @cmcandrew, @DenisFlorin, and @burhandodhy via #3106 and #3122.
- The
meta_queryclause when using themeta_keyparameter. Props @felipeelia, @MARQAS, and @Greygooo via #2997. - Facets filters are not applied in the WP Query level anymore. Props @felipeelia and @burhandodhy via #3045 and #3076.
- To be compatible with WordPress 6.1, when passing
'all'as thefieldsparameter ofWP_User_Queryonly user IDs will be returned. Props @felipeelia and @burhandodhy via #3109. update_term_meta_cacheparameter set as false while getting terms for Facets. Props @mae829 via #3060.- Small refactor of Indexables'
parse_orderbyto make it easier to read. Props @felipeelia via #3042. - Search algorithms descriptions. Props @felipeelia via #3051.
- Hide taxonomies from facet block whose
show_uiis set to false. Props @burhandodhy via #2958. - Use
Utils\*_option()when possible. Props @rebeccahum via #3078 and #3081. - Remove unnecessary check from
allow_excerpt_html. Props @burhandodhy via #3093. - Updated Cypress (version 9 to 10). Props @felipeelia via #3066.
- Use factory to create comments for tests. Props @burhandodhy via #3074.
- Improved e2e tests performance. Props @felipeelia via #3085.
- GitHub Action used by PHPCS. Props @felipeelia via #3104.
Deprecated
- The following WP-CLI commands were deprecated via #3028. They will still work but with a warning.
| Old Command | New Command |
|---|---|
| wp elasticpress index | wp elasticpress sync |
| wp elasticpress get-cluster-indexes | wp elasticpress get-cluster-indices |
| wp elasticpress get-indexes | wp elasticpress get-indices |
| wp elasticpress clear-index | wp elasticpress clear-sync |
| wp elasticpress get-indexing-status | wp elasticpress get-ongoing-sync-status |
| wp elasticpress get-last-cli-index | wp elasticpress get-last-cli-sync |
| wp elasticpress stop-indexing | wp elasticpress stop-sync |
Props @MARQAS and @felipeelia.
- The
sitesparameter for WP_Query, WP_Term_Query and WP_Comment_Query was deprecated in favor of the newsite__inandsite__not_in. Props @burhandodhy via #2991.
Removed
- Compatibility code for WP < 4.6 in the Post Search feature. Props @burhandodhy via #3121.
- Legacy hook from unit tests. Props @burhandodhy via #3050.
- Time average box in the Index Health page. Props @felipeelia and @alaa-alshamy via #3115.
- [Protected Content] Removed post types to be indexed by default: ep-synonym, ep-pointer, wp_global_styles, wp_navigation, wp_template, and wp_template_part. Props @felipeelia and @burhandodhy via #3135 and #3155.
Fixed
- Clicking on the Facet Term redirect to Homepage. Props @burhandodhy via #3032.
- Custom results are not highlighted. Props @burhandodhy via #3010.
- Error when passing an array of post types to WP_Comment_Query. Props @felipeelia, @JakePT, and @MARQAS via #3058.
- Deprecated filters for search algorithms do not overwrite values set with the newer filters. Props @felipeelia and @marc-tt via #3037.
- No posts returned when an invalid value was passed to the tax_query parameter. Props @burhandodhy via #3030.
- Incorrect excerpt when
get_the_excerptis called outside the Loop and Excerpt highlighting option is enabled. Props @burhandodhy via #3114. - Facet returns no result for a term having accent characters. Props @burhandodhy and @felipeelia via #3031.
- An issue where some characters in taxonomy terms would appear encoded when displayed in Instant Results. Props @JakePT via #3113.
- An issue that caused Autosuggest filter functions to no longer work. Props @JakePT via #3110.
- An issue that prevented clicking Autosuggest suggestions if they had been customized with additional markup. Props @JakePT via #3110.
- WooCommerce custom product sort order. Props @felipeelia and @MARQAS via #2965.
- Network alias creation failed warning when one of the sites is deactivated. Props @burhandodhy via #3139.
- JS Error on widget screen. Props @burhandodhy via #3143.
- PHP Warning when a post has no comments. Props @felipeelia and @JiveDig via #3127.
put-mapping --network-widethrows error when plugin is not activated on network. Props @burhandodhy via #3041.- Internationalization of strings in JavaScript files. Props @felipeelia via #3079.
- Documentation of the
ep_woocommerce_admin_products_list_search_fieldsfilter. Props @felipeelia via #3124. - Warning if
_sourceis not returned in query hit. Props @pschoffer via #2992. - Undefined variable
$updateon synonyms page. Props @burhandodhy via #3102. - PHP 8 deprecation warning related to
uasort()usage. Props @burhandodhy via #3091. - Cypress intermittent tests failures. Props @burhandodhy and @felipeelia via #3053, #3147, and #3158.
- Fix PHP Unit Tests for PHP 8. Props @burhandodhy via #3073.
Security
- Bumped
loader-utilsfrom 1.4.0 to 1.4.2. Props @dependabot via #3125 and #3137.
4.3.1 - 2022-09-27
This release fixes some bugs and also adds some new filters.
Added
- New
ep_facet_taxonomy_termsfilter to filter the Facet terms. Props @burhandodhy and @felipeelia via #2989. - Added
ep.Autosuggest.itemHTML,ep.Autosuggest.listHTML,ep.Autosuggest.query, andep.Autosuggest.elementJavaScript hooks to Autosuggest and migrated filter functions to hook callbacks for backwards compatibility. Props @JakePT via #2983. - E2E tests for the Comments Feature. Props @burhandodhy via #2955.
- E2E tests for the Instant Results feature. Props @MARQAS and @felipeelia via #2851.
- More E2E tests for the WooCommerce Feature. Props @burhandodhy via #2923.
Changed
- REST API endpoints used for managing custom results are no longer publicly accessible. Props @JakePT and @PypWalters via #3004.
Fixed
- WooCommerce data privacy eraser query deleting all orders if EP is enabled for admin and Ajax requests. Props @sun and @bogdanarizancu via #2975.
- Facets removing WooCommerce sorting. Props @burhandodhy and @felipeelia via #2982.
- Facets triggering the ElasticPress integration in feed pages. Props @felipeelia and @rafaucau via #2980.
- Taxonomy Facet tree issue when child category is selected. Props @burhandodhy via #3015.
- Term search in the admin panel for non-public taxonomies returning nothing. Props @burhandodhy via #2988.
- Clicking a Related Posts link while in the editor no longer follows the link. Props @JakePT via #2998.
- Visual alignment of elements in the Settings page. Props @MARQAS and @felipeelia via #3018.
- Intermittent tests failures. Props @burhandodhy via #2984.
4.3.0 - 2022-08-31
ElasticPress 4.3.0 fixes some bugs and introduces some new and exciting changes.
WooCommerce Product Variations SKUs are now a publicly searchable field. Site administrators wanting to allow users to search for their product variations SKUs can enable it in the Search Fields & Weighting Dashboard, under Products. If a user searches for a variation SKU, the parent product will be displayed in the search results.
The last ElasticPress sync information is now available in WordPress's Site Health. If you want to check information like the date of the last full sync, time spent, number of indexed content, or errors go to Tools -> Site Health, open the Info tab and click on ElasticPress - Last Sync.
Facets received some further improvements in this version. In addition to some refactoring related to WordPress Block Editor, ElasticPress 4.3.0 ships with an experimental version of a Facet By Meta block. With that, users will be able to filter content based on post meta fields. If you want to try it, download and activate this plugin. Do you have an idea of an enhancement? Search in our facets label in GitHub and if it is not there yet, feel free to open a new issue. We would love to hear new ideas!
Added
- Search products by their variations' SKUs. Props @burhandodhy via #2854.
- New block to Facet by Meta fields. Props @felipeelia and @tott via #2954 and #2968.
- Display last sync info in site health screen. Props @oscarssanchez and @felipeelia via #2917 and #2973.
- New
epwr_decay_fieldfilter to set the decay field for date weighting. Props @MARQAS and @HypeAU via #2907. - Autosuggest: filter the autosuggest ElasticSearch query by defining a
window.epAutosuggestQueryFilter()function in JavaScript. Props @johnwatkins0 via #2909. - Autosuggest: filter the HTML of all results by defining a
window.epAutosuggestListItemsHTMLFilter()function in JavaScript. Props @JakePT via #2902. - Autosuggest: filter the container element by defining a
window.epAutosuggestElementFilter()function in JavaScript. Props @JakePT via #2902. - Documentation for Autosuggest JavaScript filters. Props @JakePT and @brandwaffle via #2902.
- Documentation for styling Instant Results. Props @JakePT via #2949.
- Use
wp_cache_flush_group()for autosuggest when available. Props @tillkruss via #2916. - The public search API is automatically deactivated when the Instant Results feature is deactivated. Props @JakePT via #2821.
- Support for transforming instances of the legacy Facet and Related Posts widgets into blocks. Props @JakePT via #2819.
- Use
wp_cache_flush_runtime()when available. Props @tillkruss, @felipeelia, and @tott via #2915. - E2E tests for the Custom Results feature. Props @burhandodhy and @felipeelia via #2871.
- E2E tests for the Terms feature. Props @burhandodhy and @felipeelia via #2931.
Changed
- Improved performance in
get_term_tree(). Props @rebeccahum via #2883. - Migrated Related Posts block definitions to
block.json. Props @JakePT via #2898. - Total comment count made during sync process to be a proper count call. Props @felipeelia and @bsabalaskey via #2903.
- Search algorithms moved to separate classes. Props @felipeelia via #2880.
- The legacy Facet and Related Posts widgets are now hidden when using the block editor. Props @JakePT via #2819.
- Facets are now divided by types and received their own class. Props @felipeelia via #2919.
- PHP compatibility check merged to regular lint. Props @felipeelia via #2945.
- E2e tests to run WP-CLI commands in an existent docker container. Props @felipeelia via #2944.
- Increased E2e tests coverage for WP-CLI commands. Props @burhandodhy and @felipeelia via #2926.
Deprecated
- The following filters were deprecated via #2880. They will still work but add a notice in the error logs.
| Old Filter | New Filter |
|---|---|
| ep_formatted_args_query | ep_post_formatted_args_query |
| ep_match_phrase_boost | ep_post_match_phrase_boost |
| ep_match_boost | ep_post_match_boost |
| ep_fuzziness_arg | ep_post_fuzziness_arg |
| ep_match_fuzziness | ep_post_match_fuzziness |
| ep_match_cross_fields_boost | ep_post_match_cross_fields_boost |
Fixed
- Error returned by the
recreate-network-aliasCLI command when called on single site. Props @burhandodhy via #2906. - Term objects in
format_hits_as_termsto useWP_Terminstead ofstdClassto match WordPress expectations. Props @jonathanstegall via #2913. - Post reindex on meta deletion. Props @pschoffer via #2862.
- Autosaved drafts not showing up in draft post listing when using the Protected Content feature. Props @rebeccahum and @felipeelia via #2861.
- Display fatal error messages in the Sync Dashboard. Props @felipeelia and @orasik via #2927.
- An issue where syncing after skipping setup, instead of deleting and syncing, resulted in an error. Props @JakePT via #2858 and #2939.
- Stuck progress bar when no post is found. Props @felipeelia and @burhandodhy via #2953.
- Infinite loop during sync if the site has just password protected posts and no other content. Props @felipeelia and @burhandodhy via #2953.
- JS error on Custom Results edit page. Props @burhandodhy via #2935.
- Horizontal scroll in ElasticPress Quick Setup Screen. Props @MARQAS and @JakePT via #2937.
- Allows to replace
post_excerptwith highlighted results from within AJAX and other integrated contexts. Props @nickchomey via #2941. - Empty results for taxonomy terms that have non ASCII characters. Props @alaa-alshamy via #2948.
- Format of highlight tags quotation mark. Props @nickchomey via #2942.
- Intermittent error with sticky posts in the tests suite. Props @felipeelia via #2943.
Security
- Bumped
terserfrom 5.12.0 to 5.14.2. Props @dependabot via #2900. - Bumped
@wordpress/envfrom 4.5.0 to 5.0.0. Props @felipeelia via #2925.
4.2.2 - 2022-07-14
This is a bug fix release.
Added
- New
ep_enable_do_weightingfilter and re-factor with new functionapply_weighting. Props @rebeccahum and @felipeelia via #2857. - New
ep_default_analyzer_char_filtersfilter. Props @rebeccahum via #2872. - E2E test to prevent saving feature settings during a sync. Props @burhandodhy via #2863.
- Full compatibility with Composer v2. Props @felipeelia via #2889.
Changed
update_index_settings()now accounts for the index closing action timing out and re-opens index if closed. Props @rebeccahum via #2843.
Fixed
- Wrong post types being displayed on the homepage while having the Facets feature enabled. Props @felipeelia and @oscarssanchez via #2886.
- Wrong notice about unsupported server software. Props @felipeelia via #2892.
Security
- Bumped
momentfrom 2.29.2 to 2.29.4. Props @dependabot via #2890.
4.2.1 - 2022-06-28
This is a bug fix release.
Added
- Server type/software detection and warning. Props @felipeelia and @brandwaffle via #2835.
- Coverage of E2E tests for the activate-feature command. Props @burhandodhy via #2802.
Changed
- Sync button
titleattribute. Props @burhandodhy and @JakePT via #2814. npm run build:zipto usegit archive. Props @felipeelia via #2822.
Fixed
- Fatal error related to WP-CLI timers on long-running syncs. Props @felipeelia and @przestrzal via #2820.
- Uncaught TypeError on the Settings Page. Props @burhandodhy via #2816.
- Meta values that are not dates converted into date format. Props @burhandodhy, @oscarssanchez, @tott, and @felipeelia via #2828.
- An issue where feature settings could be saved during a sync. Props @JakePT via #2823.
- Admin menu bar items are not clickable when instant results popup modal is activated. Props @MARQAS and @JakePT via #2833.
- Facet block wrongly available in the post editor. Props @oscarssanchez via #2831.
- Show Facet widgets on taxonomy archives. Props @burhandodhy and @felipeelia via #2837.
- Meta queries with 'exists' as compare operator and empty meta values handling. Props @burhandodhy via #2817.
- Sync interruption message always mentioning ElasticPress.io. Props @burhandodhy and @JakePT via #2813.
- An issue where the Related Posts block would display the wrong posts in the preview when added inside a Query Loop block. Props @JakePT via #2825.
- E2e tests for the Facets feature. Props @felipeelia via #2840.
- Intermittent error on GitHub Actions using the latest node 16 version. Props @felipeelia via #2839.
4.2.0 - 2022-05-26
ElasticPress 4.2.0 fixes some bugs and introduces some new and exciting changes.
The sync functionality had its JavaScript refactored. Timeouts, memory limits, and general errors are now properly handled and do not make the sync get stuck when performed via the WP-CLI index command. There is also a new get-last-sync WP-CLI command to check the errors and numbers from the last sync.
We've improved the admin search experience for sites using both WooCommerce and Protected Content. Previously, WooCommerce was processing that screen with two different queries, and EP was used only in one of them. Now, it will be only one query, fully handled by ElasticPress. Users wanting to keep the previous behavior can do so by adding add_filter( 'ep_woocommerce_integrate_admin_products_list', '__return_false' ); to their website's codebase.
Facets are now available through a WordPress block. If you are using the Full Site Editing feature, you can now add ElasticPress Facets to your theme with just a few clicks! This block has been introduced with a simplified user interface to enable compatibility with Full Site Editing and will continue to be iterated and improved in future versions of the plugin.
Added
- E2e tests for the Facets feature. Props @felipeelia via #2667.
$post_argsand$post_idto theep_pc_skip_post_content_cleanupfilter. Props @felipeelia and @ecaron via #2728.- New filter
ep_integrate_search_queries. Props @rebeccahum and @felipeelia via #2735. - New
get-last-syncWP-CLI command. Props @felipeelia via #2748. - Facet block (previously only available as a widget.) Props @felipeelia via #2722.
- New
_variations_skusfield to WooCommerce products. Props @felipeelia, @kallehauge, and @lukaspawlik via #2763. - Support for ordering Users by
user_registeredand lowercaseid. Props @felipeelia and @burhandodhy via #2781. - New filter
ep_sync_number_of_errors_stored. Props @felipeelia, @tott and @JakePT via #2789.
Changed
- Facets widgets rendered by a separate class. Props @felipeelia via #2712.
- Deprecated
ElasticPress\Feature\Facets\Widget::get_facet_term_html()in favor ofElasticPress\Feature\Facets\Renderer::get_facet_term_html(). Props @felipeelia via #2712. - Log errors and remove indexing status on failed syncs. Props @felipeelia via #2748.
- Refactored Sync page JavaScript. Props @JakePT via #2738.
- Updated admin scripts to use WordPress's version of React. Props @JakePT via #2756.
- WooCommerce products list in the Dashboard now properly leverages ElasticPress. Props @felipeelia via #2757.
- Removed Instant Results' dependency on
@wordpress/componentsand@wordpress/date. Props @JakePT and @felipeelia via #2774. - (Protected Content) Password-protected posts are only hidden on searches. Props @felipeelia, @JakePT, and @burhandodhy via #2780.
- The plugin is now available via Composer without any additional steps required. Props @felipeelia, @jeffpaul, and @johnbillion via #2799.
Fixed
- WP-CLI parameters documentation. Props @felipeelia via #2711.
- Full indices removal after e2e tests. Props @felipeelia and @dustinrue via #2710.
- Usage of the
$returnparameter inFeature\RelatedPosts::find_related(). Props @felipeelia and @altendorfme via #2719. - Link to API Functions under the Related Posts feature -> Learn more. Props @felipeelia and @burhandodhy via #2729.
- Sync of WooCommerce Orders fields when WooCommerce and Protected Content features are enabled. Props @felipeelia and @ecaron via #2728.
- An issue where selecting no features during install would just cause the install page to reload without any feedback. Props @JakePT and @tlovett1 via #2734.
- An issue where deselecting a feature during install would not stop that feature from being activated. Props @JakePT via #2734.
- Add the missing text domain for the Related Posts block. Props @burhandodhy via #2751.
- Console error when hitting enter on search inputs with autosuggest. Props @burhandodhy, @felipeelia, and @MarijnvSprundel via #2754.
- An issue where attribute selectors could not be used for the Autosuggest Selector. Props @JakePT and @oscarssanchez via #2753.
- "Time elapsed" and "Total time elapsed" in WP-CLI index command. Props @felipeelia and @archon810 via #2762.
- Sync process with skipped objects. Props @juliecampbell and @felipeelia via #2761.
- Typo in the sync page. Props @JakePT and @davidegreenwald via #2767.
- WP-CLI index command without the
--network-wideonly syncs the main site. Props @felipeelia and @colegeissinger via #2771. - WP-CLI commands
get-mapping,get-indexes,status, andstatsonly uses all sites' indices name when network activated. Props @felipeelia and @colegeissinger via #2771. - A bug where URL search parameters could be cleared when using Instant Results. Props @JakePT and @yashumitsu via #2777.
- Undefined index notice in Facets renderer. Props @felipeelia and @burhandodhy via #2779.
- Prevent an unnecessary call when the ES server is not set yet. Props @felipeelia and @burhandodhy via #2782.
- An incompatibility with the way WP 6.0 handles WP_User_Query using fields. Props @felipeelia via #2800.
Security
- Bumped
momentfrom 2.29.1 to 2.29.2. Props @dependabot via #2709. - Bumped
@wordpress/envfrom 4.4.0 to 4.5.0. Props @felipeelia via #2721.
4.1.0 - 2022-04-05
Added
- Utility command to create zip packages:
npm run build:zip. Props @felipeelia via #2669. - E2e tests for the Synonyms feature. Props @felipeelia via #2655.
generate_mapping()to post and comment indexables. Props @rebeccahum via #2637.get_related_query()to theRelatedPostsclass. Props @ayebare via #1653.- New
--prettyflag to the WP-CLI commands that output a JSON. Props @felipeelia and @oscarssanchez via #2653. - Support for an array of aggregations in the
aggsparameter ofWP_Query. Props @felipeelia and @oscarssanchez via #2682.
Changed
- Refactored remaining admin scripts to remove jQuery as a dependency. Props @JakePT via #2664.
- Generate Instant Results' search template as an anonymous user by default. Props @JakePT via #2672.
Fixed
- PHP warning Trying to access array offset on value of type int in
get_index_names(). Props @sun via #2580. - Searches by WooCommerce Order ID. Props @felipeelia via #2666.
- Display and error message if syncing failed due to invalid JSON response from the server. Props @dsawardekar via #2677.
- Better compatibility with PHP 8.1 by replacing the deprecated
FILTER_SANITIZE_STRING. Props @sjinks via #2529. get_term_tree()no longer infinite loops when parent ID is non-existent. Props @rebeccahum via #2687.- User search results include users who do not exist in the current site. Props @tfrommen and @felipeelia via #2670.
- Pagination while syncing Indexables other than Posts. Props @felipeelia and @derringer via #2665.
- Handle the output of an array of messages in sync processes. Props @felipeelia via #2688.
- Truthy values for the
'enabled'field's attribute while using theep_weighting_configuration_for_searchfilter. Props @felipeelia and @moritzlang via #2673. - "Learn More" link on the Sync Page. Props @felipeelia, @JakePT, and @brandwaffle via #2699.
- Icons alignment in the WP Dashboard. Props @jakemgold, @felipeelia, @brandwaffle, and @tlovett1 via #2701.
Security
- Bumped
node-forgefrom 1.2.1 to 1.3.0. Props @dependabot via #2678. - Bumped
@wordpress/envfrom 4.2.2 to 4.4.0, andminimistfrom 1.2.5 to 1.2.6. Props @felipeelia via #2680.
4.0.1 - 2022-03-16
This is a security release affecting users running ElasticPress 4.0 with both the WooCommerce and Protected Content Features activated. Please update to the latest version of ElasticPress if the WooCommerce and Protected Content features are activated and you're using ElasticPress 4.0.
Security
- Orders belonging to all users loaded in the My Account WooCommerce page. Props @tomburtless and @oscarssanchez via #2658.
4.0.0 - 2022-03-08
ElasticPress 4.0 contains some important changes. Make sure to read these highlights before upgrading:
- This version requires a full reindex.
- It introduces a new search algorithm that may change the search results displayed on your site.
- A new feature called "Instant Results" is available. As it requires a full reindex, if you plan to use it, we recommend you enable it first and reindex only once.
- Users upgrading from Beta 1 need to re-save the Instant Results feature settings.
- New minimum versions are:
Min Max Elasticsearch 5.2 7.10 WordPress 5.6+ latest PHP 7.0+ latest
Note that ElasticPress 4.0.0 release removes built assets from the develop branch, replaced master with trunk, added a ZIP with the plugin and its built assets in the GitHub Releases page, and included a build script should you want to build assets from a branch. As such, please plan to update any references you have from master to trunk or to GitHub Releases depending on whether you require built assets or not. (See changes in #2622.)
The Facets widget is not currently available within Full Site Editing mode.
This changelog contains all changes made since 3.6.6 (including Beta 1.)
Added
- Instant Results. Props @JakePT, @felipeelia, and Pratheep Chandrasekhar via #2481 and #2500.
- New default search algorithm prioritizing exact matches, matches in the same field, then matches across different fields. Props @brandwaffle and @felipeelia via #2498.
- Filter
ep_load_search_weightingto disable search weighting engine. Props @rebeccahum and @felipeelia via #2522. - Post types to facet labels when needed to to differentiate facets with duplicate labels. Props @JakePT and @felipeelia via #2541.
- Support for search form post type fields to Instant Results. Props @JakePT via #2510.
- Alternative way to count total posts on larger DBs during indexing. Props @rebeccahum and @felipeelia via #2571.
- Do not count posts in
get_total_objects_for_query_from_db()if any object limit IDs are passed in. Props @rebeccahum via #2586. - Show WP-CLI progress on the new Sync page. Props @Rahmon and @felipeelia via #2564.
- Display results counts for facet options in Instant Results. Props @JakePT, @felipeelia via #2563.
- ARIA attributes to Facet widget links to improve accessibility. Props @JakePT via #2607.
- Support for shareable URLs to Instant Results. Props @JakePT and @felipeelia via #2604.
- Dynamic bulk requests limits. Instead of sending only one request per document batch, send several adjusting their sizes based on the Elasticsearch response. Props @felipeelia, @dinhtungdu, @brandwaffle, and @Rahmon via #2585.
- New step in the installation process: users can now select features before the initial sync. Props @felipeelia, @JakePT, Jonathan Netek, and @brandwaffle via #2572.
- Complement to the resync message related to Instant Results. Props @felipeelia and @brandwaffle via #2628.
Changed
- Sync page and code responsible for indexing. Props @helen, @felipeelia, @Rahmon, @mckdemps, @tott, and Pratheep Chandrasekhar via #1835, #2448, and #2501.
- When Protected Content is enabled, ElasticPress will have a more similar behavior to WordPress core but the post content and meta will not be indexed (the new
ep_pc_skip_post_content_cleanupcan be used to skip that removal.) Props @rebeccahum, @oscarssanchez, @felipeelia, @dinhtungdu, @cristianuibar, and @allan23, @mallorydxw via #2408 and #2646. - Bump minimum required versions of Elasticsearch from 5.0 to 5.2 and WordPress from 3.7.1 to 5.6. Props @felipeelia via #2475.
- Bump minimum required PHP version from 5.6 to 7.0. Props @felipeelia, @ActuallyConnor, and @brandwaffle via #2485 and #2626.
- Internationalize start and end datetimes of sync. Props @Rahmon and @felipeelia via #2485 and #2548.
ep_integrateargument in WP_Query to accept0and'false'as valid negative values. Props @oscarssanchez, @Rahmon, and @felipeelia via #2547 and #2573.- To comply with modern WooCommerce behavior, ElasticPress no longer changes the
orderbyparameter. Props @felipeelia and @beazuadmin via #2577. - Query parameters for facets to start with
ep_filter, changeable via the newep_facet_filter_namefilter. Props @oscarssanchez, @felipeelia, and @slaxxarn via #2560. - Output of sync processes using offset to display the number of documents skipped. Props @oscarssanchez, @felipeelia, @cbratschi, and @brandwaffle via #2591.
- Switched from WP Acceptance to Cypress for end to end tests. Props @felipeelia, @Sidsector9, and @dustinrue via #2446 and #2615.
- CSS vars usage in the new Sync page. Props @Rahmon, @JakePT, @mehidi258, and @felipeelia via #2561.
- Features screen: improved accessibility and jQuery dependency removal. Props @JakePT via #2503.
- Taxonomy parameters now reflect the WordPress parsed
tax_queryvalue. Props @felipeelia and @sathyapulse via #2419. - Features order in the Features screen. Props @felipeelia and @brandwaffle via #2618.
- WooCommerce's
searchparameter also to be used by ElasticPress queries. Props @felipeelia, @dianfishekqi, and @oscarssanchez via #2620. - Posts are now reindexed when a new term is associated with them and also when an associated term is updated or deleted. Props @nickdaugherty, @felipeelia, @brandon-m-skinner, @mckdemps, @rebeccahum via #2603.
- Updated
jsdocfrom 3.6.9 to 3.6.10 and fixed the documentation of theep_thumbnail_image_sizefilter. Props @felipeelia via #2639. - Instant Results: type and initial value of search template and move save to the end of sync. Props @felipeelia and @oscarssanchez via #2645.
Removed
- Built assets (minified JavaScript and CSS files) from the repository. Props @felipeelia and @jeffpaul via #2486.
- Duplicate
case 'description':fromElasticPress\Indexable\Term\Term::parse_orderby. Props @sjinks via #2533.
Fixed
- CSS issues on Features page. Props @JakePT via #2495.
- AJAX URL on subsites. Props @Rahmon via #2501.
- PHP Notice while monitoring a WP-CLI sync in the dashboard. Props @felipeelia and @ParhamG via #2544.
- Sync page when WooCommerce's "hide out of stock items" and Instant Results are both enabled. Props @felipeelia via #2566.
- PHPUnit Tests and WordPress 5.9 compatibility. Props @felipeelia via #2569.
- WooCommerce Orders Search when searching for an order ID. Props @felipeelia via #2554.
- Code standards. Props @felipeelia via #2574 and #2578.
- Posts insertion and deletion in the same thread. Props @felipeelia and @tcrsavage via #2575.
- Invalid values in
tax_queryterms resulting in a query failure. Props @rinatkhaziev and @felipeelia via #2576 and #2583. - New Sync Page to display a message when an indexing is stopped by the WP-CLI
stop-indexingcommand. Props @Rahmon, @felipeelia, and @brandwaffle via #2549. - Nested queries are no longer deleted. Props @oscarssanchez and @christianc1 via #2567.
- Type hints for
epwr_decayandepwr_weighthooks. Props @edwinsiebel via #2537. - Errors count in the new Sync page. Props @felipeelia via #2590.
- Multisite could index posts from a disabled indexing site. Props @oscarssanchez, @chrisvanpatten, @felipeelia via #2621.
- New sync code and the
upper-limit-object-idandlower-limit-object-idparameters in WP-CLI command. Props @felipeelia via #2634. - Sync link on index health page. Props @JakePT via #2644.
- Logic checking if it is a full sync and if search should go or not through ElasticPress. Props @felipeelia and @JakePT via #2642.
Security
- Use most recent external GitHub Actions versions. Props @felipeelia and @qazaqstan2025 via #2535.
- Updated
10up-toolkitfrom 1.0.13 to 3.0.1,jsdocfrom 3.6.7 to 3.6.9,terser-webpack-pluginfrom 5.2.4 to 5.3.0,@wordpress/envfrom 4.1.1 to 4.2.2, andpromise-polyfillfrom 8.2.0 to 8.2.1. Props @felipeelia via #2559, #2611, and #2631. - Bumped
follow-redirectsfrom 1.14.7 to 1.14.9. Props @dependabot via #2609.
3.6.6 - 2021-12-20
ElasticPress 4.0 Beta 1 is now available for non-production testing.
Note that the upcoming ElasticPress 4.0.0 release will remove built assets from the develop branch, will replace master with trunk, will add a zip with the plugin and its built assets in the GitHub release page, and will include a build script should you want to build assets from a branch. As such, please plan to update any references you have from master to trunk or to GitHub releases depending on whether you require built assets or not.
Supported versions:
| Current (3.6.6) | 4.0.0 | |
|---|---|---|
| Elasticsearch | 5.0 - 7.9 | 5.2 - 7.10 |
| WordPress | 3.7.1+ | 5.6+ |
| PHP | 5.6+ | 7.0+ |
Added
- Ensure array query parameters do not contain empty items. Props @roborourke via #2462.
- WP-CLI
requestsubcommand. Props @joehoyle and @felipeelia via #2484 and #2523.
Changed
- Enabling features that require a reindex will now ask for confirmation. Props @JakePT, @felipeelia, @Rahmon, @columbian-chris, and @brandwaffle via #2491, #2524, and #2536.
Fixed
- Broken search pagination on hierarchical post types. Props @tfrommen via #2511.
- Synonyms erased when syncing via WP-CLI. Props @felipeelia and @oscarssanchez via #2517.
- Deleting a metadata without passing an object id now updates all associated posts. Props @oscarssanchez, @felipeelia, and @Shrimpstronaut via #2483 and #2525.
- Not indexable sites added to indexes list in WP-CLI commands. Props @oscarssanchez and @felipeelia via #2531.
4.0.0-beta.1 - 2021-12-08
This version requires a full reindex.
Please note that 4.0 introduces a new search algorithm that may change the order of results displayed on your site. Additionally, this algorithm may be changed again during the beta process before a final 4.0 release algorithm is determined. Your feedback on this new algorithm is welcome via the Github issues list.
New minimum versions are:
| Min | Max | |
|---|---|---|
| Elasticsearch | 5.2 | 7.10 |
| WordPress | 5.6+ | latest |
| PHP | 7.0+ | latest |
Note that the official ElasticPress 4.0.0 release will replace master with trunk. Built assets were already removed from the branch and added to the zip file attached to the GitHub release page. As such, please plan to update any references you have from master to trunk or to GitHub releases depending on whether you require built assets or not.
Added
- Instant Results. Props @JakePT, @felipeelia, and Pratheep Chandrasekhar via #2481 and #2500.
- New default search algorithm prioritizing exact matches, matches in the same field, then matches across different fields. Props @brandwaffle and @felipeelia via #2498.
- WP-CLI
requestsubcommand. Props @joehoyle and @felipeelia via #2484.
Changed
- Sync Page and code responsible for indexing. Props @helen, @felipeelia, @Rahmon, @mckdemps, @tott, and Pratheep Chandrasekhar via #1835, #2448, and #2501.
- When Protected Content is enabled, WordPress behavior for password protected content is correctly reproduced with ElasticPress enabled. Props @rebeccahum, @oscarssanchez, @felipeelia, @dinhtungdu, and @cristianuibar via #2408.
- Enabling features that require a reindex will now ask for confirmation. Props @JakePT, @columbian-chris, and @brandwaffle via #2491.
- Bump minimum required versions of Elasticsearch from 5.0 to 5.2 and WordPress from 3.7.1 to 5.6. Props @felipeelia via #2475.
- Bump minimum required PHP version from 5.6 to 7.0. Props @felipeelia, @ActuallyConnor, and @brandwaffle via #2485.
Removed
- Built assets (minified JavaScript and CSS files) from the repository. Props @felipeelia and @jeffpaul via #2486.
Fixed
- Deleting a metadata without passing an object id now updates all associated posts. Props @oscarssanchez, @felipeelia, and @Shrimpstronaut via #2483.
- CSS issues on Features page. Props @JakePT via #2495.
3.6.5 - 2021-11-30
Note that the upcoming ElasticPress 4.0.0 release will remove built assets from the develop branch, will replace master with trunk, will add a zip with the plugin and its built assets in the GitHub release page, and will include a build script should you want to build assets from a branch. As such, please plan to update any references you have from master to trunk or to GitHub releases depending on whether you require built assets or not.
Supported versions:
| Current (3.6.5) | 4.0.0 | |
|---|---|---|
| Elasticsearch | 5.0 - 7.9 | 5.2 - 7.10 |
| WordPress | 3.7.1+ | 5.6+ |
| PHP | 5.6+ | 7.0+ |
Added
- Docs: Link to the support page in README.md. Props @brandwaffle via #2436.
- New
ep_weighting_default_enabled_taxonomiesfilter. Props @felipeelia and @tott via #2474. $blog_idand$indexable_slugparameters to theep_keep_indexfilter. Props @felipeelia and @brandwaffle via #2478.
Changed
- Add
$typeparameter toep_do_intercept_requestfilter. Props @rebeccahum and @felipeelia via #2443. - Cache the detected Posts mapping version, avoiding
get_mappingcalls in all admin requests. Props @felipeelia via #2445. - Docs: Required ES and WP versions planned for ElasticPress 4.0.0. Props @felipeelia via #2442.
- The
admin.min.jsfile was split innotice.min.jsandweighting.min.js, being loaded accordingly. Props @felipeelia and @barryceelen via #2476.
Fixed
- Force fetching
ep_wpcli_sync_interruptedtransient from remote to allow for more reliable remote interruption. Props @rinatkhaziev and @rebeccahum via #2433. - Duplicate orderby statement in Users query. Props @brettshumaker, @pschoffer, and @rebeccahum via #2435.
- When using offset and default maximum result window value for size, subtract offset from size. Props @rebeccahum via #2441.
- Order for Custom Search Results in autosuggest. Props @felipeelia and @johnwatkins0 via #2447.
- WP-CLI stats and status to output all indices related to ElasticPress. Props @felipeelia via #2479.
- Tests: Ensure that Posts related queries use ElasticPress. Props @Rahmon via #2401.
- Tests: PHPUnit and yoast/phpunit-polyfills. Props @felipeelia via #2457.
Security
- Bumped
path-parsefrom 1.0.6 to 1.0.7. Props @dependabot via #2458. - Bumped
10up-toolkitfrom 1.0.12 to 1.0.13. Props @felipeelia via #2467.
3.6.4 - 2021-10-26
Note that the upcoming ElasticPress 4.0.0 release will remove built assets from the develop branch, will replace master with trunk, will build a stable release version including built assets into a will add a zip with the plugin and its built assets in the GitHub release page, and will include a build script should you want to build assets from a branch. As such, please plan to update any references you have from stable branch,master to either stable ortrunk or to GitHub releases depending on whether you require built assets or not.
Supported versions:
| Current (3.6.4) | 4.0.0 | |
|---|---|---|
| Elasticsearch | 5.0 - 7.9 | 5.2 - 7.10 |
| WordPress | 3.7.1+ | 5.6+ |
| PHP | 5.6+ | 7.0+ |
Added
- WP-CLI: New
get-mappingcommand. Props @tfrommen, @felipeelia, and @Rahmon via #2414. - New filters:
ep_query_request_argsandep_pre_request_args. Props @felipeelia via #2416. - Support for Autosuggest to dynamically inserted search inputs. Props @JakePT, @rdimascio, @brandwaffle, and @felipeelia via #2404.
Changed
- Automatically generated WP-CLI docs. Props @felipeelia via #2370.
- Verification of active features requirement. Props @Rahmon, @felipeelia, and @WPprodigy via #2410.
ewp_word_delimiterbase filter: changed fromword_delimitertoword_delimiter_graph. Props @pschoffer and @yolih via #2409.- Terms search query in admin will not be fuzzy. Props @rebeccahum via #2417.
Fixed
- Elapsed time beyond 1000 seconds in WP-CLI index command. Props @felipeelia and @dustinrue via #2380.
- Layout of Index Health totals on small displays. Props @JakePT and @oscarssanchez via #2403.
- Deprecated URL for multiple documents get from ElasticSearch. Props @pschoffer via #2397.
- Add new lines and edit terms in the Advanced Synonym Editor. Props @JakePT and @johnwatkins0 via #2411.
- Terms: Avoid falling back to MySQL when results are empty. Props @felipeelia via #2420.
- Terms: Usage of several parameters for searching and ordering. Props @felipeelia and @Rahmon via #2420 and #2421.
- Attachment indexing on Elasticsearch 7. Props @Rahmon via #2425.
- Tests: Ensure that Documents related queries use ElasticPress. Props @Rahmon via #2388.
- Tests: Ensure that WooCommerce related queries use ElasticPress. Props @Rahmon and @felipeelia via #2389.
- Tests: Ensure that Comments related queries use ElasticPress. Props @Rahmon and @felipeelia via #2390.
- Tests: Ensure that Multisite related queries use ElasticPress. Props @Rahmon and @felipeelia via #2400.
- Tests: Ensure that Terms related queries use ElasticPress. Props @felipeelia via #2420.
3.6.3 - 2021-09-29
Note that the upcoming ElasticPress 4.0.0 release will remove built assets from the develop branch, will replace master with trunk, will build a stable release version including built assets into a stable branch, and will include a build script should you want to build assets from a branch. As such, please plan to update any references you have from master to either stable or trunk depending on whether you require built assets or not.
Official PHP support is currently 5.6+. Minimum PHP version for ElasticPress 4.0.0 will be 7.0+.
Added
- New
ep_facet_widget_term_htmlandep_facet_widget_term_labelfilters to the Facet widget for filtering the HTML and label of individual facet terms. Props @JakePT, @Rahmon, and @felipeelia via #2363. - New
ep_set_sortfilter for changing thesortclause of the ES query iforderbyis not set in WP_Query. Props @rebeccahum and @felipeelia via #2343 and #2364. - WP-CLI documentation for some commands and parameters. Props @felipeelia via #2369.
Changed
- In addition to post titles, now autosuggest also partially matches taxonomy terms. Props @felipeelia and @Rahmon via #2347.
- Date parsing change to avoid
E_WARNINGs. Props @pschoffer via #2340.
Fixed
- Comments created by anonymous users (but approved by default) are now indexed. Props @tomjn and @Rahmon via #2357.
- Deleted terms are now properly removed from the Elasticsearch index. Props @felipeelia via #2366.
- Children of deleted terms are now properly removed from the Elasticsearch index. Props @pschoffer via #2349.
- Post tag duplicated in the Elasticsearch query. Props @oscarssanchez, @Rahmon, and @felipeelia via #2341.
- Infinite loading state of ElasticPress Related Posts block in the Widgets Edit Screen. Props @felipeelia via #2353.
- Return of
Search::integrate_search_queries()whenis_integrated_request. Props @adiloztaser via #2355. - Mapping determination based on existing info. Props @felipeelia via #2345.
WP_Term_Queryandparent = 0. Props @felipeelia and @juansanchezfernandes via #2344.- WP Acceptance Tests. Props @felipeelia via #2352.
- Typos in the output of some WP-CLI Commands. Props @rebeccahum via #2336.
Security
- Bumped
10up-toolkitfrom 1.0.11 to 1.0.12,terser-webpack-pluginfrom 5.1.4 to 5.2.4,@wordpress/api-fetchfrom 3.21.5 to 3.23.1, and@wordpress/i18nfrom 3.18.0 to 3.20.0. Props @felipeelia via #2372.
3.6.2 - 2021-08-26
Note that the upcoming ElasticPress 4.0.0 release will remove built assets from the develop branch, will replace master with trunk, will build a stable release version including built assets into a stable branch, and will include a build script should you want to build assets from a branch. As such, please plan to update any references you have from master to either stable or trunk depending on whether you require built assets or not.
This version bumps official PHP support from 5.3+ to 5.6+. Minimum PHP version for ElasticPress 4.0.0 will be 7.0+.
Added
- GitHub Action to test compatibility with different PHP versions. Props @felipeelia via #2303.
- Validate mapping currently in index against expected version. Props @tott, @tlovett1, @asharirfan, @oscarssanchez, and @felipeelia via #1472.
ep_default_analyzer_filtersfilter to adjust default analyzer filters. Props @pschoffer and @felipeelia via #2282.titleandaria-labelsattributes to each icon hyperlink in the header toolbar. Props @claytoncollie and @felipeelia via #2304.Utils\is_integrated_request()function to centralize checks for admin, AJAX, and REST API requests. Props @JakePT, @felipeelia, @brandwaffle, @moritzlang, and @lkraav via #2267.
Changed
- Use
10up-toolkitto build assets. Props @Rahmon, @felipeelia, and @nicholasio via #2279. - Official PHP supported version bumped to 5.6. Props @felipeelia via #2320.
- Lint React rules using
10up/eslint-config/react. Props @Rahmon via #2306. - For ES 7.0+ mappings, change
edgeNGramtoedge_ngram. Props @pschoffer and @rinatkhaziev via #2315.
Removed
- Remove duplicate category_name, cat and tag_id from ES query when tax_query set. Props @rebeccahum and @oscarssanchez via #2241.
- Remove unused
pathfromdynamic_templates. Props @pschoffer via #2315.
Fixed
- Remove data from Elasticsearch on a multisite network when a site is archived, deleted or marked as spam. Props @dustinrue and @felipeelia via #2284.
statsandstatuscommands in a multisite scenario. Props @Rahmon, @felipeelia, and @dustinrue via #2290.- Multiple words synonyms. Props @scooterlord, @jonasstrandqvist, and @felipeelia via #2287.
- Category slug used when doing cat Tax Query with ID. Props @oscarssanchez and @karols0 via #2322.
- Restore current blog when the_post triggers outside the loop in multisite environment and the whole network is searched if the first result is from another blog. Props @gonzomir and @felipeelia via #2283.
- Prevents a post from being attempted to delete twice. Props @pauarge via #2314.
- Indexing button on Health screen. Props @Rahmon and @oscarssanchez via #2312.
- WP Acceptance tests and Page Crashed errors. Props @felipeelia and @jeffpaul via #2281 and #2313.
- Facets: Children of selected terms ordered by count. Props @oscarssanchez, @Rahmon, and @felipeelia via #2288.
Security
- Bumps
path-parsefrom 1.0.6 to 1.0.7. Props @dependabot via #2302.
3.6.1 - 2021-07-15
Note that the upcoming ElasticPress 4.0.0 release will remove built assets from the develop branch, will replace master with trunk, will build a stable release version including built assets into a stable branch, and will include a build script should you want to build assets from a branch. As such, please plan to update any references you have from master to either stable or trunk depending on whether you require built assets or not.
This version requires a full reindex. The new facet field introduced in 3.6.0 requires a change in the mapping, otherwise, all content sync related to posts will silently fail. If you've upgraded to 3.6.0 and didn't resync your content yet (via Dashboard or with WP-CLI wp elasticpress index --setup) make sure to do so.
Added
- Filter
ep_remote_request_add_ep_user_agent. Passingtrueto that, the ElasticPress version will be added to the User-Agent header in the request. Props @felipeelia via #2264 - Flagged
3.6.0as version that needs a full reindex. Props @adiloztaser and @felipeelia via #2264
Changed
- Notice when a sync is needed is now an error. Props @felipeelia and @brandwaffle via #2264
Fixed
- Encode the Search Term header before sending it to ElasticPress.io. Props @felipeelia via #2265
3.6.0 - 2021-07-07
Note that the upcoming ElasticPress 4.0.0 release will remove built assets from the develop branch, will replace master with trunk, will build a stable release version including built assets into a stable branch, and will include a build script should you want to build assets from a branch. As such, please plan to update any references you have from master to either stable or trunk depending on whether you require built assets or not.
This version requires a full reindex.
Breaking Changes
- Autosuggest will now respect the
[name="post_type"]input in the same form. Before it would bring all post types. Props @mustafauysal and @JakePT via #1689 - Facets Widget presentation, replacing the
<input type="checkbox">elements in option links with a custom.ep-checkbox presentationaldiv. Props @MediaMaquina, @amesplant, @JakePT, and @oscarssanchez via #1886 - Confirmation for destructive WP-CLI commands. Props @nickdaugherty and @Rahmon via #2120
Added
- Comments Indexable. Props @dkotter, @dinhtungdu, @Rahmon, and @felipeelia via #1531
- "ElasticPress - Comments", a search form for comments. Props @Rahmon and @felipeelia via #2238
- Facets: new
ep_facet_allowed_query_argsfilter. Props @mustafauysal, @JakePT,@Rahmon, and @felipeelia via #1689 - Facets: new
ep_facet_use_fieldfilter. Props @moraleida via #2071 - GitHub Action to auto-close non-responsive reporter feedback issues after 3 days. Props @jeffpaul via #2199
- Autosuggest: new
ep_autosuggest_default_selectorsfilter. Props @JakePT and @johnbillion via #2181 - WP-CLI: Index by ID ranges with
--upper-limit-object-idand--lower-limit-object-id. Props @WPprodigy, @Rahmon, and @felipeelia via #2171 Elasticsearch::get_documents()andIndexable::multi_get(). Props @nickdaugherty, @felipeelia, and @Rahmon via #2210- Custom sorting to features on the Features page. Props @Rahmon via #1987
- Terms: add a new
facetfield to hold the entire term object in json format. Props @moraleida via #2071 - Elasticsearch connection check to Site Health page. Props @spacedmonkey and @Rahmon via #2084
- Support for NOT LIKE operator for meta_query. Props @Thalvik) and @Rahmon via #2157
- Support for
category__not_inandtag__not_in. Props @oscarssanchez and @felipeelia via #2174 - Support for
post__name_in. Props @jayhill90 and @oscarssanchez via #2194 $indexable_slugproperty toElasticPress\Indexable\Post\SyncManager. Props @edwinsiebel via #2196- Permission check bypass for indexing / deleting for cron and WP CLI. Props @nickdaugherty and @felipeelia via #2172
- Check if term exists before a capabilities check is done. Props @msawicki via #2230
- New
ep_show_indexing_option_on_multisitefilter. Props @johnbillion and @Rahmon via #2156 - Documentation updates related to upcoming changes in 4.0.0. Props @jeffpaul via #2248
- Documentation about how to search using rendered content (shortcodes and reusable blocks). Props @johnbillion and @felipeelia via #2127
- Autosuggest: filter results HTML by defining a
window.epAutosuggestItemHTMLFilter()function in JavaScript. Props @JakePT via #2146
Changed
- Autosuggest: JavaScript is not loaded anymore when ElasticPress is indexing. Props @fagiani and @felipeelia via #2163
Indexable\Post\Post::prepare_date_terms()to only calldate_i18n()once. Props @WPprodigy and @Rahmon via #2214
Removed
- Assets source mappings. Props @Rahmon and @MadalinWR via #2162
- References to
posts_by_queryproperty andspl_object_hashcalls. Props @danielbachhuber and @Rahmon via #2158
Fixed
- GitHub issue templates. Props @jeffpaul via #2145
- Facets: error in filters where terms wouldn't match if the user types a space. Props @felipeelia via #2218
- Facets: pagination parameters in links are now removed when clicking on filters. Props @shmaltz, @oscarssanchez, and @Rahmon via #2229
- Output of WP-CLI index errors. Props @notjustcode-sp and @felipeelia via #2243
index_nameis transformed in lowercase before the index creation in Elasticsearch. Props @teoteo and @felipeelia via #2173- Validate that a meta_value is a recognizable date value before storing. Props @jschultze, @moraleida and @Rahmon via #1703
- Array with a MIME type without the subtype in
post_mime_typeargument. Props @ethanclevenger91 and @Rahmon via #2222 - Sort for WP_User_Query. Props @Rahmon via #2226
- WP Acceptance Tests. Props @felipeelia via #2184
- Styling issue of Autosuggest and search block (WP 5.8). Props @dinhtungdu via #2219
Undefined variable: closednotice inElasticsearch::update_index_settings(). Props @nickdaugherty and @pschoffer via #2159- Documentation for WP-CLI
*-featurecommands. Props @felipeelia via #2164 - Custom Results: a
current_user_can()call now receives the post ID instead of the whole object. Props @Sysix via #2255 - Autosuggest: adjust debounce to avoid sending unnecessary requests to the server. Props @Rahmon via #2257
Security
- Updated browserslist and jsdoc versions. Props @felipeelia via #2246
- Updated lodash, hosted-git-info, ssri, rmccue/requests, and y18n versions. Props @dependabot via #2203, #2204, #2179, #2188, and #2153
3.5.6 - 2021-03-18
This release fixes some bugs and also adds some new actions and filters.
Security Fix:
- Updated JS dependencies. Props @hats00n and @felipeelia
Bug Fixes:
- Fixed document indexing when running index command with nobulk option. Props @Rahmon
- Added an extra check in the iteration over the aggregations. Props @felipeelia
- Fixed no mapping found for [name.sortable] for Elasticsearch version 5. Props @Rahmon
- Fixed uninstall process to remove all options and transients. Props @Rahmon
Enhancements:
- Added missing inline JS documentation. Props @JakePT
- Added the filter
ep_autosuggest_http_headers. Props @Rahmon - Added terms indexes to the status and stats WP-CLI commands. Props @felipeelia
- The Protected Content feature isn't auto-activated when using ElasticPress.io anymore. Props @felipeelia
- Added the new filter
ep_highlight_should_add_clauseto let developers decide where the highlight clause should be added to the ES query. Props @felipeelia - Added the new filter
epwr_weightand changed the default way scores are applied based on post date. Props @Rahmon
3.5.5 - 2021-02-25
This release fixes some bugs and also adds some new actions and filters.
Bug Fixes:
- Fix a problem in autosuggest when highlighting is not active. Props @felipeelia and @Rahmon
- Fix Facet Term Search for more than one Widget. Props @goaround
- Fix a Warning that was triggered while using PHP 8. Props @Rahmon
- Fix a wrong phrase in the Indexables documentation. Props @jpowersdev
Enhancements:
- Add an
is-loadingclass to the search form while autosuggestions are loading. Props @JakePT - Add the new
set-algorithm-versionandget-algorithm-versionWP-CLI commands. Props @felipeelia - Add a new
ep_query_weighting_fieldsfilter. Props @felipeelia and @tott - Add two parameters to the
ep_formatted_args_queryfilter. Props @felipeelia and @tott - Add the new
set-algorithm-versionandget-algorithm-versionWP-CLI commands. Props @felipeelia - Create a new section in documentation called
Theme Integration. Props @JakePT - Improvements to contributing documentation and tests. Props @jeffpaul and @felipeelia
- Add the following new actions:
ep_wp_cli_after_index,ep_after_dashboard_index,ep_cli_before_set_search_algorithm_version,ep_cli_after_set_search_algorithm_version,ep_cli_before_clear_index,ep_after_update_feature, andep_cli_after_clear_index. Props @felipeelia and @Rahmon
3.5.4 - 2021-02-11
This is primarily a security and bug fix release. PLEASE NOTE that versions 3.5.2 and 3.5.3 contain a vulnerability that allows a user to bypass the nonce check associated with re-sending the unaltered default search query to ElasticPress.io that is used for providing Autosuggest queries. If you are running version 3.5.2. or 3.5.3 please upgrade to 3.5.4 immediately.
Security Fix:
- Fixed a nonce check associated with updating the default Autosuggest search query in ElasticPress.io. Props @felipeelia
Bug Fixes:
- Fix broken click on highlighted element in Autosuggest results. Props @felipeelia
- Properly cast
fromparameter in$formatted_argsto an integer to prevent errors if empty. Props @CyberCyclone
Enhancements:
- Add an
ep_is_facetablefilter to enable custom control over where to show or hide Facets. Props [@moraleida] - Improvements to contributing documentation and tests. Props @jeffpaul and @felipeelia
3.5.3 - 2021-01-28
This is a bug fix release.
Bug Fixes:
- Fixed a bug where the
ep-synonympost type is updated to a regular post, which can cause it to be accidentally deleted. Props @Rahmon - Fixed CSS formatting issues in the Settings and Features menus. Props @Rahmon
3.5.2 - 2021-01-18
This is a bug fix release.
Bug Fixes:
- Fixed a typo in elasticpress.pot. Props @alexwoollam
- Don’t use timestamps that cause 5 digit years. Props @brandon-m-skinner
- Fix admin notice on the Synonyms page. Props @Rahmon
- Properly update slider numbers while sliding. Props @Rahmon
- Properly handle error from
get_terms(). Props @ciprianimike - Fix incorrect titles page. Props @Rahmon
- Fix linting tests. Props @felipeelia
- Fix issue with price filter unsetting previous query. Props @oscarssanchez
Enhancements:
- Added actions that fire after bulk indexing (
ep_after_bulk_index), in event of an invalid Elasticsearch response (ep_invalid_response), and before object deletion (ep_delete_{indexable slug}); added filtersep_skip_post_meta_sync,pre_ep_index_sync_queue,ep_facet_taxonomies_size,epwr_decay_function,and epwr_score_mode. Props @brandon-m-skinner - Added
ep_filesystem_argsfilter. Props @pjohanneson - Add SKU field to Weighting Engine if WooCommerce is active and fix issue with overriding
search_fields. Props @felipeelia - Support
author__inandauthor__not_inqueries. Props @dinhtungdu - Update multiple unit tests. Props @petenelson
- Show CLI indexing status in EP dashboard. Props @Rahmon
- Add
ep_query_send_ep_search_term_headerfilter and don’t sendEP-Search-Termheader if not using ElasticPress.io. Props @felipeelia
3.5.1 - 2020-10-29
A bug fix release.
Bug fixes:
- Fixes highlighting so that full content is returned instead of only snippets.
- Fix empty synonym bug.
- Only highlight post content, excerpt, and title.
Enhancements:
- Track CLI index in a headless fashion
3.5.0 - 2020-10-20
Version 3.5 is a very exciting release as it contains two major new features: a synonym dashboard and search term result highlighting. The synonym dashboard empowerers users to create synonym lists for searches. For example. searching "New York City" would return contain with "NYC". Search term highlighting will underline and add a CSS class to keywords within content that matches the current search.
The new version also includes a revamp of the search algorithm. This is a backwards compatibility break. If you'd like to revert to the old search algorithm, you can use the following code: add_filter( 'ep_search_algorithm_version', function() { return '3.4'; } );. The new algorithm offers much more relevant search results and removes fuzziness which results in mostly unwanted results for most people. If you are hooking in and modifying the search query directly, it's possible this code might break and you might need to tweak it.
Bug fixes:
- Fix default autosuggest selector.
- Fix facet feature $_GET parameter naming collision.
- Autosuggest a11y fixes. Props amesplant.
- Check $feature type before calling Feature methods. Props pdewouters.
- Ensure trashed post is removed from Elasticsearch. Props edwinsiebel.
- Add default permission callback to REST routes. Props dkotter.
- Hide links to weighting and synonym dashboard if network activated. Props felipeelia.
- Only sync post on allow listed post meta. Props felipeelia.
- Check if site is indexable before syncing in network activated mode.
- Fix facet widget and 3-level deep hierarchical taxonomy. Props dinhtungdu.
- Make sure AJAX sync is disabled if EP_DASHBOARD is set to false.. Props turtlepod.
Enhancements:
- Synonym dashboard. Props christianc1.
- Search term highlighting. Props oscarsanchez.
- Search algorithm improvements.
- Improved WP Acceptance tests. Props asharirfan.
- Rename ElasticPress submenu to "Features". Props helen.
- Add functionality for skipping ElasticPress install.
- Increase max supported Elasticsearch version to 7.9.
- Add filter to prepared user meta data. Props g-kanoufi.
- Improve Terms Feature terminology to remove confusion.
- Add filter to facet terms query arguments. Props felipeelia.
3.4.3 - 2020-07-21
Enhancements:
- Remove jQuery from front end JavaScript dependencies.
Bug Fixes:
- Fix accessibility bug on autosuggest.
- Fix broken facet search.
3.4.2 - 2020-06-17
Bug fixes:
- uninstall.php: Change the EP_FILE const to its value. Props felipeelia.
- Fix list features WP CLI command. Props felipeelia.
- Add
rel="nofollow"to facet links. Props mlaroy. - Facets widget: Move
<div>outsideob_start(). Props kallehauge. - Load facet scripts and styles only when they are really necessary. Props goaround.
- Index attachments with Protected Content and query for them in media search. Props oscarsanchez.
- Fixed
Deprecated field [include] used, expected [includes] instead.. Props dinhtungdu.
Enhancements:
- Add filter for enabling sticky posts. Props shadyvb.
- Add sync kill filter. Props barryceelen.
- Add timeout filters for bulk_index and index_document. Props @oscarsanchez.
3.4.1 - 2020-3-31
- Make weighting dashboard flex containers to prevent the slider from changing size. Props @mlaroy.
- Fix issue where weightings wouldn't save properly for certain post types. Props mustafauysal.
- Fix bug where terms wouldn't finish syncing in certain scenarios.
- Properly order WooCommerce products using double to account for decimals. Props @oscarsanchez.
- Show current indices in index health dashboard. Props moraleida.
3.4.0 - 2020-03-03
- Addition of Terms Indexable and Feature. ElasticPress can now integrate with
WP_Term_Query. Props dkotter. - Fixes for
WP_User_Query'fields' parameter. Props petenelson. - Support all taxonomies in root of
WP_Query - Readd
ep_retrieve_aggregationshook for backwards compatibility - Move indexable posts class registration into a function that runs in the
plugins_loadedaction. Props petenelson. - Fix author name in weighting and use post_author.display_name for weighted author field search. Props petenelson.
- Add
ep_prepared_*_metafilters - Refactor CLI indexing code for simplicity.
- Limit indexed Protected Content post types removing
revision,oembed_cache,custom_css,user_request,customize_changeset, andwp_block. - Cast taxonomy slug to array in case it's already an array in
WP_Query. - Remove unnecessary usage of
--network-wideCLI parameter. - Add name, nickname, and display name to fields used for user search.
- Add
clear-transientWP CLI command. - Don't make product categories facetable when WooCommerce feature is not active. Props mustafauysal.
3.3.0 - 2018-12-18
- Officially support Elasticsearch 7.5
- Add optional Google Analytics Autosuggest tracking Event
- Fix single node warning before sync has occurred.
- When
ep_integrateis set to false, do not apply faceting. - Fix search ordering error when there are no pointers.
- Add filter
ep_get_hits_from_queryto modify retrieved Elasticsearch hits. - Make sure
post_typearray does not include keys. Fixes a bbPress issue. - Pass query object to EP response so we can check for main query. This fixes a faceting bug.
- Add EP-Search-Term header to autosuggest requests to EP.io
- Clean up indexing transient on sigkill
3.2.6 - 2019-11-27
- Fix Under some edge conditions content for autosuggest can be large - don't cache it
3.2.5 - 2019-11-20
- Fix WP <5.0 fatal error on register_block_type.
3.2.4 - 2019-11-19
- Fix Gutenberg block initialization
- Fix Autosuggest: remove filter with proper priority in query generation. Props Maxdw.
- Fix Autosuggest: returning WP_Error for non object cache autosuggest queries causes issue. Fallback to transient
3.2.3 - 2019-11-13
- Ensure query building for Autosuggest does not fallback to WPDB.
3.2.2 - 2019-11-05
- Fix PHPCS errors. Props mmcachran
- Fix ensuring stats are built prior to requesting information
- Fix related post block enqueue block assets on the frontend
- Fix custom order results change webpack config for externals:lodash
- Fix don't overwrite search fields
- Autosuggest queries generated though PHP instead of JavaScript
- Add WP Acceptance tests
- Add new WP-CLI commands: get_indexes and get_cluster_indexes
3.2.1 - 2019-10-14
- Fix Gutenberg breaking issue with Related Posts and image blocks. Props adamsilverstein
3.2.0 - 2019-10-08
- Improve block asset enqueueing: hook on
enqueue_block_editor_assets. Props adamsilverstein. - Handle empty search weighting fields bug.
- Integrate WooCommerce default filter by price widget with ES range query.
- Improve messaging for custom result post type.
- Index health page.
- Add tag_in and tag__and support.
- Related posts Gutenberg block.
- Facet widget ordering option. Props psorensen.
- Control Index-ability of individual sites in multisite.
- Integrate WooCommerce default filter by price widget with ES range query.
See https://github.com/10up/ElasticPress/pulls?utf8=%E2%9C%93&q=is%3Apr+milestone%3A3.2.0+is%3Aclosed+
3.1.4 - 2019-08-28
Version 3.1.4 is a bug fix release.
See fixes: https://github.com/10up/ElasticPress/pulls?q=is%3Apr+milestone%3A3.1.4+is%3Aclosed
3.1.3 - 2019-08-22
This is a bug fix release.
- Check wpcli transient before integrating with queries.
- Fix version comparison bug when comparing Elasticsearch versions.
- Use proper taxonomy name for WooCommerce attributes.
- Increase Elasticsearch minimum supported version to 5.0.
- Fix product attribute archives.
3.1.2 - 2019-08-16
This is a bug fix release with some filter additions.
- Add ep_es_query_results filter.
- Add option to sync prior to shutdown.
- Readme update around WPCLI post syncing. Props @mmcachran.
- Ignore sticky posts in
find_related. Props @columbian-chris. - Weighting dashboard fixes around saving. @oscarsanchez.
- Weighting UI improvements. Props @mlaroy.
3.1.1 - 2019-07-25
Fixed
- Ensure taxonomies that are shared among multiple post types show up on the weighting screen
3.1.0 - 2019-07-22
Added
- Support for nested tax queries. Props @dkotter
ep_bulk_index_action_argsfilter. Props @fabianmarz- Add filters to control MLT related posts params.
ep_allow_post_content_filtered_indexfilter to bypass filtered post content on indexing.- Weighting dashboard to control weights of specific fields on a per post type basis
- Search ordering feature. Enables custom results for specific search queries.
Changed
- Refactor admin notice, admin screen "resolver", and install path logic
- WordPress.org profile
- New EP settings interface. Props @dkoo
- Delete pagination from facet URL.
- allows WooCommerce product attributes to be facetable in 3.0
- Autosuggest queries now match the search queries performed by WordPress, including weighting and any custom results
Fixed
- Fix data escaping in WP 4.8.x
- Support order by "type"/"post_type" in EP queries
- Properly redirect after network sync
- User mapping for pre 5.0 Props @mustafauysal
- Avoid multiple reflows in autosuggest. Props @fabianmarz
- 400 error when popularity is default sorting.
- Fixed Facet widget not rendering WC product attribute options. Props @fabianmarz
- Delete wpcli sync option/transient when an error occurs
- Create index/network alias when adding a new site on a network activated installation. Props @elliott-stocks
- Fix WooCommerce order search when WooCommerce module activated but protected content turned off.
3.0.3 - 2019-06-04
Added
- Pass $post_id twice in ep_post_sync_kill for backwards compatibility. Props @aaemnnosttv
ep_search_request_pathfilter for backwards compant.ep_query_request_pathfilter for modifying the query path.
Fixed
- Missing action name in post query integration.
- Properly add date filter to WP_Query.
3.0.2 - 2019-05-23
Fixed
- Date query errors
- Re-add ep_retrieve_the_{type} filter. Props @gassan
- Empty autosuggest selector notice
3.0.1 - 2019-05-20
Changed
- Changed max int to use core predefined constant. Props @fabianmarz
Fixed
wp elasticpress statsandwp elasticpress statuscommands fatal error.- Add autosuggest selector field default to fix notice.
- Re-add
ep_find_relatedas deprecated function. - Properly support legacy feature registration callbacks per #1329.
- Properly disable settings as needed on dashboard.
- Don't force document search on REST requests.
3.0 - 2019-05-13
Notice
- Requires re-index
Overview
- 3.0 is a refactor of ElasticPress for modern coding standards (PHP 5.4 required) as well as the introduction to indexables. Indexables abstracts out content types so data types other than post can be indexed and searched. 3.0 includes user indexing and search (integration with WP_User_Query). User features require at least WordPress version 5.1.
- The refactor changes a lot of ElasticPress internals. The biggest change is the feature registration API has completely changed. Now, new features should extend the
ElasticPress\Featureclass rather than callingep_register_feature. Older features should be backwards compatible.
Added
- Elasticsearch language setting in admin
Changed
ep_post_sync_killfilter removed$post_argsargument.posts-per-pagechanged toper-pagefor WP-CLI index command.
Removed
ep_feature_setupaction
2.8.2 - 2019-03-26
Added
- WooCommerce product attributes as facets.
- Performance Boost for document indexing.
Fixed
- Issue on WP REST API searches.
- Case-sensitivity issue with facet search.
2.8.1 - 2019-02-13
Fixed
- Homepage out of chronological order.
- Missing meta key. (Props @turtlepod)
- Bulk indexing default value on settings page.
2.8.0 - 2019-02-08
Added
- Sticky posts support.
- WooCommerce searches with custom fields.
- Elasticsearch version in settings. (Props @turtlepod)
- Allow user to set number of posts during bulk indexing cycle.
- Facet query string customization (Props @ray-lee)
- Protected content: filtering of filtered post types.
- Implemented --post-ids CLI option to index only specific posts. (Props @dotancohen)
Changed
- Meta LIKE query adjustment.
- Autosuggest to abide by plugin settings.
- Adjustment to
wp elasticpress status
Removed
- Logic that determines if blog is public / indexable. (Resolves sync issue.)
- Date weighting for protected content admin queries.
Fixed
- Autosuggest bugfix.
- Auto activating sync notices. (Props @petenelson)
2.7.0 - 2018-12-06
Notice
- Requires re-index
Added
- Prevent indexing when blog is deleted or not public.
- Do not apply absint to comment_status.
- Random WooCommerce ordering allowed.
- Better error notices. (Props @petenelson)
Changed
- Query only post IDs when indexing. (Props @elliott-stocks)
Fixed
- ElasticPress.io credentials bugfix.
- Related posts bugfix.
2.6.1 - 2018-08-24
Fixed
- Missing file for wp-cli.
2.6 - 2018-08-22
Added
- Ability to set autosuggest endpoint by a constant (EP_AUTOSUGGEST_ENDPOINT).
- Enable WooCommerce products to be included in autosuggest results.
- Support for tax_query operators EXISTS and NOT EXISTS.
- Filter to change default orderby/sort (ep_set_default_sort).
Changed
- Do not search for author_name when searching products in WooCommerce.
2.5.2 - 2018-05-09
Notice
- Requires re-index
Removed
- Unnecessary facet JavaScript
Fixed
- Facet aggregations warning
2.5.1 - 2018-05-02
Notice
- Requires re-index as we change the way data is being sent to Elasticsearch.
- It's also worth noting for ElasticPress version 2.5+, the Facets feature, which is on by default, will run post type archive and search page main queries through Elasticsearch. If Elasticsearch is out of sync with your content (possible in rare edge cases), this could result in incorrect content being shown. Turning off Facets would fix the problem.
Fixed
- Don't pre-strip HTML before sending it to Elasticsearch.
- Support PHP 5.2 backwards compat.
- Don't show faceting widget if post type doesn't support taxonomy.
2.5 - 2018-04-23
Overview
- ElasticPress 2.5 includes a new Facets feature that makes it easy to add high performance content filtering controls to a website.
- A new Facets widget enables site administrators to add taxonomy facets to a sidebar (or any widgetized area). When viewing a content list on the front end of the website, the widget will display the name of the taxonomy – e.g. “Categories” – and a checklist with all of its terms. Visitors can narrow down content by selecting terms they are interested in. The Facets feature can be globally configured to narrow results to content that is tagged with any or all of the selected terms. The widget’s front end output contains carefully named CSS classes, so that designers and developers can apply unique styling.
Added
- Official support for Elasticsearch 6.2
- Increased functional parity with the WP_Query API
- Facets feature
--post-idsCLI option to index only specific posts. Props @dotancohen.- Filter for hiding host setting in dashboard. Props @tomdxw.
- Support
WP_Querymeta querynot betweencomparator.
Fixed
- Disallow duplicated Elasticsearch requests on WooCommerce orders page. Props @lukaspawlik
- Taxonomy sync object warning. Props @eugene-manuilov
trueinis_empty_queryterminates ep_query process when it shouldn't. Props @yaronuliel
2.4.2 - 2018-01-31
Fixed
- Related posts not showing up bug.
2.4.1 - 2018-01-30
Added
- Increase maximum Elasticsearch compatibility to 6.1
Fixed
- Support Elasticsearch 6.1 and properly send Content-Type header with application/json. Props @eugene-manuilov.
- Autosuggest event target issue bug. Props @eugene-manuilov.
- Widget init bug. Props @eugene-manuilov.
- Taxonomy sync parameter warning. Props @eugene-manuilov.
2.4 - 2017-11-01
Overview
- Version 2.4 introduces the Autosuggest feature. When enabled, input fields of type "search" or with the CSS class "search-field" or "ep-autosuggest" will be enhanced with autosuggest functionality. As text is entered into the search field, suggested content will appear below it, based on top search results for the text. Suggestions link directly to the content.
- We also added hooks and filters to ElasticPress that make query logging possible. The Debug Bar ElasticPress plugin now adds a Query Log screen to the ElasticPress admin menu. The Query Log is an extremely powerful tool for diagnosing search and indexing issues.
Added
- Autosuggest feature
- Hooks for query log functionality in Debug Bar ElasticPress
- Support
WP_Queryfieldsparameter. Props @kallehauge. - Setting for enabling/disabling date weighting in search. Props @lukaspawlik.
- Shipping class as indexed WooCommerce taxonomy. Props @kallehauge.
- Allow WooCommerce orders to be searched by items. Props @kallehauge.
- Support Elasticsearch 5.6
- Filter to granularly control admin notices. Props @mattonomics.
- Support ES 5.5+ strict content type checking. Props @sc0ttclark
Removed
- Extra post meta storage key from Elasticsearch
Fixed
author_namesearch field. Props @ivankristianto.- Unavailable taxonomy issue in WooCommerce. Props @ivankristianto.
- Index all publicly queryable taxonomies. Props @allan23.
- Resolve case insensitive sorting issues. Props @allan23.
- Escaping per VIP standards. Props @jasonbahl.
- WooCommerce post type warnings.
2.3.2 - 2017-06-30
Fixed
- Broken upgrade sync notification.
- Cache ES plugins request. This is super important. Instead of checking the status of ES on every page load, do it every 5 minutes. If ES isn't available, show admin notification that allows you to retry the host.
2.3.1 - 2017-06-29
Notice
- This requires a re-index if you are using the WooCommerce feature.
Fixed
- Properly respect WC product visibility. Props @ivankristianto.
2.3 - 2017-05-26
Overview
- Version 2.3 introduces the Documents feature which indexes text inside of popular file types, and adds those files types to search results. We've also officially added support for Elasticsearch 5.3.
Added
- Documents feature
- Enable multiple feature status messages
- Disable dashboard sync via constant:
define( 'EP_DASHBOARD_SYNC', false );. Props @rveitch. - Filter for custom WooCommerce taxonomies. Props @kallehauge.
- Support WooCommerce
product_typetaxonomy. Props @kallehauge.
Fixed
- WP-CLI
--no-bulknumber of posts indexed message. Props i@vankristianto. - Honor
ep_integratein WooCommerce queries. Props @ivankristianto. - Properly check when ES results are empty. Props @lukaspawlik
- Incorrect
found_postsset in query when ES is unavailable. Props @lukaspawlik
2.2.1 - 2017-03-30
Added
EP_INDEX_PREFIXconstant. If set, index names will be prefixed with the constant. Props @allan23.- Increase total field limit to 5000 and add filter. Props @ssorathia.
- Increase max result window size to 1000000 and add filter.
Removed
- operator=>AND unneed execution code.
Fixed
- Dashboard syncing delayed start issues.
- If plugins endpoint errors, try root endpoint to get the ES version.
- Make sure orderby is correct for default WooCommerce sorting. Props @ivankristianto.
- Stop dashboard sync if error occurs in the middle. Props @ivankristianto.
- Prevent EP from auto-activating a feature that was force deactivated
- Prevent massive field Elasticsearch error when indexing large strings
2.2 - 2017-02-28
Notice
- Requires re-index
Overview
- Version 2.2 rethinks the module process to make ElasticPress a more complete query engine solution. Modules are now auto-on and really just features. Why would anyone want to not use amazing functionality that improves speed and relevancy on their website? Features (previously modules) can of course be overridden and disabled. Features that don't have their minimum requirements met, such as a missing plugin dependency, are auto-disabled.
- We've bumped the minimum Elasticsearch version to 1.7 (although we strongly recommend 2+). The maximum tested version of Elasticsearch is version 5.2. If you are running Elasticsearch outside this version range, you will see a warning in the dashboard.
Added
- (Breaking change) Module registration API changed. See
register_moduleinclasses/class-ep-modules.php. - (Breaking change) Related posts are now in a widget instead of automatically being appending to content.
- (Breaking change) Admin module renamed to Protected Content.
- Admin warning if current Elasticsearch version is not between the min/max supported version. Version 2.2 supports versions 1.3 - 5.1.
- Auto-reindex on versions requiring reindex.
- User friendly admin notifications for ElasticPress not set up, first sync needed, and feature auto activation.
- Protected Content feature applies to all features. This means if Protected Content isn't active, search or WooCommerce integration won't happen in the admin.
- Support for post_mime_type. Props @Ritesh-patel
- 'number' param to satisfy WP v4.6+ fixing get_sites call. Props @rveitch
Fixed
- Back compat with old
ep_searchfunction. - Respect indexable post types in WooCommerce feature
- New product drafts not showing in WooCommerce admin list
- WooCommerce feature breaking image search in media library. Props @Ritesh-patel
- WooCommerce order search broken
- Stop the insansity made private. Props @sc0ttclark
- Multidimensional meta queries. Props @Ritesh-patel.
- Properly show bulk index errors in WP-CLI
- Update ep_delete_post, include $post_type argument. Props @Ritesh-patel
- post_type product getting set in any WP_Query if tax_query is provided in WooCommerce feature. Props @Ritesh-patel
- Order by proper relevancy in WooCommerce product search. Props @ivankristianto
- Recursion fatal error due to oembed discovery during syncing. Props @ivankristianto
2.1.2 - 2016-11-11
Notice
- Requires re-index
Changed
- Separate mapping for ES 5.0+
Fixed
- Unit tests
2.1.1 - 2016-09-29
Fixed
- PHP 5.3 errors
- Properly show syncing button module placeholder during sync
2.1 - 2016-09-20
Backcompat breaks
- Move ep_admin_wp_query_integration to search integration only. EP integration by default is available everywhere.
- Remove
keep alivesetting - Remove setting to integrate with search (just activate the module instead)
- Back up hosts code removed
- Remove active/inactive state. Rather just check if an index is going on our not.
Added
- Support
meta_keyandmeta_value - Order by
meta_value_num - Search scope file. Props @rveitch
- Support WP_Query
post_status. Props @sc0ttclark
Changed
- Redo UI
- Make plugin modular
- Bundle existing modules into plugin
Removed
- Remove unnecessary back up hosts code
Fixed
- Properly support
post_parent = 0. Props @tuanmh post__insupportpagedoverwritingoffset- Integer and comma separated string
sitesWP_Query processing. Props @jaisgit.
2.0.1 - 2016-08-02
Fixed
- Don't load settings on front end. This fixes a critical bug causing ElasticPress to check the Elasticsearch connection on the front end.
2.0 - 2016-06-01
Overview
- 10up ships ElasticPress 2.0 with radical search algorithm improvements and a more comprehensive integration of WP_Query. ElasticPress is now even closer to supporting the complete WP_Query API. This version also improves upon post syncing ensuring that post meta updates are synced to Elasticsearch, adds a number of important hooks, and, of course, fixes some pesky bugs.
- A special thanks goes out to Tuan Minh Huynh and everyone else for contributions to version 2.0.
Added
- Radical search algorithm improvements for more relevant results (see #508 for details)
- Support meta
BETWEENqueries. - Support
ORrelation for tax queries. - Sync post to Elasticsearch when meta is added/updated.
- Support all taxonomies as root WP_Query arguments. Props @tuanmh
IDfield to Elasticsearch mapping- Support
post_parentWP_Query arguments. Props @tuanmh - Filter to disable printing of post index status. Props @tuanmh
- Useful CLI hooks
- Filter to bypass permission checking on sync (critical for front end updates)
Changed
- Improve GUI by disabling index status meta box text and improving instructions. Props @ivanlopez
Fixed
- Consider all remote request 20x responses as successful. Props @tuanmh
- Plugin localization. Props @mustafauysal
- Do query logging by default. Props @lukaspawlik
- Cannot redeclare class issue. Props @tuanmh
- Double querying Elasticsearch by ignoring
category_namewhentax_queryis present. - Post deletion endpoint URL. Props @lukaspawlik
1.9.1 - 2016-05-23
Fixed
- GUI not working properly when plugin is not network enabled within multisite. Props @ivanlopez
1.9 - 2016-05-17
Overview
- ElasticPress 1.9 adds in an admin UI, where you can set your Elasticsearch Host and run your index command, without needing to us WP-CLI. Version 1.9 also adds in some performance improvements to reduce memory consumption during indexing. Full list of enhancements and bug fixes:
Added
- Admin GUI to handle indexing. Props @ChrisWiegman.
- Option to not disable ElasticPress while indexing. Props @lukaspawlik.
- Allow filtering of which post types we want to search for. Props @rossluebe.
- Ensure both PHPUnit and WP-CLI are available in the development environment. Props @ChrisWiegman.
- User lower-case for our composer name, so packagist can find us. Props @johnpbloch.
- Check query_vars, not query to determine status. Props @ChrisWiegman.
- Further reduce memory usage during indexing. Props @lukaspawlik.
- post__in and post__not_in documentation. Props @mgibbs189.
- Elasticsearch Shield authentication headers if constant is set. Props @rveitch.
Changed
- Improve memory usage during indexing and fix unnecessary cache flushes. Props @cmmarslender.
Removed
- composer.lock from the repo. Props @ChrisWiegman.
Fixed
- --no-bulk indexing option. Props @lukaspawlik.
- Error that occurs if no Elasticsearch host is running. Props @petenelson.
- Exception error. Props @dkotter.
- WP-CLI status command. Props @dkotter.
1.8 (Mapping change, requires reindex) - 2016-01-19
Overview
- ElasticPress 1.8 adds a bunch of mapping changes for accomplishing more complex WP_Query functions such as filtering by term id and sorting by any Elasticsearch property. Version 1.8 also speeds up post syncing dramatically through non-blocking queries. Full list of enhancements and bug fixes:
Added
- Filter around the search fuzziness argument. Props @dkotter.
- Make post indexing a non-blocking query. Props @cmmarslender.
- Log queries for debugging. Makes ElasticPress Debug Bar plugin possible.
- Make
posts_per_page = -1possible. - Support term id and name tax queries.
- raw/sortable to property to term mapping. Props @sc0ttkclark
- raw/sortable property to meta mapping. Props @sc0ttkclark
- raw/sortable to author display name and login
Fixed
- Post deletion. Props @lukaspawlik.
- Properly flush cache with
wp_cache_flush. Props @jstensved - When directly comparing meta values in a meta query, use the
rawproperty instead ofvalue. - Support arbitrary document paths in orderby. Props @sc0ttkclark.
1.7 (Mapping change, requires reindex) - 2015-12-11
Overview
- ElasticPress 1.7 restructures meta mapping for posts for much more flexible meta queries. The
post_metaElasticsearch post property has been left for backwards compatibility. As of this version, post meta will be stored in themetaElasticsearch property.metais structured as follows: - When querying posts, you will get back
meta.value. However, if you plan to mess with the new post mapping, it's important to understand the intricacies. - The real implications of this is in
meta_query. You can now effectively search by meta types. See the new section in README.md for details on this.
Added
meta.value(string)meta.raw(unanalyzed string)meta.long(unanalyzed number)meta.double(unanalyzed number)meta.boolean(unanalyzed number)meta.date(unanalyzed yyyy-MM-dd date)meta.datetime(unanalyzed yyyy-MM-dd HH:mm:ss datetime)time(unanalyzed HH:mm:ss time)- Index posts according to post type. Props @sc0ttkclark
Fixed
- Prevent missed post indexing when duplicate post dates. Props @lukaspawlik
- Complex meta types are automatically serialized upon storage.
1.6.2 - 2015-11-12
Notice
- Mapping change, requires reindex
Overview
- ElasticPress 1.6.2 fixes ALL backwards compatibility issues with Elasticsearch 2.0
Changed
- Uses string instead of array for post type term when there is only one term.
Removed
fuzzy_like_thisquery and usesmulti_matchinstead.
1.6.1 - 2015-11-09
Notice
- Mapping change, requires reindex
Overview
- ElasticPress 1.6.1 fixes mapping backwards compatibility issues with Elasticsearch 2.0:
Removed
- Fields field type from object typed fields as they should be called properties.
- Path from object field types.
1.6 - 2015-08-31
Overview
- ElasticPress 1.6 contains a number of important enhancements and bug fixes. Most notably, we now support Elasticsearch fallback hosts and the indexing of attachments.
Added
- Blog id to
ep_index_namefilter. Props @kovshenin - Support post caching in search
- Recursive term indexing for hierarchical taxonomies. Props @tuanmh
- Enable indexing of attachments
- Support fallback hosts in case main EP host is unavailable. Props @chriswiegman
ep_retrieve_the_postfilter to support relevancy score manipulation. Props @matthewspencer- Make search results filterable. Props @chriswiegman
Fixed
- Clean up PHP Code Sniffer errors. Props @chriswiegman
- Properly document Elasticsearch version
- Abide by
exclude_from_searchinstead ofpublicwhen indexing post types. Props @allan23 and @ghosttoast. - Allow posts to be indexed with invalid date values. Props @tuanmh
- Support
ep_post_sync_killfilter in bulk indexing. Props @Stayallive
1.5.1 - 2015-07-06
Fixed
- Prevent notices from being thrown when non-existent index properties are accessed. This was happening for people how upgraded to 1.5 without doing a re-index. Props @allan23
1.5 - 2015-06-25
Added
- Support for category_name WP_Query parameter. Props @ocean90
- Support limiting sites in network wide commands. Props @bordoni
- Support for method to un-integrate WP_Query. Props @kingkool68
- Support
cache_resultsin WP_Query - Action prior to starting WP-CLI index command
- Missing headers to WP_CLI commands. Props @chriswiegman
- Improve error reporting in bulk indexing during bad ES requests.
- Filter to modify request headers. Props @tuanmh
- Prevent bulk index from sending useless error emails. Props @cmmarslender
- --offset parameter to cli indexing command. Stayallive
- Support like query in post meta. Props @tuanmh
- Sanitization fixes for PHPCS. Props @mphillips
- Filter to set default sort order. Props @HKandulla
- MySQL DB completely removed from integrated ElasticPress WP Query. Props @EduardMaghakyan and @crebacz
Changed
- Syncing hook to play better with plugins. Props @jonathanbardo
Fixed
- is_search check notice. Props @allenmoore and @allan23
- Prevent direct access to any PHP files. Props @joelgarciajr84
- Fields not being loaded from ES. Props @stayallive
- Inclusive check in date_query integration. Props @EduardMaghakyan
1.4 - 2015-05-18
Added
date_queryand date parameters now supported in WP_Query. Props @joeyblake and @eduardmaghakyan- Make all request headers filterable
- EP API key to all requests as a header if a constant is defined. Props @zamoose
- Index exists function; remove indexes on blog deletion/deactivation. Props @joeyblake
- Refactor wp-cli stats for multisite. Props @jaace
- Index mappings array moved to separate file. Props @mikaelmattsson
- Support meta inequality comparisons. Props @psorensen
Removed
- Default shard and indices configuration numbers but maintain backwards compatibility. Props @zamoose
Fixed
- Duplicate sync post hooks separated. Props @superdummy
- Don't send empty index error emails. Props @cmmarslender
- Wrong author ID in post data. Props @eduardmaghakyan
1.3.1 - 2015-04-09
Added
- Support
datein WP_Queryorderby. Props @psorensen
1.3 - 2015-02-03
Added
- Support
meta_queryin WP_Query integration - Improved documentation. Each WP-CLI command has been documented
elasticsearchproperty to global post object to assist in debuggingep_integrateparam added to allow for WP_Query integration without search. (Formally called ep_match_all)- Filter added for post statuses (defaults to
publish). Change the sync mechanism to make sure it takes all post statuses into account. Props @jonathanbardo
Fixed
- Check if failed post exists in indexing. Props @elliot-stocks
- Properly check if setup is defined in indexing. Props @elliot-stocks
- Add WP_Query integration on init rather than plugins loaded. Props @adamsilverstein
- Properly set global post object post type in loop. Props @tott
- Do not check if index exists on every page load. Refactor so we can revert to MySQL after failed ES ping.
- Make sure we check
is_multisite()if--network-wideis provided. Props @ivankruchkoff - Abide by the
exclude_from_searchflag from post type when running search queries. Props @ryanboswell - Correct mapping of
post_statustonot_analyzedto allow for filtering of the search query (will require a re-index). Props @jonathanbardo
1.2 - 2014-12-05
Added
- Allow number of shards and replicas to be configurable.
- Filter and disable query integration on a per query basis.
- Support orderby
parameter inWP_Query
Changed
- Improved searching algorithm. Favor exact matches over fuzzy matches.
- Query stack implementation to allow for query nesting.
- Delete action to action_delete_post instead of action_trash_post
- Improve unit testing for query ordering.
Removed
- _boost from mapping. _boost is deprecated by Elasticsearch.
Fixed
- We don't want to add the like_text query unless we have a non empty search string. This mimics the behavior of MySQL or WP which will return everything if s is empty.
1.1 - 2014-10-27
Added
- Add support for post_title and post_name orderby parameters in
WP_Queryintegration. Add support for order parameters.
Changed
- Refactored
is_alive,is_activated, andis_activated_and_alive. We now have functionsis_activated,elasticsearch_alive,index_exists, andis_activated. This refactoring helped us fix #150.
1.0 - 2014-10-20
Added
- Support
search_fieldsparameter. Support author, title, excerpt, content, taxonomy, and meta within this parameter. - Check for valid blog ids in index names
sitesWP_Query parameter to allow for search only on specific blogs
Changed
- Move all management functionality to WP-CLI commands
- Disable sync during import
- Improved bulk error handling
- Improved unit test coverage
Removed
- Remove ES_Query and support everything through WP_Query
ep_last_syncedmeta- Syncing taxonomy
0.9.3 - 2014-09-26
Added
- Better documentation surrounding
WP_Queryparameters (props @tlovett1) - Option to allow for using
match_all(props @colegeissinger for suggestion) - Better tests for some
WP_Queryparameters (props @tlovett1) - Allow for manual control over search integration
- Support for passing an array of sites to search against (props @tlovett1)
- Filter for controlling whether or not ElasticPress is enabled during a
wp_queryrequest - Filter to allow adjusting which fields are searched (
ep_search_fields)
Changed
- Prevented filtering
WP_Queryin admin (props @cmmarslender) - Updated tests to better conform to WordPress repo 5.2 compatibility (props @tlovett1)
- Made running re-indexing commands simpler and easier by adding support for a new
--setupflag on theindexcommand - Disable search integration during syncing
Fixed
- Bug that would cause a post to stay in the index when a post was unpublished
- Bug that would cause site to be improperly switched after a
wp_reset_postdatawhile not in the loop - Bug that would cause EP to individually sync each post during an import - disabled syncing during import - requires a full re-index after import
0.9.2 - 2014-09-11
Added
- Wrapper method for wp_get_sites, added filter
- Ability to change scope of search to other sites in network
- tax_query support.
Changed
- Aggregation filter update
0.9.1 - 2014-09-05
Added
- Action to allow for retrieval of raw response
- Filter to retrieve aggregations
- Pagination tests
- ep_min_similarity and ep_formatted_args filters
- ep_search_fields filter for adding custom search fields
- Filter to allow for specific site selection on multisite indexing
Changed
- Adjust default fuzziness to .75 instead of .5
Removed
- Main query check on ep wp query integration
0.9 - 2014-09-03
Added
- Make labels clickable in admin
- Setup plugin textdomain; POT file for translation; localize stray string in cron
- Tests for is_alive function
- search_meta key param support to ES_Query
- Test WP Query integration on multisite setup
- Flush and re-put mapping on admin sync request
- WP Query integration
Changed
- Simplify sync
- do_scheduled_syncs into do_syncs
- Make config files static
Removed
- EP hidden taxonomy
Fixed
- Cron stuff
- Statii
- Type coercion in equality checks
0.1.2 - 2014-06-27
Added
- Support ES_Query parameter that designates post meta entries to be searched
- Escape post ID and site ID in API calls
- Additional tests
- Translation support
- is_alive function for checking health status of Elasticsearch server
Changed
- Only index public taxonomies
- Renamed
statiitostatus
Fixed
- Escaping issues
0.1.0 - Unknown
- Initial plugin release