Relevanssi Light

Description

Relevanssi Light replaces the default WP search with a search that uses the fulltext indexing capabilities of the database. It requires a modern version of MySQL or MariaDB.

Relevanssi Light is very powerful, as it leverages your database to do all the hard work. Even large sites will return relevant results quickly and efficiently. Indexing is fully automatic and always handled by your database server.

Thanks to Otto Kekäläinen (ottok) for the original idea, development push, and all the feedback.

Feedback is welcome. I follow the support forums here, but you can also post an issue on the Relevanssi Light GitHub page. That’s where the active development happens.

Comparison between Relevanssi Light and Relevanssi

Relevanssi Light is a simple, easy-to-use tool with limited capabilities. It provides very fast search results with better quality, but with little room for customization and adjustment.

Relevanssi is a full-fledged search solution that offers lots of features and full control over the search index and the search results. It generates useful excerpts with the search terms highlighted, can provide “Did you mean” suggestions, keeps logs and much more. Indexing and searching is much slower than with Relevanssi Light.

Relevanssi Premium adds more features to Relevanssi: it can index user profiles, taxonomy terms, and PDF content, generate related posts lists and more.

Installation

Relevanssi Light requires a database that supports fulltext indexing. Recent versions of MySQL and MariaDB should be fine.

  1. Install the plugin
  2. Activate the plugin
  3. You’re done!

Relevanssi Light really is this simple to use. No changes are required to your templates or other configuration. Relevanssi Light automatically adjusts the database queries to use the fulltext index it creates.

Activating the plugin for the first time may cause a timeout. That’s just inconvenient, not a real problem: all the database changes still happened and everything should work just fine.

Relevanssi Light is kept very lean on purpose. There are few settings to adjust. If you like adjusting settings, Relevanssi offers lots of settings to adjust.

Natural language vs Boolean mode

Fulltext indexing offers two modes of operation. In Natural language mode there are no special operators and searches consists of simple keywords. In Boolean mode, special operators can be used. For a list of these, see Full-Text Index Overview in MariaBD Knowledge Base.

Relevanssi Light uses Natural language mode, as it’s the better choice for large majority of cases. If you need to use Boolean mode, you can enable it by adding this to your theme functions.php:

add_filter( 'relevanssi_light_boolean_mode', '__return_true' );

Including custom field content and more

By default Relevanssi Light includes post titles, post content and excerpts in the fulltext index. Sometimes it’s necessary to include other content, for example custom fields. Relevanssi Light facilitates this by adding a new column, relevanssi_light_data to the wp_posts database tables. Contents of this column are added to the fulltext index.

Relevanssi Light has a method of adding custom field content to this column. It is done by providing a list of custom field names with the relevanssi_light_custom_fields filter hook. For example, in order to include the custom fields _sku and seo_meta_desc in the index, you could add this to the theme functions.php:

add_filter( 'relevanssi_light_custom_fields', function( $fields ) { return array( '_sku', 'seo_meta_desc' ); } );

Now when posts are saved, the custom fields will be added in the index. NOTE: This is not automatically applied to all existing posts, only when the post is saved.

For more complicated cases, you can override the default relevanssi_light_update_post_data() function Relevanssi Light uses (it’s a pluggable function; see the source code for more details). For even more complicated cases, I would recommend using Relevanssi, which will give you a lot more power to control what is indexed.

Reviews

Mayo 6, 2024
Indexing custom fields in Wordpress is an old problem with the platform that can generally only be solved with more complex and heavy plugins that require a total change in the way you search. Even though I like the original Relevanssi, this light version is much simpler to use, has a clean UI and doesn’t involve a lot of work with many settings to manage, in addition to not needing posts to always be reindexed. Thanks!
Enero 5, 2022 1 reply
I’m a big fan of Relevanssi (the original full plugin) but this time I thought I’d try the light version. Our site is pretty simple. About 1000 posts. I just needed something that could handle apostrophes in the post title gracefully (for example, a search for “Jester’s Maze” brought up “not found” with the native Wordpress search and we needed it to pull up the story with that title). This light plugin DID handle the apostrophe properly, however the overall relevancy of the search results was very poor. “Jester’s Maze” came up in the results, but not as the first result. In a search for “amber eyes”, I had to scroll several pages to find the story titled “Amber Eyes”. If the story title is an exact match with the search terms (not counting punctuation and capitalization), it should bring up that story FIRST. I had to uninstall this light version and install the full-fledged Relevanssi plugin to get the search results to behave properly. Disappointing, but I’m glad the bigger plugin is out there.
Pebrero 4, 2021
Works really well and the plugin author is very helpful 🙂 It’s also very well coded with full documentation, as well as hooks and pluggable functions to allow for extension and customisation.
Hulyo 2, 2020
Great replacement for the default WordPress search. Worked for a database of 25,000 posts when the default WordPress search would choke and bring down the site with a database connection error.
Read all 6 reviews

Contributors & Developers

“Relevanssi Light” is open source software. The following people have contributed to this plugin.

Contributors

“Relevanssi Light” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Relevanssi Light” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.2.2

  • Fixes a minor SQL injection vulnerability.

1.2.1

  • Fixes errors in admin searches.

1.2

  • Makes the ‘Process all posts’ cover all posts, not just the post type post.

1.1

  • Fixes the network activation. Now when Relevanssi Light is network activated on a multisite installation, the database changes required are implemented on all network sites (as soon as someone visits the site admin dashboard).

1.0

  • Adds an settings page to show information about the plugin.
  • Database alterations are done asynchronously to avoid plugin activation stalling.
  • Uninstalling the plugin in multisite context now works.

0.1

  • First release, minimum viable product!