A fast and flexible search and query engine for WordPress.
GPL-2.0 License
Bot releases are visible (Hide)
See: https://github.com/10up/ElasticPress/milestone/86?closed=1
Published by felipeelia 4 months ago
This is a security release affecting all previous versions of ElasticPress.
See: https://github.com/10up/ElasticPress/milestone/85?closed=1
Published by felipeelia 5 months ago
See: https://github.com/10up/ElasticPress/milestone/84?closed=1
Published by felipeelia 6 months ago
ep_facet_enabled_in_editor
filter to enabled facet blocks in the post editor. Props @JiveDig and @felipeelia via #3845.get_capability()
function. Props @felipeelia and @selim13 via #3866.ep_weighting_options
filter to modify the weighting dashboard options. Props @burhandodhy via #3827.ep_post_test_meta_value
filter. Props @felipeelia via #3850.$query->query_vars['ep_aggregations']
. Props @felipeelia via #3847.Term::format_args()
method and conditionally set search fields for term queries in REST API requests. Props @felipeelia and @mgurtzweiler via #3869.lee-dohm/no-response
with actions/stale
to help with closing no-response/stale issues. Props @jeffpaul via #3870.Elasticsearch::index_document
and related methods. Props @ictbeheer via #3881.<pre>
tag on the status report page. Props @burhandodhy via #3894.composer/composer
from 2.6.5 to 2.7.0. Props @dependabot via #3831
See: https://github.com/10up/ElasticPress/milestone/79?closed=1
Published by felipeelia 9 months ago
wp_count_terms()
in query_db
. Props @rebeccahum via #3791.-autosuggest-allowed
endpoint to build the REST API schema. Props @felipeelia via #3809.follow-redirects
from 1.15.3 to 1.15.4. Props @dependabot via #3808.See: https://github.com/10up/ElasticPress/milestone/83?closed=1
Published by felipeelia 10 months ago
See: https://github.com/10up/ElasticPress/milestone/82?closed=1
Published by felipeelia 12 months ago
ElasticPress 5.0.0 contains some important changes. Make sure to read these highlights before upgrading:
ep_prepare_meta_allowed_keys
filter allows to add meta keys programmatically. See #3068.set_settings_schema()
method to work. See #3655.Users
feature 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.Terms
and Comments
features are now hidden by default for sites that do not have them active yet. Check our blog post for more info. See #3691.Min | Max | |
---|---|---|
Elasticsearch | 5.2 | Unset |
WordPress | 6.0+ | latest |
PHP | 7.4+ | latest |
elasticpress/v1/features
for updating feature settings. Props @JakePT via #3676.ElasticsearchErrorInterpreter
class. Props @felipeelia via #3661.default_search
analyzer to differentiate what is applied during sync and search time. Props @felipeelia and @MARQAS via #3610 and #3703.admin-ajax.php
callback to a custom REST API endpoint with support for additional arguments. Props @JakePT via #3643.ep_last_index
to ep_sync_history
. Props @felipeelia and @JakePT via #3647.IndexHelper::get_last_index
method was replaced by IndexHelper::get_last_sync
. See #3647.FailedQueries::maybe_suggest_solution_for_es
method was replaced by ElasticsearchErrorInterpreter::maybe_suggest_solution_for_es
. See #3661.Weighting::render_settings_section
, Weighting::handle_save
, Weighting::redirect
, and Weighting::save_weighting_configuration
were deprecated in favor of React components. See #3068.ep_facet_renderer_class
filter. Props @misfist via #3696.See: https://github.com/10up/ElasticPress/milestone/71?closed=1
Published by felipeelia about 1 year ago
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.
ep_highlight_number_of_fragments
filter. Props @dgnorrod and @felipeelia via #3681.=PHP 7.0 version check. Props @bmarshall511 and @felipeelia via #3641.
ep_woocommerce_default_supported_post_types
were ignored. Props @felipeelia and @MARQAS via #3679.post__not_in
and post_status
are translated into arrays, not objects. Props @felipeelia via #3652 and #3680.Utils\get_option
return type. Props @felipeelia via #3653.ep_capability
and ep_network_capability
filters. Props @burhandodhy via #3685.add_attachment
and edit_attachment
. Props @burhandodhy via #3690.composer install
on PHP 8. Props @burhandodhy via #3683.composer/composer
from 2.5.8 to 2.6.4. Props @dependabot via #3672.See: https://github.com/10up/ElasticPress/milestone/78?closed=1
Published by felipeelia about 1 year ago
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.
See: https://github.com/10up/ElasticPress/milestone/77?closed=1
Published by felipeelia about 1 year ago
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.
Default to Site Language
option in the language dropdown in ElasticPress' settings page. Props @felipeelia via #3550.ep_stop
filter, that changes the stop words used according to the language set. Props @felipeelia via #3549.get-index-settings
WP-CLI command. Props @felipeelia via #3547.ep_facet_tax_special_slug_taxonomies
filter. Props @oscarssanchez via #3506.--stop-on-error
flag to the sync
command. Props @oscarssanchez via #3500.get
WP-CLI command. Props @felipeelia via #3567.$only_indexable
parameter to the Utils\get_sites()
function. Props @felipeelia via #3577.get_settings()
usage inside ElasticPress features. Props @oscarssanchez and @felipeelia via #3558.createRoot
instead of render
to render elements. Props @oscarssanchez, @burhandodhy, @JakePT, and @felipeelia via #3573 and #3595.Autosuggest::delete_cached_query()
was deprecated without a replacement. See #3566.EP_Uninstaller::delete_related_posts_transients()
and EP_Uninstaller::delete_total_fields_limit_transients()
was merged into EP_Uninstaller::delete_transients_by_name
. See #3548.ep_woocommerce_default_supported_post_types
filter was split into ep_woocommerce_orders_supported_post_types
and ep_woocommerce_products_supported_post_types
. See #3502.ep_woocommerce_supported_taxonomies
filter is now ep_woocommerce_products_supported_taxonomies
. See #3502.WooCommerce\Orders
methods were migrated to the new WooCommerce\OrdersAutosuggest
class. See #3502.Elasticsearch::clear_total_fields_limit_cache()
method was replaced by Elasticsearch::clear_index_settings_cache()
. See #3552.WooCommerce\WooCommerce
class were moved to the new WooCommerce\Product
class. See #3502.Block
and Renderer
abstract classes. See #3499."Creation of dynamic property $search_template is deprecated"
. Props @burhandodhy via #3591.Deprecated: version_compare(): Passing null to parameter #1 ($version1) of type string is deprecated
. Props @felipeelia and @burhandodhy via #3593.Undefined array key "is_preview"
. Props @felipeelia and @burhandodhy via #3594.word-wrap
from 1.2.3 to 1.2.4. Props @dependabot via #3543.tough-cookie
from 4.1.2 to 4.1.3 and @cypress/request
from 2.88.10 to 2.88.12. Props @dependabot via #3583.See: https://github.com/10up/ElasticPress/milestone/75?closed=1
Published by felipeelia over 1 year ago
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.
wp_cache_supports
over wp_cache_supports_group_flush
. Props @spacedmonkey via #3501.ep_exclude_from_search
post meta only if it is set or has some value. Props @MARQAS and @columbian-chris via #3521.ElasticPress\Feature\WooCommerce\Orders
. Props @mwidmann via #3507.ep_facet_search_get_terms_args
filter. Props @burhandodhy via #3525.See: https://github.com/10up/elasticpress/milestone/76?closed=1
Published by felipeelia over 1 year ago
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.
--force
flag in the sync WP-CLI command, to stop any other ongoing syncs. Props @felipeelia and @tomjn via #3479.installer-paths
works without any additional requirement. Props @felipeelia and @tomjn via #3478.maybe_process_error_limit
function. Props @burhandodhy via #3454.menu_order
values being transformed into positive numbers. Props @felipeelia and @navidabdi via #3468.See: https://github.com/10up/ElasticPress/milestone/74?closed=1
Published by felipeelia over 1 year ago
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.
ep_enable_query_integration_during_indexing
filter. Props @rebeccahum via #3445.See: https://github.com/10up/ElasticPress/milestone/73?closed=1
Published by felipeelia over 1 year ago
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.
ep_instant_results_args_schema
filter for filtering Instant Results arguments schema. Props @JakePT via #3389.ep.Autosuggest.navigateCallback
JS filter for changing the behavior of a clicked element on Autosuggest. Props @oscarssanchez, @felipeelia, and @JakePT via #3419.ep.Autosuggest.fetchOptions
JS filter for filtering Elasticsearch fetch configuration of Autosuggest. Props @tlovett1, @MARQAS, and @felipeelia via #3382.ep_facet_should_check_if_allowed
filter reverts this behavior. Props @felipeelia and @burhandodhy via #3430.ep_index_meta
option blowing up on an indexing process with many errors. Props @rebeccahum and @felipeelia via #3399.index_output
WP-CLI command help text. Props @bratvanov via #3405.action_edited_term
to call kill_sync
in SyncManager for post Indexable. Props @rebeccahum via #3432.'index'
during sync. Props @felipeelia and @burhandodhy via #3435.webpack
from 5.75.0 to 5.76.3. Props @dependabot via #3412.See: https://github.com/10up/elasticpress/milestone/72?closed=1
Published by felipeelia over 1 year ago
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:
get-search-template
, put-search-template
, and delete-search-template
. Props @oscarssanchez via #3216.--status
parameter to the get-indices
WP-CLI command. Props @felipeelia via #3261.ep_instant_results_per_page
filter for changing the number of results per page in Instant Results. Props @JakePT via #3292.post_parent__in
and post_parent__not_in
. Props @MARQAS via #3300.ep_sync_args
filter. Props @felipeelia and @nickchomey via #3317.ep_user_register_feature
and ep_feature_is_visible
filters. Props @felipeelia via #3334.X-ElasticPress-Request-ID
to help with debugging. Props @felipeelia via #3307.'orderby' => 'none'
in WP_Query. Props @felipeelia via #3318.ep_weighting_configuration_for_search
filter. Props @felipeelia via #3303.--network-wide
flag in WP-CLI commands. Props @MARQAS via #3350.is_available()
helper method in the Feature class. Props @burhandodhy via #3356.get_flag_value()
. Props @oscarssanchez and @felipeelia via #3301.woocommerce_layered_nav_query_post_ids
, woocommerce_unfiltered_product_ids
, and ep_wp_query_search_cached_posts
. Props @burhandodhy via #3230.'elasticpress'
in the Status Report page. Props @MARQAS via #3374.'displayCount'
error for facet. Props @burhandodhy via #3373.http-cache-semantics
from 4.1.0 to 4.1.1. Props @dependabot via #3295.got
from 9.6.0 to 11.8.5 and simple-bin-help
from 1.7.7 to 1.8.0. Props @dependabot via #3290.simple-git
from 3.15.1 to 3.16.0. Props @dependabot via #3278.json5
from 1.0.1 to 1.0.2. Props @dependabot via #3251.See: https://github.com/10up/ElasticPress/milestone/69?closed=1
Published by felipeelia almost 2 years ago
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.
HealthCheckElasticsearch
class, Protected Feature, and #3106. Props @burhandodhy via #3213,#3183, and #3184.put-mapping
WP-CLI command returns an error message if mapping failed. Props @burhandodhy, @JakePT, and @felipeelia via #3206.analyze_log
method of the FailedQueries
class. Props @MARQAS via #3223.get_index_default_per_page
instead of a direct call to Utils\get_option
. Props @burhandodhy via #3163.remove_filters
from the unit tests. Props @burhandodhy via #3220.'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.post_parent
set to 0
not working correctly. Props @JiveDig via #3211.--pretty
flag as real boolean. Props @oscarssanchez via #3185.delete-index --network-wide
throws error when EP is not network activated. Props @burhandodhy via #3172.simple-git
from 3.6.0 to 3.15.1. Props @dependabot via #3190.See: https://github.com/10up/ElasticPress/milestone/70?closed=1
Published by felipeelia almost 2 years ago
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:
elasticpress.InstantResults.Result
JavaScript filter for filtering the component used for Instant Results search results. Props @JakePT via #2959.window.epInstantResults.openModal()
method for developers to manually open Instant Results. Props @JakePT via #2987.stock_status
filter on the WooCommerce Admin Product List. Props @felipeelia and @jakgsl via #3036.ep_autosuggest_query_args
filter, to change WP Query args of the autosuggest query template. Props @felipeelia via #3038.ep_post_filters
filter and refactor of the Post::format_args
method. Props @felipeelia via #3044.get_index_settings()
method to retrieve index settings. Props @rebeccahum via #3126.ep_woocommerce_default_supported_post_types
and ep_woocommerce_admin_searchable_post_types
filters. Props @ecaron via #3029.Renderer::order_by_selected
visibility. Props @burhandodhy via #3009.meta_query
clause when using the meta_key
parameter. Props @felipeelia, @MARQAS, and @Greygooo via #2997.'all'
as the fields
parameter of WP_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.parse_orderby
to make it easier to read. Props @felipeelia via #3042.show_ui
is set to false. Props @burhandodhy via #2958.Utils\*_option()
when possible. Props @rebeccahum via #3078 and #3081.allow_excerpt_html
. Props @burhandodhy via #3093.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.
sites
parameter for WP_Query, WP_Term_Query and WP_Comment_Query was deprecated in favor of the new site__in
and site__not_in
. Props @burhandodhy via #2991.get_the_excerpt
is called outside the Loop and Excerpt highlighting option is enabled. Props @burhandodhy via #3114.put-mapping --network-wide
throws error when plugin is not activated on network. Props @burhandodhy via #3041.ep_woocommerce_admin_products_list_search_fields
filter. Props @felipeelia via #3124._source
is not returned in query hit. Props @pschoffer via #2992.$update
on synonyms page. Props @burhandodhy via #3102.uasort()
usage. Props @burhandodhy via #3091.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
Published by felipeelia about 2 years ago
This release fixes some bugs and also adds some new filters.
ep_facet_taxonomy_terms
filter to filter the Facet terms. Props @burhandodhy and @felipeelia via #2989.ep.Autosuggest.itemHTML
, ep.Autosuggest.listHTML
, ep.Autosuggest.query
, and ep.Autosuggest.element
JavaScript hooks to Autosuggest and migrated filter functions to hook callbacks for backwards compatibility. Props @JakePT via #2983.See: https://github.com/10up/ElasticPress/milestone/68?closed=1
Published by felipeelia about 2 years ago
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!
epwr_decay_field
filter to set the decay field for date weighting. Props @MARQAS and @HypeAU via #2907.window.epAutosuggestQueryFilter()
function in JavaScript. Props @johnwatkins0 via #2909.window.epAutosuggestListItemsHTMLFilter()
function in JavaScript. Props @JakePT via #2902.window.epAutosuggestElementFilter()
function in JavaScript. Props @JakePT via #2902.wp_cache_flush_group()
for autosuggest when available. Props @tillkruss via #2916.wp_cache_flush_runtime()
when available. Props @tillkruss, @felipeelia, and @tott via #2915.get_term_tree()
. Props @rebeccahum via #2883.block.json
. Props @JakePT via #2898.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 |
recreate-network-alias
CLI command when called on single site. Props @burhandodhy via #2906.format_hits_as_terms
to use WP_Term
instead of stdClass
to match WordPress expectations. Props @jonathanstegall via #2913.post_excerpt
with highlighted results from within AJAX and other integrated contexts. Props @nickchomey via #2941.terser
from 5.12.0 to 5.14.2. Props @dependabot via #2900.@wordpress/env
from 4.5.0 to 5.0.0. Props @felipeelia via #2925.See: https://github.com/10up/ElasticPress/milestone/64?closed=1
Published by felipeelia over 2 years ago
This is a bug fix release.
ep_enable_do_weighting
filter and re-factor with new function apply_weighting
. Props @rebeccahum and @felipeelia via #2857.ep_default_analyzer_char_filters
filter. Props @rebeccahum via #2872.update_index_settings()
now accounts for the index closing action timing out and re-opens index if closed. Props @rebeccahum via #2843.moment
from 2.29.2 to 2.29.4. Props @dependabot via #2890.See: https://github.com/10up/ElasticPress/milestone/66?closed=1