Facet API Bonus - Screenshots

Facet API Bonus for Drupal 7 is a collection of additional Facet API plugins and functionality, foremost filter and dependency plugins – And a place to collect more additional Facet API extensions.

Currently Facet API Bonus includes:

  • Facet Dependency: Dependency plugin to make one facet (say "product category") to show up depending on other facets or specific facet items being active (say "content type" is "product" or "service"). Very flexible, supports multiple facets to be dependencies, as well as regexp for specifying facet item dependencies, as well as option how to behave if a dependency is being lost.
  • Filter "Exclude Items": Filter plugin to exclude certain facet items by their markup/title or internal value (say excluding "page" from "content types"). Regexp are also possible.
  • Filter "Rewrite Items": Filter plugin to rewrite labels or other data of the facet items by implementing a new dedicated hook_facet_items_alter (in a structured array, before rendering). Very handy to rewrite list field values or totally custom encoded facet values for user friendly output.
  • Filter "Do not display items that do not narrow results": This filter checks the number of items that will be displayed after activating facet link and removes the link if the number is the same as currently displayed. If link has children in hierarchical structure, it won't be removed.
  • Filter "Do not show facet with only X items" This filter checks total number of links and if number is less than X, we remove all items and hide block completely. Block will not be hidden if there any active items in it.
  • Filter "Show only deepest level items" Removes all items that have children.
  • Integration with Page Title module Now you can set search (views) page titles using Page Title module. Module provides possibility to set tokens 'facetapi_results' and 'facetapi_active' groups. So in title we can display number of results on the page or values of active facets. As there can be multiple active facet values please use following pattern to use facetapi_active tokens:

    list<[facetapi_active:facet-label]: [facetapi_active:active-value]>

    This will make coma separated list of active facet labels and their values.

  • Current search block Reset Filters link Gives possibility to add link to current block that resets all applied facets. Text is customizable.

Further additions are very welcome!

Facet API Bonus is written for Drupal 7, and is stable, tested, and ready to be used in production environments.


  • Facet API is obviously required, as well as a compatible search module (e.g. apachesolr, search_api).

Similar projects:

For more background information on this module and on extending Facet API, see http://wunderkraut.com/blog/get-wild-with-facets-extending-facet-api/201...

Facet API Bonus was sponsored by:

Liip AG
Supporting organizations: 
Module development time

Project information