All Low add-ons are now owned by EEHarbor. Read the blog post.
All add-ons

Low Search

Just $89.00 per license

Compatibility: EE2, EE3, EE4, EE5
Latest release: 6.2.1 (released 2020-06-16)
Licensing: Commercial License Agreement
Version Release date Updates
6.2.1 2020-06-16
  • Fixed a bug that could occur when using SQL parameters
  • Fixed deprecation message when using low_search_no_results
  • Fixed a bug where an error appeared after removing a shortcut
  • Fixed a bug where exact matching would not work in some cases
6.2.0 2019-03-09
  • Improved categories filter to better combine inclusion and exclusion between groups
  • Allow for disabling filters in the Results tag
  • Fixed a bug that could occur with the Popular tag and MySQL 5.7+
  • Fixed a bug where the category_group param would target category IDs (this time for real)
  • Removed references to deprecated API methods
6.1.3 2018-12-13
  • Fixed a bug where an error could occur when using the Relationships filter with URL titles
6.1.2 2018-05-28
  • Fixed a bug where a MySQL error could occur when saving an entry without categories while the collection has weighted category fields
6.1.1 2018-05-24
  • Fixed a bug where the from/to values in the ranges filter could be reversed
6.1.0 2018-05-14
  • Added a workaround for another EE4 quirk
  • Fixed a bug where weighted custom category fields weren’t added to the index
6.0.1 2018-02-12
  • Added a workaround for this EE4 quirk
  • Fixed a bug where the category_groups param would target category IDs
6.0.0 2017-12-05
  • EE4 compatibility
  • Make Field Search filter more MSM compatible
  • Fixed a bug where the edit date was still saved in the silly EE2 format
5.2.1 2018-02-12
  • Fixed a bug where the category_groups param would target category IDs
5.2.0 2017-06-27
  • Added support for category_url_titles in the Categories filter
  • Improved the Relationships filter to better handle excluding entries
  • Devs: added exclude method to Filter API
  • Removed the low_search_native_categories hidden config var (now on by default)
5.1.1 2017-06-22
  • Allow for {base_url} in search results {auto_path}
  • Fixed a bug where the site="" parameter would not work in some cases
5.1.0 2017-03-23
  • Added support for filtering by relationship inside a Grid field
  • A collection is now updated automatically when a field that is part of it is deleted
  • Changed icon for lexicon in the CP
  • Fixed a bug where an error could occur in some cases involving category groups
  • Fixed a bug where the Field Search filter would not take NULL values into account
5.0.5 2017-01-04
  • Fixed a bug where a MySQL error could occur on empty search results in some cases
  • Fixed a bug in the Tags filter with non-existing tag names
  • Fixed a bug in the Distance filter where the distance could be off when storing coordinates in a single field
5.0.4 2016-08-04
  • Fixed a bug where the Ranges filter could return an invalid range in some cases
  • Fixed a bug in EE3.4 where an error could occur loading the foreign chars config file
  • Fixed a bug in EE3.4 where some characters were double encoded in selects in the CP
5.0.3 2016-06-16
  • Added low_search_native_categories hidden config var
  • Fixed a bug where an entry could remain in a collection after changing the entry's assigned channel
  • Fixed a bug where search results could be inaccurate when using multiple Relationships filters
  • Fixed a bug where a PHP error could occur on the edit collection screen
5.0.2 2016-02-23
  • Fixed a bug in the Keywords filter where numeric search terms were ignored
5.0.1 2016-01-29
  • PHP7 compatibility
  • Fixed a bug where the index wouldn't build when using session IDs
  • Fixed a bug that could occur when dealing with stems
5.0.0 2016-01-19
  • EE3 compatibility (requires EE3.1+)
4.4.5 2017-01-04
  • Fixed a bug where a MySQL error could occur on empty search results in some cases
  • Fixed a bug in the Tags filter with non-existing tag names
  • Fixed a bug in the Distance filter where the distance could be off when storing coordinates in a single field
4.4.4 2016-06-16
  • Fixed a bug where an entry would remain in a collection when changing channels
  • Fixed a bug where an error could occur with the Keywords filter in PHP7
4.4.3 2016-02-23
  • Fixed a bug in the Keywords filter where numeric search terms were ignored
4.4.2 2016-01-19
  • Fixed a bug where non-latin characters were stripped out of the search index sometimes
