Search & Filter is a simple search and filtering plugin for WordPress
Switch branches/tags
Nothing to show
Clone or download
Latest commit e0616d3 Dec 20, 2014

WordPress Search & Filter

Search & Filter is a simple search and filtering plugin for WordPress.

It is an advancement of the WordPress search box, adding taxonomy filters to really refine your searches!

You can search by Category, Tag, Custom Taxonomy or any combination of these easily - you can even remove the search box and simply use it as a filtering system for your posts and pages.





  • Fixed a PHP error when setting defaults for taxonomies - many users did not see this but resulted in unexpected behaviour
  • Fixed an error with post date sometimes being undefined for blank searches
  • Added argument empty_search_url - when a users submits the search form without any search preferences selected they will be redirected to this URL
  • Updated argument add_search_param - setting to 1 will force add a "?s=" to all urls generated by the plugin - this may help with the loading of search templates in some themes


  • Fixed a bug created in 1.2.3 when doing an empty search


  • Added arguement all_items_labels which allows for support for custom all_items labels in taxonomies, categories, post tags and post types when using select and radio types - the default text displaying "All Categories" for example can now be defined using all_items_labels
  • Added show_count to arguments - this shows how many posts are in a particular term, in brackets after the term name - works only for categories, tags and taxonomies
  • Fixed a bug when using when using "all post types" and it displaying no results
  • Reverted behaviour from 1.2.2 - no longer force load search template when search is blank - let WP handle it again
  • Added argument add_search_param - setting it to 1 will force a "?s=" or "&s=" to be added to the url even when the search is blank - in some circumstances this will force load the search template, instead of other WP templates, such as taxonomy or category templates


  • Added support for multi selects - use multiselect as the type for your field
  • Added support for AND & OR operators when using checkboxes or multiselects - use the operators argument with allowed values of and & or
  • Force load search template when search is blank, don't include when search field is not included in shortcode
  • Fixed an issue with navigation disappearing when using post_types


  • Version Bump - bad commit


  • WARNING - this update includes some major changes to shortcode construction, do not upgrade until you have read how this will affect your setup - updating should be easy.
  • Renamed the taxonomies argument to fields - taxonomies is now no longer appropriate as this list contains field types other than taxonomies - this list now contains taxonomies, post_type, post_date and search - taxonomies as an argument is still supported however will be deprecated
  • Search box can now be positioned anywhere, simply include search in the fields list in the position desired. Upgrading from previous versions will cause you to lose your search box, simply include search in the fields list to show it again
  • Drop support for search argument as no longer relevant - control display of search input by adding it to the fields list
  • Labels have been completely rewritten - label has been renamed to headings to avoid confusion with internal taxonomy labels - the headings argument now allows for any text to be added and displayed as a heading for each field - this allows for much more flexibility and no longer uses internal taxonomy labels - to hide a label simply leave blank
  • Added support for hierarchical taxonomies for all input types - checkbox, radio & select
  • Added support for ordering of taxonomies - use order_by argument - allowed values are id, name, slug, count, term_group
  • Added support for ordering direction of taxonomies - use order_dir argument - allowed values are 'asc' or 'desc'
  • Added support to show or hide empty taxonomies - use hide_empty argument
  • Added support for search_placeholder
  • Updated post_date functionality to work with older versions of WP - can be displayed either as date or daterange - the post_date field uses the HTML 5 input type of date - browsers that do not support it will simply show a text box - a tutorial of integrating jquery for graceful degredation is in the works
  • Renamed submitlabel to submit_label - submitlabel still works for now.
  • Renamed type to types - type still works for now.
  • Updated display of checkboxes and radio buttons, inputs are now wrapped in an unordered list which may affect your styling
  • Various bug fixes
  • Thanks to bradaric for help with hierarchical dropdown lists and date input types -


  • Added support for post_date to be displayed either as date or daterange (WP 3.7+) type.


  • Added support for all public and custom post types (the attachment post type is excluded) - all post types can be user searchable or predfined and hidden from the user. This allows for users to add multiple search widgets to their site which work on specific post types independantly from eachother.
  • Added offical updated documentation, created and moved to Search & Filter Docs


  • Fixed: when submitting an empty search/filter, "?s=" now gets appended to the url (an empty search) to force load a results page, previously this was redirecting to the homepage which does not work for many use cases


  • Added support for checkboxes and radio buttons, with the option to control this for each individual taxonomy.
  • Added support to show or hide headings for each individual taxonomy.
  • Added support to pass a class name through to Search & Filter widgets, this allows styling of different instances of Search & Filter
  • Fixed problems with escaping output in search box Notice: This update will automatically add headings to taxonomy dropdowns, refer to usage and examples on how to disable them.


  • Added some documention & screenshots to plugin page


  • Version bump for WordPress plugins site


  • Updated to use label->all_items in taxonomy object for dropdowns before using label->name
  • Notice: This update may cause some labels to break, ensure you have set up your taxonomy properly including setting label->all_items


  • Initial Release


  • Released under the GPL v2 License