SearchWP News

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

SearchWP 3.0 is here!

February 19, 2019 in

SearchWP version 3.0 has been made available to all active license holders. There are a few big changes in this release that you should be aware of:

  • Rebuilt the Advanced settings screen
  • Stopword management
  • Integrated a number of extensions
  • Rebuilt the Stats screen
  • First party Advanced Custom Field support
  • Support for Gutenberg blocks (introduced in WordPress 5.0)
  • Improvements to SWP_Query
  • Bug fixes

Here’s a quick (3 minute video) going over a few of the UI updates, followed by a more detailed breakdown of what’s new/changed in version 3.0!

Advanced Settings Screen

The Advanced tab of the SearchWP settings screen has been rebuilt and modernized in many ways, take a look!

Screenshot of SearchWP's Advanced settings screen

The entire interface was re-thought from the ground up based on common use cases. The goal was to modernize the interface based on lessons learned from rebuilding the engine configuration interface in version 2.9.

Stopword Management

One of the biggest changes made to the Advanced settings screen is the inclusion of Stopword management. Stopwords are an important part of any search engine setup, and SearchWP 3.0 makes it much easier for you to manage your Stopwords. Prior to version 3.0 the only way to customize this list was through a hook, but now:

  • Localized defaults are used upon installation of SearchWP
  • Stopword suggestions are made based on the content of your site
  • Actions to sort/remove/restore Stopwords

Beyond implementing a localized list of default stopwords, SearchWP 3.0 will suggest additional stopwords based on the content of your site.

Screenshot of suggested stopwords in SearchWP

This will help to further optimize your index resulting in faster searches with more relevant results!

Find out more

Integrated Extensions

SearchWP’s Extensions have been a big contributor to its adoption. Certain Extensions were built as future features by design, and the time has come to directly integrate some of the most popular Extensions directly into SearchWP itself. The following Extensions have been deprecated in favor of their core counterparts:

  • Term Synonyms
  • Term Highlight
  • Manage Ignored
  • LIKE Terms
  • Fuzzy Matches

Term Synonyms have been directly integrated into the Advanced settings screen, and the UI has been improved in a number of ways as well:

Screenshot of synonym management in SearchWP

Synonym management in SearchWP

Term Highlight has been integrated as a Setting that can be enabled with a single tick of a checkbox, managing ignored terms has been moved directly into the Stats screen (more on that in a bit), and partial matches has been improved in a number of ways as well.

Prior to SearchWP 3.0 there were two Extensions to help with partial matches; LIKE Terms and Fuzzy Matches. They both did different things, but at first glance it was very confusing as to why you’d use one over the other, or both for that matter. Partial matches have been directly integrated into SearchWP 3.0, and the details of the implementation have been made available in the documentation for that feature.

Rebuilt Stats Screen

Search statistics have always been an important part of the data provided by SearchWP to site owners. Being able to monitor what your visitors are actively searching for can be a big help in determining what content changes to make on your site. The existing stats screen hadn’t changed much since version 1.0 and with the need to integrate management of ignored terms and the ability to reset the statistics it was time to rebuild and modernize it.

Screenshot of search statistics in SearchWP 3.0

The charting library has been updated and UI rebuilt in a more modern way which will make stats review a much more pleasant experience going forward. If you’re looking to get more out of your search stats, be sure to check out the Metrics extension!

Advanced Custom Fields Support

SearchWP has always considered custom fields to be first party content, and many SearchWP users are big fans of Advanced Custom Fields. The documentation for SearchWP mentions ACF a lot, and as of SearchWP 3.0 the Custom Fields dropdown will now automatically support “repeatable” fields by utilizing SearchWP’s ability to partially match meta keys:

Screenshot of ACF repeatables in SearchWP

Adding a repeatable entry will include all sub-fields of that repeatable ACF field, saving you the trouble of adding individual sub-fields. This functionality has been supported by SearchWP but prior to 3.0 you needed to use your own hooks to explicitly add support for partial meta key matches.

SearchWP 3.0 will also remove ACF reference fields (the fields with the same meta key but prefixed with an underscore) to clean things up for you.

Gutenberg Block Parsing

By default SearchWP 3.0 will parse content that has been input using blocks (a.k.a. Gutenberg) as introduced in WordPress 5.0. For the time being there is no way to give individual blocks specific weights, all of the content generated from parsing the block will be index as it was entered into the main post content.

If you would prefer that SearchWP not parse your blocks, you can add this hook to a custom plugin or your theme’s functions.php:

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

If you feel that giving control over individual blocks would be useful in an upcoming version of SearchWP please send over your input!

Improvements to SWP_Query

The goal of SWP_Query was to mimic WP_Query so as to save you trouble when migrating from a traditional WordPress Loop for search results.

As of SearchWP version 3.0, SWP_Query now supports a more traditional Loop like so:

<?php
$swp_query = new SWP_Query( array( 's' => 'coffee' ) );
if ( $swp_query->have_posts() ) {
while ( $swp_query->have_posts() ) {
$swp_query->the_post();
get_template_part( 'content', 'search' );
}
} else {
echo '<p>No results found!</p>';
}
view raw functions.php hosted with ❤ by GitHub

These new methods should make it easier for everyone to take advantage of what SWP_Query has to offer!

Bug Fixes and Improvements