4.4.1 2015-11-17
  • Fixed a bug where non-keyword searches could still order by score
  • Fixed a bug in the Relationships filter that could occur with multiple relationship fields in a single entry
4.4.0 2015-09-28
  • Added keywords:match parameter to Keywords filter
  • Fixed a bug where dynamic="no" was not set automatically
4.3.1 2015-05-19
  • Fixed a bug with the Ranges filter targeting dates
  • Fixed a bug when upgrading from v3.1.4 or below
4.3.0 2015-05-13
  • Added alias:param parameters to Results tag
  • Added gt/gte/lt/lte parameters to Field Search filter
  • Added status as allowed native field to the Field Search filter
  • Restored add_package_path call because reasons
  • Removed custom_field_modify_data hook call because also reasons
  • Fixed a bug that could occur when no native rel/date/grid fields exist
4.2.0 2015-04-23
  • Added ability to target Grid/Matrix columns with the Ranges filter
  • Added m and yd units to the Distance filter
  • Added low_search_update_lexicon hook
  • Improved Keywords filter by only extending keywords with (non-)diacritics if keywords:lang is set
  • Improved query string persistence when using GET vars and pagination
  • Improved query string by encoding ampersands in links
  • Fixed a bug in the Field Search filter where IS_EMPTY did not match NULL values
  • Fixed a bug where an error could occur when accessing the settings via the Extensions page
  • Fixed a bug where the collection modifiers weren't applied if no collections were defined
  • Devs: added Low Search Fields library
4.1.1 2015-04-01
  • Automatic rebuilding of indexes when editing/deleting categories is now only triggered when the amount of entries falls below the batch threshold
  • Removed the add_package_path call which could cause php errors in rare cases
4.1.0 2015-03-25
  • Added support for reverse and overlapping ranges to the Ranges filter
  • Added the require_shortcut to the Results tag
4.0.1 2015-03-10
  • Improved security by protecting some native parameters from being set dynamically
  • Improved error handling from Ajax responses when building collections via the CP
  • Fixed a bug where the Low_search_words library wasn't loaded in some cases
  • Fixed a typo in the language file
4.0.0 2015-02-17
  • Added Lexicon
  • Added Suggestions tag
  • Added support for keyword inflections
  • Added support for keyword stemming
  • Added reset parameter to URL tag
  • Added contains_words parameter to Field Search filter
  • Improved the smart excerpt and highlighting of keywords
  • Changed search_mode parameter to keywords:mode
  • Changed loose_ends parameter to keywords:loose
  • Changed min_score parameter to keywords:score
  • Removed Default Search Mode setting
  • Devs: changed the parameters of the low_search_get_index_entries hook
3.5.2 2015-02-03
  • Fixed a bug that could occur when {auto_path} was not present in the Results tag
3.5.1 2015-02-02
  • Added {auto_path} to Results tag
  • Increased the range of the collection modifiers
  • Minor tweaks to the Keywords filter
3.5.0 2015-01-28
  • Added language as a collection property
  • Added the collection and collection_lang parameters to the Collection tag
  • Devs: added set_entry_ids() method to Filter library
  • Devs: made reset() method public in Filter library
3.4.0 2015-01-15
3.3.4 2015-01-05
  • Improved compatibility with multibyte characters
  • Fixed a bug that could occur using a hash in the result_page parameter and GET vars
3.3.3 2014-12-19
  • Added the smart_field_search parameter for channel-aware field searches
  • Added the ability to enable/disable Filters
  • Rearranged the Settings page in the Control Panel
3.3.2 2014-11-25
  • Added the ability to order keywords search results by collection
  • Improved the Distance filter to also work with a single channel field
  • Improved the index to strip out more punctuation characters
3.3.1 2014-11-18
  • Improved text cleaning function so the foreign_chars config array can also be used for punctuation
  • Improved workings of the low_search_channel_entries extension hook
  • Improved general OOP setup of the filters API
  • Fixed a bug where fixed order was incorrect when using both the Distance and Keywords filters
3.3.0 2014-11-11
  • Added custom filter API
  • Added total results in search log
  • Added remember_shortcut parameter to Form tag
  • Added force_shortcut parameter to Form, Filters, URL, and Results tags
  • Improved the Relationships filter to accept both entry IDs and url_titles
  • Fixed a bug where shortcut wasn't set on Form tag
  • Fixed a bug in the Find & Replace utility where a field was not shown if it was hidden in the publish layout for one channel but shown in another
