SearchWP News

View plugin news, catch up on recent releases, and find out what's coming to SearchWP!

Release: SearchWP 3.1.6

November 15, 2019 in

SearchWP 3.1.6 is a recommended update for all active license holders as it cleans up a few bugs and implements some performance enhancements. It also better integrates with WordPress 5.3.

Full changelog:

  • [Change] Default partial match minimum length updated to 3
  • [Improvement] Handling of quoted searches when highlighting
  • [Improvement] Integration with WordPress 5.3
  • [Improvement] Exact matches given more weight when finding partial matches
  • [Fix] SWP_Query quoted search handling in some cases

SearchWP 3.1.5 is now available to all license holders. This is a minor release that implements a couple performance optimizations.

Full changelog:

  • [Improvement] Performance when considering document processing
  • [Fix] Partial matches resource usage

Version 3.1.4 of SearchWP has been made available for all active license holders, it is a recommended update that fixes a couple of performance issues that will benefit everyone.

Full changelog:

3.1.4

  • [Fix] Regression introduced when debugging is enabled and FS_METHOD = ftpext is imposed
  • [Fix] Custom built admin searches not working as expected in some cases
  • [Improvement] Search query performance
  • [Improvement] Handling of AND logic when considering partial matches and synonyms
  • [Improvement] Improve performance of partial match handling
  • [Improvement] Prevention of redundant queries in some cases
  • [New] New filter searchwp_th_excerpt_consider_comments to consider Comments when generating global excerpts if no highlight is found

Today is a good day, SearchWP 3.1 has been released! There are a number of features included in this release that have been (heavily) requested for some time, so I’m very happy to have them available as of today!

Quoted phrase searches!

A (somewhat unknown) feature of many search engines is the ability to wrap a search query in double quotes to restrict matches to results that have an exact match for that search query.

Take for example searching coffee mug vs. "coffee mug"

The latter would restrict results to only those that have coffee mug appearing exactly as such in the content. For a long time this was a limitation due to the way SearchWP operates (SearchWP is a token-based system, so context such as this is lost during the indexing process) but as of version 3.1 SearchWP now supports these quoted searches!

Please note, however, that quoted searches are not fully supported in SearchWP, there are some caveats! For more information please see the documentation for quoted searches. As a result of these caveats, this feature is opt-in and can be enabled on the Advanced tab of the SearchWP settings screen.

“Did you mean?”

Another feature that has been added to SearchWP 3.1 is the ability to automatically suggest a revised search if the original search did not produce any results. This comes in very handy when considering slight misspellings during searches.

When this option is enabled (which can be done on the Advanced tab of the SearchWP settings screen) SearchWP will keep an eye out for cases like this and automatically revise the search with a better match. The results from that better match will be displayed, along with a message on the screen indicating that a revised search has taken place. For more information please see the documentation for “Did you mean?” searches.

That’s not all!

As with all releases of SearchWP, version 3.1 also brings with it a number of bug fixes and lower level optimizations. Some of those enhancements include better handling of Synonyms, core support for additional keyword stemming locales, bug fixes with term highlighting, and quite a bit more!

Full changelog:

  • [Change] Partial term matching now requires PHP 5.4+
  • [Change] Synonym handling has been improved, for full explanation see https://searchwp.com/?p=193232
  • [New] Support (with caveats) for quoted/phrase/sentence searches, for more information see https://searchwp.com/?p=190759
  • [New] Automatic “Did you mean” handling for misspelled searches, for more information see https://searchwp.com/?p=190545
  • [New] Adds core support for keyword stemming for these language codes: EN, DA, NL, FR, DE, IT, NB, NN, PT, RO, RU, ES, SV (if you are using an Extension you can remove it)
  • [New] New filter searchwp_query_collate_override to override table COLLATE
  • [New] New filter searchwp_th_minimum_word_length to control highlighter minimum word length
  • [New] New filter searchwp_persist_extra_metadata to control whether Extra Metadata is persisted (e.g. to support quoted searches for that data)
  • [New] Detection for background indexer communication failure in some cases
  • [Improvement] Global excerpts now implement WordPress’ excerpt_more output where applicable
  • [Improvement] Partial match highlighting is more accurate
  • [Improvement] JavaScript bundlers have been reconfigured and optimized
  • [Fix] Account for AND logic refinement being too aggressive in some cases
  • [Fix] Trigger index when scheduled posts are published
  • [Fix] Delta updates when editing via Quick Edit
  • [Fix] Better checks against index when evaluating partial matches
  • [Fix] SWP_Query results are no longer incorrectly overridden with subsequent calls to SWP_Query->get_posts()
  • [Fix] Highlighter partial match setting now defaults to core partial match setting
  • [Fix] Warning when processing purge queue in some cases
  • [Fix] Parent weight transfer for Media is no longer enabled by default
  • [Fix] Global highlight functions are now initialized in a more accessible way
  • [Fix] z-index problem when adding a Post Type to an engine
  • [Fix] More consistent handling of internal metadata types
  • [Fix] Prevent inapplicable post types from being considered for search when in the WordPress Dashboard
  • [Fix] Take exclusive regex matches into consideration when tokenizing
  • [Update] Translation source