There were a number of bug fixes and performance optimizations rolled into SearchWP 3.0 as well, here’s the full changelog:

  • [New] Advanced Settings screen rebuilt and optimized
  • [New] searchwp_legacy_advanced_settings filter controls whether the legacy Advanced Settings screen is used
  • [New] Integrated stopword management on the Advanced Settings screen
  • [New] Default stopwords for the following locales: CS, DA, DE, EN, ES, FI, GA, IT, NL, PL, PT, RO, RU, SV, TR
  • [New] Suggested stopwords based on existing site content
  • [New] Integrated Term Synonyms and improved management UI (extension is now deprecated)
  • [New] Integrated Term Highlight (extension is now deprecated)
  • [New] Integrated LIKE Terms and Fuzzy Matches (extensions are now deprecated)
  • [New] Adds setting to parse Shortcodes during indexing (e.g. UI for searchwp_do_shortcodes)
  • [New] SWP_Query now has the following methods: have_posts, rewind_posts, the_post, next_post allowing for a more traditional Loop
  • [New] Custom Fields dropdown now supports meta groups
  • [New] Automatic UI for “repeatable” field groups in Advanced Custom Fields
  • [New] Statistics screen rebuilt and optimized
  • [New] Management of ignored searches is now built in to the Stats screen
  • [New] Resetting of statistics is now built in to the Stats screen
  • [New] searchwp_statistics_popular_days_{$days} filter allows overriding of popular search queries
  • [New] searchwp_legacy_stats filter controls whether the legacy Advanced Settings screen is used
  • [New] searchwp_results_found_posts filter allows modification of SearchWP’s found posts
  • [New] searchwp_results_max_num_pages filter allows modification of SearchWP’s maximum number of pages
  • [New] Support for programmatic license management. See SearchWP_License class
  • [New] Adds (dismiss-able) notice during admin searches when admin searches are not hijacked by SearchWP
  • [New] Adds support for WordPress’ block editor during indexing (blocks will be parsed prior to indexing)
  • [Fix] Adds support for results limiting when parent attribution is enabled
  • [Fix] Better handling of emoji during indexing
  • [Fix] Prevent pattern whitelist matches from being counted twice
  • [Fix] Prevent data mutation when creating multiple supplemental engines at once
  • [Change] Indexing emoji is now opt-in using the searchwp_index_emoji filter

Version 2.9.17 of SearchWP includes a fix for delta updates that in some cases caused extensive resource usage, it is a recommended update for all active license holders.

Full changelog:

  • [Improvement] Better handling of post status and comment triggers of delta updates, reducing significant overhead in some cases

Version 2.9.16 Now Available

September 21, 2018 in

Version 2.9.16 of SearchWP is now available for all active license holders. In this release SWP_Query received a few updates and a number of fixes have been put in place.

Full changelog:

  • [Fix] Fixes an issue that prevented proper respect of searchwp_background_deltas
  • [Fix] Fixes an issue with debug log permissions in some cases
  • [Fix] Fixes an issue where Custom Field keys were not accurately retrieved in older versions of WordPress
  • [Fix] Fixes settings screen JavaScript error in IE11
  • [Fix] Fixes an issue preventing the application of searchwp_search_query_order
  • [Improvement] Notes the requirement that the index must be rebuilt after ticking checkbox to remove minimum character count
  • [New] Adds post_status parameter to SWP_Query
  • [New] Adds order parameter to SWP_Query
  • [New] Adds limited orderby parameter to SWP_Query

Version 2.9.15 Now Available

September 7, 2018 in

SearchWP version 2.9.15 is available to all active license holders. This is a maintenance and bug fix release, but it also improves the debug log in a number of ways which will reduce some friction when receiving support.

Full changelog:

  • [Fix] Fixes an issue where in some cases delta update requests were not processed correctly
  • [Fix] PHP Warning cleanup
  • [Improvement] The debug log generation process has been improved and the debug log more streamlined/readable
  • [New] New filter searchwp_debug_detailed to control whether detailed items are logged when debugging is enabled

Version 1.0.3 of Metrics has been released. It is primarily a performance release and is recommended to all Metrics users. Full changelog:

  • [Improvement] Improves performance when generating Insights
  • [New] Settings button now has its own capability
  • [New] New filter searchwp_metrics_capability_settings to modify the Settings button capability

Enjoy!

Version 1.1.4 of Term Archive Priority has been made available to all active license holders. Full changelog:

  • [New] New filter searchwp_term_archive_term_args
  • [Improvement] Better support for Live Ajax Search searches
  • [Update] Updated updater

SearchWP’s Related extension has been updated to version 1.1. There is now a Widget available should you choose to take advantage of that, but please know that the Widget is for placement only, the template loader is still in full effect and responsible for display of the related entries.

Full changelog:

  • [New] Adds Widget
  • [New] New hooks to control meta box placement searchwp_related_meta_box_context and searchwp_related_meta_box_priority

Version 2.1.14 of Term Highlight has been made available to all active license holders. Full changelog:

  • [Fix] Fixes an issue where highlighting was applied when no search term was provided
  • [Fix] Restricts global excerpt generation according to applicable meta keys only
  • [Improvement] Better highlighting when terms are flanked with punctuation

SearchWP 2.9.14 has been released and is a recommended update to all active license holders. This release prefaces a new Extension that will be released shortly! 😉

  • [Fix] Fixes false positive error message relating to HTTP Basic Authentication
  • [Fix] Resolves an issue preventing translations from loading as expected
  • [Change] Algorithm SQL has been updated to be more specific when considering Custom Fields and Taxonomies
  • [New] New filter searchwp_dashboard_widget_transient_ttl that allows for customization of cache duration of Dashboard Widget data
Fix Search on Your Site. No Coding Required!

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

Get SearchWP