3.2.0 2014-09-15
  • Added the Param tag
  • Added support for targeting the url_title in the Field Search filter
  • Added amount of entries in collection in the Rebuild Index link title
  • Fixed a bug where a JS error could occur when rebuilding all indexes including an empty collection
3.1.7 2014-08-12
  • Improved on demand loading of search filters
  • Fixed a bug where a PHP error could occur when the open_basedir restriction was enabled
  • Fixed a bug where a SQL error could occur when a non-SuperAdmin viewed the replace log
3.1.6 2014-07-01
  • Added compatibility for 3rd party search filters
  • Fixed a bug where a page URL could be falsely rewritten to maintain the query string
3.1.5 2014-05-11
  • Improved the search log export to include all parameters
  • Improved indexing of fields that contain HTML by replacing <br>s with spaces
  • Fixed a bug where form_xyz parameters were added to the query string
3.1.4 2014-04-07
  • Added support for standard channel fields in the Ranges filter
  • Collections now show a 'rebuild' message if a weighted channel field is deleted
  • Fixed a bug where the toggle-parameter would not toggle the last item in a set
  • Fixed a bug where query params on Filter/Form tags weren't inherited by URL tags when using GET variables
3.1.3 2014-03-31
  • Added require_query="" parameter to Results tag
  • Improved the query="" parameter to ignore pagination segments
  • Improved search when having multiple keywords fields
  • Fixed a bug where an error occurred if the keywords contain a forward slash
  • Fixed a bug that could occur when a collection modifier was used
3.1.2 2014-03-03
  • Added shortcut variables to the Form, Filters and Results tags
  • The result_page parameter now overwrites its value in the given query in the Form tag
  • Fixed a bug where an error could occur when using the URL tag in short mode
  • Fixed a bug where an error could occur when invalid filter files were in the filters folder
  • Fixed a bug where indexes would not rebuild in EE 2.6 and lower
3.1.1 2014-02-19
  • Fixed a bug where XID was not defined in the CP
  • Fixed a bug where a php error occurred when deleting an empty category group
3.1.0 2014-02-19
  • EE 2.8 compatibility
  • Added low_search_channel_entries extension hook
  • Improved package structure to better suit complex filters
  • Removed XID check from form submission methods
  • Fixed a bug where certain libraries weren't loaded in some cases
  • Fixed a bug where exact matching could be off
  • Fixed a bug where a MySQL error could occur in the Find & Replace utility when there were no channels
3.0.4 2014-01-14
3.0.3 2013-12-17
  • Added Distance filter
  • Improved the Ranges filter to allow for a | to separate from and to values
  • Fixed a bug introduced in v3.0.2 where a "No collections found" message could appear when submitting front-end forms
3.0.2 2013-12-05
  • Added WB Markitup as an allowed fieldtype for the Find & Replace utility
  • Improved the Collection overview to show an appropriate message if the collection is empty
  • Improved the way the index for an entry is updated when saving it in the CP or Channel Form
  • Fixed a bug where the Results tag would ignore the site="" parameter in some cases
  • Fixed a bug where the collections would be incorrectly set when using multiple Results tags
  • Fixed a bug where the date range filter would not work in some cases
  • Fixed a bug where an error occurred when using the Collections tag
3.0.1 2013-11-25
  • Fixed a bug where no_results was triggered when no query="" param was given
  • Fixed a bug where a mysql error could occur when using the ranges filter
  • Fixed a bug where a second Results tag in a template would return invalid results
3.0.0 2013-11-12
  • Added Shortcuts
  • Added search filter for specific Grid/Matrix columns
  • Added automatic search mode for keyword searches
  • Added default:-parameters for the Results tag
  • Added remember-parameter in Form tag for partially remembering previous searches
  • Added starts_with/ends_with parameters and syntax to search field filter
  • Added Grid compatibility to the Find & Replace utility
  • Improved keyword searches using quotes
  • Changed the working of the low_search_start_search hook slightly
  • Fixed a bug in the Find & Replace utility where it didn't set the edit_date correctly
