* New feature: New filter hook `relevanssi_searchform_dropdown_args` filters the arguments for `wp_dropdown_categories()` in search forms.
* Changed behaviour: Search form shortcode taxonomy dropdowns are now sorted alphabetically and not by term ID.
* Minor fix: Caught a bug in excerpt-building with empty words.
* Minor fix: It's now possible to set both `post__in` and `post__not_in` and likewise for `parent__in` and `parent__not_in`.
* Minor fix: The `post_status` is no longer available as a query parameter.
* Security fix: Relevanssi had a vulnerability for SQL injections. Exploiting the vulnerability does require WP admin access. This vulnerability is now fixed.
* Security fix: Relevanssi had a vulnerability for error log injections. Exploiting this vulnerability requires file upload access to the site. This vulnerability is now fixed.
* New feature: New filter hook 'relevanssi_get_attachment_posts_query_final' filters the final SQL query for attachment post fetching.
* Changed behaviour: Relevanssi now skips attachments with 'Server did not respond' errors when reading attachments. This should help with problems coming from attachments that are too big read.
* Minor fix: Improved server timeout error handling for attachment reading.
* Minor fix: Relevanssi didn't strip tags from custom field specific excerpts, and could show zero-hit excerpts for the content.
* Minor fix: Multisite search failed when the search term resolved to nothing in the tokenizer.
* Minor fix: Fixes broken WP CLI progress bars.
* Minor fix: Meta query boolean to array conversion.
* Minor fix: For indexing, stemmer is always in OR mode so that both stemmed word and the original word is indexed.
* New feature: The debugging tab now shows the status of the 'relevanssi_words' option.
* Changed behaviour: The 'relevanssi_index_content' and 'relevanssi_index_titles' filter hooks now get the post object as a second parameter.
* Minor fix: Stop Relevanssi from blocking the feed searches.
* Minor fix: Remove warning from missing blog_id parameter.
* Minor fix: Improve exact match boosts with accented letters.
* Minor fix: Entering synonyms in Polylang all languages mode was possible; it shouldn't be.
* Minor fix: Relevanssi is now blocked in the reusable content block search.
* New feature: Relevanssi can now create custom field specific excerpts that come from one custom field only and know which field that is.
* New feature: You can see the list of indexed custom field names in the indexing and excerpt settings.
* New feature: New filter hook `relevanssi_excerpt_specific_custom_field_content` filters the excerpt custom field content if `relevanssi_excerpt_specific_fields` is enabled.
* Changed behaviour: The `relevanssi_get_custom_field_content()` function now returns an array instead of string. If `relevanssi_excerpt_specific_fields` is off, the previous string return value is returned as a single-item array with the string in index 0. If the setting is on, the array keys are the field names.
* Changed behaviour: The `relevanssi_get_child_pdf_content()` function now returns an array.
* Minor fix: The "none" value in category dropdowns from the searchform shortcode is changed from -1 to 0.
* Minor fix: The stopword population during the multisite installation used the wrong database table, leading to failed population.
* Minor fix: Multisite installation is moved from `wp_insert_site` (priority 10) to `wp_initialize_site` (priority 200) in order to avoid trouble.
* Minor fix: Wildcard search now works in whole word matching, not only in partial matching.
* Minor fix: The Gutenberg sidebar translations didn't show up. Now you should be able to see the sidebar in the right language.
* New feature: You can now add weights to pinned terms to control the order of the pinned posts.
* New feature: New filter hook `relevanssi_add_attachment_scripts` lets you add the attachment javascripts to other post types than `attachment`.
* New feature: New filter hook `relevanssi_highlight_query` lets you modify the search query for highlighting.
* Changed behavior: Relevanssi no longer searches in feed searches by default.
* Minor fix: The filter `relevanssi_get_attachment_url` is now also used when adding the attachment metabox.
* Minor fix: No more crashes from Polylang forced plugin updates.
* Minor fix: PHP 8.1 deprecated FILTER_SANITIZE_STRING, those are now replaced.
* New feature: New filter hook `relevanssi_blocked_field_types` can be used to control which ACF field types are excluded from the index. By default, this includes 'repeater', 'flexible_content', and 'group'.
* New feature: New filter hook `relevanssi_acf_field_object` can be used to filter the ACF field object before Relevanssi indexes it. Return false to have Relevanssi ignore the field type.
* Minor fix: ACF field exclusion is now recursive. If a parent field is excluded, all sub fields will also be excluded.
* Minor fix: The indexing settings tab now checks if the wp_relevanssi database table exists and will create the table if it doesn't.
* Minor fix: Pinning code has been foolproofed to cover some situations that would lead to errors.
* Minor fix: Handling of data attributes in in-document highlighting had a bug that caused problems with third-party plugins.
* New feature: Relevanssi now has a debug mode that will help troubleshooting and support.
* Minor fix: Using the_permalink() caused problems with search result links. That is now fixed. Relevanssi no longer hooks onto `the_permalink` hook and instead uses `post_link` and other similar hooks.
* Minor fix: Click tracking parameters have more control to avoid problems from malformed click tracking data.
This latest update adds new debugging tools, user interface features, and a Relevanssi exclude feature to the ACF field edit screen. There are also several minor bug fixes.
- New feature: Relevanssi now shows the MySQL max_allowed_packet size on the debug tab.
- New feature: Relevanssi now shows the indexing query on the debug tab.
- Premium. New feature: You can now edit pinning and exclusions from Quick Edit.
- Premium. New feature: You can now remove queries from the search log from the query insights page.
- New feature: ACF field settings now include a ‘Exclude from Relevanssi index’ setting. You can use that to exclude ACF fields from the Relevanssi index.
- Premium. Changed behaviour: Click tracking is disabled in multisite searches. It causes problems with wrong links and isn’t very reliable in the best case.
- Premium. Changed behaviour: Plugin translation updates are disabled unless explicitly enabled either from the Overview settings or with the relevanssi_update_translations filter hook.
- Minor fix: Relevanssi was adding extra quotes around search terms in the highlight parameter.
- Minor fix: Metabox fields look nicer on Firefox.
- Premium. Minor fix: Adds the relevanssi_related_posts_cache_id filter to the relevanssi_related_posts() function.
- Minor fix: Yet another update to data attributes in highlighting. Thanks to Faeddur.
- Minor fix: Taxonomy query handling was improved. This should help Polylang users who’ve had problems with Relevanssi ignoring Polylang language restrictions.
- Premium. Minor fix: Negative search terms in AND searches caused problems, but now work better.
- Premium. Minor fix: Pinning phrases that had the same word more than once (e.g. ‘word by word’) didn’t work. Now it works better.