Prior to version 3.1 of SearchWP (and also in Term Synonyms when it was a standalone Extension) Synonyms were handled differently than they are in version 3.1 and later.

Previously, the implementation of Synonyms was a bit short sighted in that it assumed the source would be a single term. It turns out that there are many cases where the source should be multiple terms and handled accordingly.

SearchWP 3.1 has learned this.

Secondly, term replacement was too aggressive in the initial implementation, and replacements were made as each Synonym was processed. In some cases this resulted in a resulting search string that was far too limited and/or abstract to be useful any longer.

SearchWP 3.1 has learned from this.

Synonym processing in SearchWP 3.1 is much better for the end result. Multiple source terms now work as expected, and replacements are handled in such a way that aims to end up with the search string that will generate the best results for your visitors.

You can ‘revert’ to the previous implementation of Synonym handling with the following hook:

<?php
add_filter( 'searchwp_synonyms_aggressive', '__return_true' );
view raw functions.php hosted with ❤ by GitHub

SearchWP’s Related Extension has just been updated to version 1.3 and is now available to all active license holders.

This is primarily a bug fix and optimization release but it also includes a new feature that allows you to specify individual entries you’d like to force to include for specific entries:

Screenshot of Related's new Settings

This allows you to manually curate an entry or two and have SearchWP fill in the remaining slots with its search results.

There are a few other small changes and bug fixes that help to make version 1.3 of Related do an even better job of finding related content that updates itself over time automatically.

Enjoy!

Full changelog:

  • [New] Force specific Related entries for each entry
  • [New] Related content is now cached for 12 hours
  • [New] Hook to control query cache TTL in seconds searchwp_related_cache_length
  • [New] Hook to control whether caching is used searchwp_related_cache_enabled
  • [Fix] Auto-append not working in some cases
  • [Fix] Pagination not respected in some cases
  • [Fix] Default keywords not populated in some cases
  • [Fix] Links to documentation
  • [Change] Meta box no longer appears on non-public post types by default
  • [Change] Additional results found if initial results set is too restricted by SearchWP
  • [Update] Translation source
  • [Update] Updated updater

One of SearchWP’s most popular Extensions, Live Ajax Search, has been updated to version 1.4. This update is available to all users as this Extension has been made publicly available on wordpress.org for anyone using WordPress ๐Ÿ‘

In this update the live requests are better optimized (and cancelled when applicable) and updates some accessibility features as well. That said, if anyone has any suggestions for additional enhancements to accessibility it would be terrific if they were posted as repository Issues or even Pull Requests!

There are a couple of other small updates, including the removal of the post type in parenthesis of the default results template. That bit was originally put in place to show the versatility of the plugin, but it turned out to cause confusion during the initial experience of setting up Live Ajax Search so it has been removed.

The update will appear in your WordPress Dashboard, enjoy!

Version 1.3 of Redirects has been made available to all Pro and Pro Plus license holders. Updates include:

  • Redirects are now sortable
  • You can now import/export your Redirects
  • Fixes an issue that prevented saving an empty list of Redirects
  • Updated the updater!

Version 1.6 of Shortcodes has been made available to all active license holders. This release has a few updates to consider:

  • [New] New Shortcode: searchwp_total_results to output the total number of search results
  • [New] Adds placeholder argument to searchwp_search_form Shortcode
  • [Update] Updated updater
Fix keyword search on your site. No coding required!

Now you can utilize all of the content that's gone unrecognized by native WordPress keyword search instantly with SearchWP

Get SearchWP