2.4.3 2013-10-21
  • Added the force_protocol parameter to the Form and URL tags
  • Fixed a bug that could occur when the GET variables contained arrays
  • Fixed a bug that could occur when using the grouped categories filter and not encoding the search query
2.4.2 2013-09-09
  • Enabled the csrf_exempt option when submitting searches (EE 2.7+)
  • Fixed a bug where the entry_id parameter in the Results tag was ignored
  • Fixed a bug that could occur when submitting empty keywords and the low_search_pre_search hook was used
2.4.1 2013-09-06
  • Added the ability to delete a collection index before rebuilding by alt-clicking the link
  • Fixed a bug where not all of an entry’s categories were added to the index
2.4.0 2013-08-29
  • Added the ability to include categories in the collection index
  • Added the channel name to the manage collections list in the CP
  • Added filters to the search log in the CP
  • Fixed a bug when using the URL shortcut notation in the Results tag
  • Fixed a bug in low_search_excerpt hook handling
  • Fixed a bug that could occur in some situations when submitting empty keywords
2.3.1 2013-04-24
  • Fixed a bug when an ignore word was present in the highlighted keywords
  • Fixed relationship filters for native relationship field in EE2.6.0
  • Removed call to deprecated assign_relationship_data function for EE2.6.0
2.3.0 2013-04-03
  • Added support for GET variables
  • Added support for loose_ends="left"
  • Added the ability to add any number of html parameters to the search form tag
  • Added low_search_get_index_entries hook
  • Added low_search_modify_score hook
  • Added $entry as parameter to low_search_update_index hook
  • Improved the Find and Replace screen when there are lots of channels and categories
  • Fixed a bug in Find and Replace if no categories were present
  • Fixed a bug where all entries would be shown when min_score was set for fallback search
  • Fixed a bug where an error occurred when highlighting keywords in the excerpt in some cases
  • Fixed a bug where the results were not properly ordered by score in some cases
  • General code improvements for upcoming version of ExpressionEngine
2.2.1 2013-03-04
  • Added Filters tag
  • Added toggle:param parameter to URL tag for easy one-click searches
  • Added {low_search:url} variable shortcut for the URL tag
  • Added <mark> to highlight tags
  • Added option to highlight keywords in Title field
  • The no_results block in the Results tag can now contain all search parameters
  • Fixed a bug when doing a find/replace containing a #
  • Some code and performance improvements
2.2.0 2013-02-05
  • Added support for combined AND and OR category filtering
  • Added support for search:title parameter
  • Added exclude parameter to Form tag
  • Added exact parameter to Form tag
  • Added orderby_sort parameter to Results tag
  • Added export to CSV option for the search log
  • Added low_search_catch_search extension hook
  • Added low_search_post_search extension hook
  • Added low_search_update_index extension hook
  • Added low_search_excerpt extension hook
  • Improved MSM compatibility
  • Improved installation routine to force utf8 charset/collation
  • Minor performance improvements
  • Fixed a bug where the require_all parameter was not remembered in the Form tag
  • Fixed a bug where a php error could occur when no parameters were given in the Results tag in EE 2.5.5
2.1.2 2012-11-09
  • Fixed a bug where a PHP error occurred when the query param wasn't set in the Results tag
2.1.1 2012-11-05
  • Added all search parameters as variables to the Results tag
  • Added setting Default results page as customizable fallback
  • Added the ability to put the encoded search query anywhere in the URI
  • The Results tag now also supports the special IN conditional
  • Simplified the parameters in the search log to show raw values
  • Moved extension installation and update routines to UPD class
  • Fixed a bug where ignore words were case sensitive in the search excerpt
  • Download package is now compatible with DevDemon Updater
2.1.0 2012-09-10
  • Upped PHP requirement to 5.2+
  • Added Relationship filters for both Native as Playa fields
  • Added min_score filter for applying a threshold to keyword searches
  • Added log_search parameter to explicitly log searches
  • Added the ability for SuperAdmins to clear the logs
  • Added the low_search_pre_search extension hook
  • The search log is now pruned to its limit when viewing it
  • Ignore words are now not highlighted in the search excerpt
  • Moved collection excerpt and modifier settings to their own table fields
  • Collection settings and log details are now saved as JSON instead of serialize + base64_encode
  • The encoded search query in the URI now uses JSON instead of serialize (backward compatible)
  • Fixed a bug where the fallback to the default search mode was not set properly
