The beta testers had no complaints, so here goes: Relevanssi Premium 1.10 and a ton of updates.
- Made some changes to how user profiles and taxonomy terms are handled. As a result, there should be less warning notices. For user profiles, you can now find the user id in $post->user_id and for taxonomies, the term id is $post->term_id.
- Deleting users and taxonomy terms caused problems. Fixed that.
- Fixed a notice about undefined variable on plugin update pages.
- Small bug fixes on search to remove warning notices.
- New filter: `relevanssi_index_custom_fields` can be used to modify the list of custom fields to index.
- Deleting menus caused a warning. That is now fixed.
- Relevanssi has an option to disable IP logging (which is actually illegal in some countries). Thanks to Stefan Eufinger.
- Searching in subcategories worked sometimes, but not always. Thanks to Faebu.
- The “Limit searches” option didn’t work too well in the case of strong weightings, as it didn’t take note of any weights. Now it works better.
- Added a note about disabling custom excerpts when they are not needed – they can slow down the search quite a bit.
- New filter: `relevanssi_options_capability` can be used to modify the capability required to see the options page (default is `manage_options`).
- External search highlighting from Google doesn’t work anymore, because Google doesn’t pass the search term in referrer fields. Fixed the highlighting for Yahoo searches.
- Fixed the way IDF is calculated to account some extreme cases with small databases.
- New filter: `relevanssi_index_custom_fields` gives added control over which custom fields are indexed.
- Fixed filter: `relevanssi_pre_excerpt_content` wasn’t working properly.
- Relevanssi now supports tax_query, for most part. You can query multiple taxonomies, use relation AND and OR, use operators AND, IN and NOT IN and choose include_children (which defaults to true). Old `taxonomy` and `term` still work, but I recommend using tax_query for the level of control it offers.
- Relevanssi now works better with category restrictions. The extra `cats` query variable is no longer necessary, Relevanssi can now read multiple categories from `cat`. You can also use `category__and`, `category__in` and `category__not_in`.
- Same goes with tags: `tags` is now longer necessary. Relevanssi has full support for `tag`, `tag_id`, `tag__and`, `tag__in`, `tag__not_in`, `tag_slug__and`, `tag_slug__in` and `tag_slug__not_in`. For `tag`, both `term1+term2` and `term1,term2` is supported.
- Relevanssi now supports `author_name` and negative values for `author`.
- Relevanssi now supports `offset` query variable.
- Relevanssi now supports meta_query. You can use all comparisons (also EXISTS and NOT EXISTS, even if you don’t have WP 3.5). You can also use the older `meta_key` and `meta_value` query variables, including all the comparisons. I have not tested all possible meta_query constructions, so bug reports of things that don’t work as expected are welcome.
- New index on the database makes some database operations faster.
- New filter: `relevanssi_user_add_data` lets you add extra data to user profiles before indexing them.
- Removed a bug that prevents one-character words from being indexed in titles, despite the minimum word length setting.
- Removed a warning when searching for nothing.
- Fixes a warning about $wpdb->prepare() caused by a change in WordPress 3.5.
The biggest changes are in the way the taxonomy and meta queries work. Now you can take almost any WP_Query parameter and use it to modify the Relevanssi results. Building complex taxonomy queries is now much easier than before.
I’ll update the manual with the new filters in the near future.