Version 4.4.0
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.Result
JavaScript 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_status
filter 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_args
filter, to change WP Query args of the autosuggest query template. Props @felipeelia via #3038. - New
ep_post_filters
filter and refactor of thePost::format_args
method. Props @felipeelia via #3044. - New
get_index_settings()
method to retrieve index settings. Props @rebeccahum via #3126. - New
ep_woocommerce_default_supported_post_types
andep_woocommerce_admin_searchable_post_types
filters. 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_selected
visibility. 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_query
clause when using themeta_key
parameter. 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 thefields
parameter ofWP_User_Query
only user IDs will be returned. Props @felipeelia and @burhandodhy via #3109. update_term_meta_cache
parameter set as false while getting terms for Facets. Props @mae829 via #3060.- Small refactor of Indexables'
parse_orderby
to make it easier to read. Props @felipeelia via #3042. - Search algorithms descriptions. Props @felipeelia via #3051.
- Hide taxonomies from facet block whose
show_ui
is 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
sites
parameter for WP_Query, WP_Term_Query and WP_Comment_Query was deprecated in favor of the newsite__in
andsite__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_excerpt
is 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-wide
throws 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_fields
filter. Props @felipeelia via #3124. - Warning if
_source
is not returned in query hit. Props @pschoffer via #2992. - Undefined variable
$update
on 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-utils
from 1.4.0 to 1.4.2. Props @dependabot via #3125 and #3137.
See: https://github.com/10up/ElasticPress/milestone/67?closed=1