2.0.4 2012-08-22
  • Added support for substring searches
  • Added exp:low_search:collections tag
  • Added the option to highlight keywords in search excerpts
  • Search excerpts now take the position of keywords in it into account
  • Changed the edit collection screen to pre-fill collection name and label fields based on the selected channel
  • Search index now converts non-breaking spaces to regular ones; rebuild your indexes for this to take effect
2.0.3 2012-07-19
  • Added collection modifier to change the relevance score for keyword searches per collection
  • Added support for low_search_no_results conditional to avoid possible conflicts
  • Added the native RTE to the allowed fields to select in the Find & Replace utility
  • Changed out-of-date index message to only appear if the field weight changed
  • Fixed a bug where the orderby parameter would be ignored when used in the search form
2.0.2 2012-07-11
  • Added the ability to use multiple keywords fields
  • Fixed a bug in the alternative weighing method when a search term contains only numeric characters
  • Fixed a bug with indexing MSM sites where the active site was anything other than the default
  • Indexing algorithm now converts new lines to spaces for better search results when the alternative method is triggered; rebuild your indexes for this to take effect
2.0.1 2012-05-08
  • Fixed a bug that could cause an error in the EE upgrade wizard
  • Fixed a bug where either entry_id or title were not present when triggering an update for an index of an entry
2.0.0 2012-04-12
  • Added Find & Replace utility
  • Added Popular tag
  • Added URL tag
  • Added GET/OpenSearch support for searches
  • Added extension hook low_search_post_replace
  • Improved build_index method to accept entry ids
  • Improved compatibility with Ajax form submissions and EE's native redirect method
  • Extension now uses entry_submission_end hook instead of entry_submission_absolute_end
1.1.0 2012-01-23
  • Added ignore words to extension settings for keyword filtering
  • Added the ability to add range limits to search results
  • Added excerpt length as extension setting
  • Added support for channel_field:value in search keywords to automatically set search:channel_field parameters
  • Modified results tag so it automatically sets the dynamic and paginate parameters
  • Changed alternative search method to be faster and more efficient; rebuild your indexes for this to take effect
1.0.7 2011-11-16
  • Cleaned up white space in the search excerpt
  • Replaced punctuation with space instead of empty string in string cleanup routine for better search results
  • Fixed a bug where tagparams orderby and sort weren’t reset when ordering by score
  • Fixed a bug where the alternative search method would search for a single dash and not return anything
  • Fixed a bug where related entries wouldn’t work in the search results tag
1.0.6 2011-09-27
  • Added support for keyword-less search
  • Added require_all parameter to form tag
  • Added required="keywords" parameter to form tag
  • Added support for if foo IN (1|2|3) conditionals in form tag
  • Added {low_search_keywords} variable to results tag
  • Added fallback to channel excerpt field if collection excerpt field is not given
  • Improved alternative search method if stop words are present in posted keywords
  • Changed string filtering method to use /config/foreign_chars.php array
  • Fixed a bug where an error could occur when creating a new collection when there are none
1.0.5 2011-08-30
  • Added excerpt field to collection settings
  • Added format="" parameter to keywords tag
  • Added stop words setting to keep track of MySQL’s Full Text stop words
  • Changed the string filtering method to use PHP’s iconv functions
1.0.4 2011-07-08
  • Added support for entering a full url in the result_page parameter
  • Added support for ordering search results by anything other than relevance score
  • Added support for EE2.2's cache/set_cache methods
  • Fixed a bug where an error could occur upon installation if the database engine was not MyISAM
  • Fixed a bug where a slash could be present in the encoded query URI
1.0.3 2011-05-26
  • Added optional secure forms check after form submission
  • Added the secure="" parameter to search form tag to manually skip the secure forms site setting
1.0.2 2011-05-17
  • Added the ability to search multiple sites at once
  • Changed the third party custom field type method from low_search_index to third_party_search_index (the former will still work, though)
  • Changed search log: if no collection is given, all collections are implied
1.0.1 2011-05-03
  • Fixed a bug where the index couldn't be built in a MSM site other than the main one
  • Fixed a bug where the index couldn't be built if the CP domain differs from the site domain
  • Fixed a typo in the docs
1.0.0 2011-05-03
  • First release