Releases: 10up/ElasticPress
Version 4.5.1
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.
See: https://github.com/10up/elasticpress/milestone/72?closed=1
Version 4.5.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. 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](...
Version 4.4.1
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.
See: https://github.com/10up/ElasticPress/milestone/70?closed=1
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.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](#312...
Version 4.3.1
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.
See: https://github.com/10up/ElasticPress/milestone/68?closed=1
Version 4.3.0
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](#29...
Version 4.2.2
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.
See: https://github.com/10up/ElasticPress/milestone/66?closed=1
Version 4.2.1
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.
See: https://github.com/10up/ElasticPress/milestone/65?closed=1
Version 4.2.0
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.
See: https://github.com/10up/ElasticPress/milestone/63?closed=1
Version 4.1.0
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.
See: https://github.com/10up/ElasticPress/milestone/62?closed=1