ElasticPress

A fast and flexible search and query engine for WordPress.

GPL-2.0 License

Downloads
273.8K
Stars
1.2K
Committers
161

Bot releases are hidden (Show)

ElasticPress - Version 4.2.1

Published by felipeelia over 2 years ago

This is a bug fix release.

Added

Changed

Fixed

See: https://github.com/10up/ElasticPress/milestone/65?closed=1

ElasticPress - Version 4.2.0

Published by felipeelia over 2 years ago

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

Changed

  • Facets widgets rendered by a separate class. Props @felipeelia via #2712.
  • Deprecated ElasticPress\Feature\Facets\Widget::get_facet_term_html() in favor of ElasticPress\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/components and @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

Security

See: https://github.com/10up/ElasticPress/milestone/63?closed=1

ElasticPress - Version 4.1.0

Published by felipeelia over 2 years ago

Added

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

Security

  • Bumped node-forge from 1.2.1 to 1.3.0. Props @dependabot via #2678.
  • Bumped @wordpress/env from 4.2.2 to 4.4.0, and minimist from 1.2.5 to 1.2.6. Props @felipeelia via #2680.

See: https://github.com/10up/ElasticPress/milestone/62?closed=1

ElasticPress - Version 4.0.1

Published by felipeelia over 2 years ago

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

See: https://github.com/10up/ElasticPress/milestone/61?closed=1

ElasticPress - Version 4.0.0

Published by felipeelia over 2 years ago

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

Changed

Removed

  • Built assets (minified JavaScript and CSS files) from the repository. Props @felipeelia and @jeffpaul via #2486.
  • Duplicate case 'description': from ElasticPress\Indexable\Term\Term::parse_orderby. Props @sjinks via #2533.

Fixed

Security

  • Use most recent external GitHub Actions versions. Props @felipeelia and @qazaqstan2025 via #2535.
  • Updated 10up-toolkit from 1.0.13 to 3.0.1, jsdoc from 3.6.7 to 3.6.9, terser-webpack-plugin from 5.2.4 to 5.3.0, @wordpress/env from 4.1.1 to 4.2.2, and promise-polyfill from 8.2.0 to 8.2.1. Props @felipeelia via #2559, #2611, and #2631.
  • Bumped follow-redirects from 1.14.7 to 1.14.9. Props @dependabot via #2609.

See: https://github.com/10up/ElasticPress/milestone/58?closed=1

ElasticPress - Version 3.6.6

Published by felipeelia almost 3 years ago

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

Changed

Fixed

See: https://github.com/10up/ElasticPress/milestone/60?closed=1

ElasticPress - Version 4.0.0 Beta 1

Published by felipeelia almost 3 years ago

This software is still in development, so it is not recommended to run this version on a production site.

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

Changed

Removed

Fixed

See: https://github.com/10up/ElasticPress/milestone/52?closed=1

ElasticPress - Version 3.6.5

Published by felipeelia almost 3 years ago

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

Changed

  • Add $type parameter to ep_do_intercept_request filter. Props @rebeccahum and @felipeelia via #2443.
  • Cache the detected Posts mapping version, avoiding get_mapping calls 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.js file was split in notice.min.js and weighting.min.js, being loaded accordingly. Props @felipeelia and @barryceelen via #2476.

Fixed

Security

See: https://github.com/10up/ElasticPress/milestone/57?closed=1

ElasticPress - Version 3.6.4

Published by felipeelia almost 3 years ago

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

Changed

Fixed

See: https://github.com/10up/ElasticPress/milestone/56?closed=1

ElasticPress - Version 3.6.3

Published by felipeelia about 3 years ago

Note that the upcoming ElasticPress 3.7.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 3.7.0 will be 7.0+.

Added

  • New ep_facet_widget_term_html and ep_facet_widget_term_label filters to the Facet widget for filtering the HTML and label of individual facet terms. Props @JakePT, @Rahmon, and @felipeelia via #2363.
  • New ep_set_sort filter for changing the sort clause of the ES query if orderby is 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

Security

  • Bumped 10up-toolkit from 1.0.11 to 1.0.12, terser-webpack-plugin from 5.1.4 to 5.2.4, @wordpress/api-fetch from 3.21.5 to 3.23.1, and @wordpress/i18n from 3.18.0 to 3.20.0. Props @felipeelia via #2372.

See: https://github.com/10up/ElasticPress/milestone/55?closed=1

ElasticPress - Version 3.6.2

Published by felipeelia about 3 years ago

Note that the upcoming ElasticPress 3.7.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 3.7.0 will be 7.0+.

Added

Changed

Removed

Fixed

Security

See: https://github.com/10up/ElasticPress/milestone/54?closed=1

ElasticPress - Version 3.6.1

Published by felipeelia over 3 years ago

Note that the upcoming ElasticPress 3.7.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. Passing true to that, the ElasticPress version will be added to the User-Agent header in the request. Props @felipeelia via #2264
  • Flagged 3.6.0 as version that needs a full reindex. Props @adiloztaser and @felipeelia via #2264

Changed

Fixed

  • Encode the Search Term header before sending it to ElasticPress.io. Props @felipeelia via #2265

See: https://github.com/10up/ElasticPress/pulls?q=is%3Apr+milestone%3A3.6.1+is%3Aclosed+

ElasticPress - Version 3.6.0

Published by felipeelia over 3 years ago

Note that the upcoming ElasticPress 3.7.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.

Breaking Changes

Added

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 call date_i18n() once. Props @WPprodigy and @Rahmon via #2214

Removed

Fixed

Security

See: https://github.com/10up/ElasticPress/pulls?q=is%3Apr+milestone%3A3.6.0+is%3Aclosed+

ElasticPress - Version 3.5.6

Published by brandwaffle over 3 years ago

This release fixes some bugs and also adds some new actions and filters.

Security Fix:

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_clause to let developers decide where the highlight clause should be added to the ES query. Props @felipeelia
  • Added the new filter epwr_weight and changed the default way scores are applied based on post date. Props @Rahmon

See: https://github.com/10up/ElasticPress/pulls?utf8=%E2%9C%93&q=is%3Apr+milestone%3A3.5.6+is%3Aclosed+

ElasticPress - Version 3.5.5

Published by brandwaffle over 3 years ago

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-loading class to the search form while autosuggestions are loading. Props @JakePT
  • Add the new set-algorithm-version and get-algorithm-version WP-CLI commands. Props @felipeelia
  • Add a new ep_query_weighting_fields filter. Props @felipeelia and @tott
  • Add two parameters to the ep_formatted_args_query filter. Props @felipeelia and @tott
  • Add the new set-algorithm-version and get-algorithm-version WP-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, and ep_cli_after_clear_index. Props @felipeelia and @Rahmon
ElasticPress - Version 3.5.4

Published by brandwaffle over 3 years ago

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 from parameter in $formatted_args to an integer to prevent errors if empty. Props @CyberCyclone

Enhancements:

  • Add an ep_is_facetable filter to enable custom control over where to show or hide Facets. Props [@moraleida]
  • Improvements to contributing documentation and tests. Props @jeffpaul and @felipeelia
ElasticPress -

Published by brandwaffle over 3 years ago

[3.5.3]

This is a bug fix release.

Bug Fixes:

  • Fixed a bug where the ep-synonym post 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
ElasticPress - Version 3.5.2

Published by brandwaffle almost 4 years ago

Version 3.5.2 is a bug fix release with minor additions to functionality, largely in the form of new hooks and filters. You can read more about these changes below.

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 filters ep_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_args filter. Props @pjohanneson
  • Add SKU field to Weighting Engine if WooCommerce is active and fix issue with overriding search_fields. Props @felipeelia
  • Support author__in and author__not_in queries. Props @dinhtungdu
  • Update multiple unit tests. Props @petenelson
  • Show CLI indexing status in EP dashboard. Props @Rahmon
  • Add ep_query_send_ep_search_term_header filter and don’t send EP-Search-Term header if not using ElasticPress.io. Props @felipeelia
ElasticPress - Version 3.5

Published by tlovett1 almost 4 years ago

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', '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.
ElasticPress - Version 3.4.3

Published by tlovett1 about 4 years ago

Enhancements:

  • Remove jQuery from front end JavaScript dependencies.

Bug Fixes:

  • Fix accessibility bug on autosuggest.
  • Fix broken facet search.