CODEX
Shortcodes, Hooks & Extensions
Complete reference for HUSKY – WooCommerce Product Filter
- SC [[woof]] Main shortcode of the HUSKY product filter. Prints the search form anywhere on the page; one page — one filter form. Accepts attributes that control which filter elements appear. →
- SC [[woof_author_filter]] Adds an author filter as a front-end drop-down so visitors can filter shop products by author. Requires the Searching by Author extension. →
- SC [[woof_btn]] Prints a button that shows or hides the filter form (autohide attribute) — useful when the product filter should stay collapsed until needed. →
- SC [[woof_found_count]] Shows the number of products found by the current filter. Works in a text widget or through the woof_print_content_before_search_form hook. From v.2.1.6. →
- SC [[woof_front_builder]] Builds a filter form directly on the site front with a visual constructor — assemble custom product filter layouts without the settings page. From v.2.3.4/1.3.4. →
- SC [[woof_mobile]] Adds the mobile filter button container: on phones and tablets the button opens the hidden filter form in a slide-out panel. →
- SC [[woof_price_filter]] Standalone price filter as a range slider, drop-down or text inputs. Three optional attributes: type, additional_taxes and placeholder. →
- SC [[woof_products]] Second main shortcode: outputs a product grid on any page that reacts to the current filter state. Attributes control per-page count, columns, templates and taxonomy conditions. →
- SC [[woof_products_messenger]] Prints the Products Messenger subscription widget so logged-in customers can follow filtered results by email. No attributes. →
- SC [[woof_quick_search]] Prints the Quick Search form for instant product search in catalog mode. The preload attribute defines whether search data loads with the page or on first use. Requires the Quick Search extension. →
- SC [[woof_quick_search_results]] Outputs Quick Search results with per_page and template_result attributes — five predefined result templates included. Requires the Quick Search extension. →
- SC [[woof_save_query]] Displays the saved-searches widget: logged-in users store their current filter selections and return to them in one click. →
- SC [[woof_search_options]] Prints search navigation buttons (the red buttons) while a filter search is active. Has no options. →
- SC [[woof_sku_filter]] Prints a text input for SKU search on the shop. One optional attribute; search conditions are set on the extension settings page. →
- SC [[woof_step]] Creates a step-by-step filter wizard: customers narrow products screen by screen. The by_step attribute defines the keys and order of the steps. →
- SC [[woof_text_filter]] Prints a text input for product search on the shop — searches WooCommerce products by title, content, excerpt, meta fields and taxonomies in any combination. →
- SC [[woof_slideout]] Creates a slide-out filter panel that appears from the screen edge — keeps the filter hidden until the visitor opens it, saving page space. →
- SC [[woof_products_ids_prediction]] A wrapper around [woof_products] that predicts which product IDs match the current filter state — used to make page builders and custom templates filterable. →
It is possible to override templates of extensions. The folder should be placed in the current WordPress theme folder and must have the same file structure as the original extension. Example: wp-content/themes/my_child_theme/woof/ext/image/views/woof.php
1.
ACF — Filter by ACF Fields
View info →
2.
Advanced Search by Text — Product Text Search
View info →
3.
By Rating — Rating Filter
View info →
4.
Color — Color Swatches
View info →
5.
Conditionals — Conditional Filter Elements
View info →
6.
Essential Grid Connector
View info →
7.
Exclude Backordered Products
View info →
8.
Featured Products Checkbox
View info →
9.
Filter Form Front Builder
View info →
10.
Hierarchy Drop-Down — Taxonomy Chain Filter
View info →
11.
Image — Image Swatches
View info →
12.
Import/Export of Settings
View info →
13.
In Stock Checkbox
View info →
14.
Labels — Term Labels Filter
View info →
15.
Meta Fields — Filter by Custom Fields
View info →
16.
On Sale Checkbox
View info →
17.
Products Messenger — Filter Subscriptions
View info →
18.
Quick Search — Instant Product Search
View info →
19.
Radio or Checkbox in Drop-Down
View info →
20.
Saver of Search Query — Saved Filters
View info →
21.
Searching by Author — Author Filter
View info →
22.
Searching by SKU — SKU Search
View info →
23.
Sections — Collapsible Filter Blocks
View info →
24.
SEO URL Request — SEO-Friendly Filter Links
View info →
25.
Slideout — Slide-Out Filter Panel
View info →
26.
Slider — Attribute Range Slider
View info →
27.
Smart Designer — Custom Filter Elements
View info →
28.
Statistic — Search Analytics
View info →
29.
Step by Step Filter — Filter Wizard
View info →
30.
Stock Quantity Slider
View info →
31.
Template 1 — Products HTML Template
View info →
32.
Turbo Mode — Indexed Filter Cache
View info →
33.
WooCommerce Product Table Connectors
View info →
- do_action woof_after_draw_filter Action that fires after each filter element is printed in the filter form. Receives the element key and shortcode attributes. From v.2.2.5/1.2.5. →
- do_action woof_before_draw_filter Action that fires before each filter element is printed in the filter form. Receives the element key and shortcode attributes. From v.2.2.5/1.2.5. →
- do_action woof_exclude_existing_variations Improves in-stock search: excludes product variations from search results and avoids excess requests. From v.2.2.6. →
- do_action woof_image_allow_term_desc Turns off the term description that is added to filter images by default. Default: true. From v.2.2.6. →
- do_action woof_meta_options_separator Replaces the comma separator in meta options — useful when a meta value contains a comma. From v.2.2.6. →
- do_action woof_mobile_btn_place_container Overrides the selector where the mobile filter button appears. Default: '.woocommerce-products-header'. From v.2.2.6. →
- do_action woof_override_seo_request_uri For the SEO URL Request extension: passes the current URL so it can be adapted to different server configurations. From v.2.2.6/1.2.6. →
- do_action woof_print_design_additional_options Used by extensions to add extra options to the Design tab of the settings page. →
- do_action woof_print_html_type_options_{type} Used by all extensions to draw their settings block in the Settings tab of the plugin settings page. →
- do_action woof_print_html_type_{type} Used by extensions to render themselves on the front: hook woof_print_html_type_{html_type} in the extension init. →
- do_action woof_print_tax_additional_options_{type} Used by extensions to print extra options under the 'additional options' button, as in the Color extension. →
- do_action woof_seo_request_literals For the SEO URL Request extension: adds literal variables that can be used in the SEO rules fields. From v.2.2.6/1.2.6. →
- do_action woof_seo_rules_langs For the SEO URL Request extension: adds extra languages for multilingual plugins like Polylang. From v.2.2.6/1.2.6. →
- do_action woof_wp_load_js Adds custom JavaScript variables to the site front. →
- do_action woof_after_inline_js Fires after inline JavaScript has been added to the 'woof_front' script and before wp_localize_script calls, allowing additional inline JS or script modifications. →
- do_action woof_freemius_loaded Fires after the Freemius SDK has been fully loaded and initialized, providing a hook point for Freemius-related customizations. →
- do_action woof_print_applications_tabs_anvanced Fires inside the Advanced tab navigation in the plugin options page, allowing extensions to add additional tab navigation items to the Advanced section. →
- do_action woof_print_applications_tabs_content_advanced Fires at the end of the Advanced tab content area in the plugin options page, allowing extensions to add custom content sections to the Advanced tab. →
- do_action woof_print_option_advanced Fires inside the Advanced settings options area after the force_ext_disable option field, allowing extensions to add additional option fields. →
- apply_filters woof_add_html_types Used in taxonomy-type extensions to register their keys in the system and make the extension visible. Filter signature: woof_add_html_types($types). →
- apply_filters woof_add_items_keys Used in 'by_' extensions to register their keys in the system and make the extension visible. Filter signature: woof_add_items_keys($keys). →
- apply_filters woof_before_term_name Used in the radio, checkbox, select and mselect HTML types to print symbols or icons before a term label. →
- apply_filters woof_block_toggle_state Controls the toggle state of taxonomy blocks — for example, render them closed on mobile devices via wp_is_mobile(). →
- apply_filters woof_clear_all_text Changes the text of the 'Clear all' button in the search navigation panel. From v.2.2.5/1.2.5. →
- apply_filters woof_counter_method Developer hook for experimenting with memory usage in Dynamic Recount. Used in classes/counter.php in the WP_QueryWoofCounter constructor. →
- apply_filters woof_custom_filter_items_order Changes the order of filter elements: the hook passes an array of filter section keys that you can rearrange. →
- apply_filters woof_delete_img_url Changes the image URL of the delete icon in the filter. From v.2.2.5.6. →
- apply_filters woof_disable_filter Completely disables the plugin on specific pages, post types or custom conditions. →
- apply_filters woof_ext_custom_title_by_instock Sets a custom title for the 'In stock' checkbox in the filter form; the title can also be translated with Loco Translate. →
- apply_filters woof_ext_custom_title_XXX Changes the checkbox label of three extensions: In Stock, Featured Products and On Sale. Replace 'XXX' with by_instock, by_featured or by_onsales. From v.1.1.8/2.1.8. →
- apply_filters woof_filter_shortcode_args Changes the [woof] shortcode arguments on the fly depending on your business conditions. →
- apply_filters woof_filter_title All headings of taxonomy and meta filters pass through this filter — translate or rewrite filter headings your own way. Since v.3.3.6. →
- apply_filters woof_get_filtered_price_query Added for compatibility with other plugins. Used in classes/helper.php, get_filtered_price(). From v.2.2.4/1.2.4. →
- apply_filters woof_get_meta_query Manipulates the meta query inside the search query before it runs. From v.2.2.1/1.2.1. →
- apply_filters woof_get_more_less_button_XXXX Changes the view of the More/Less button for the 'Not toggled terms count' feature on the site front. →
- apply_filters woof_get_request_data Runs in the plugin's data gate — get_request_data() in index.php, the first function that receives the search request. Use it to read or pre-set filter values. →
- apply_filters woof_get_tax_query Manipulates taxonomy relations in the search query — for example, changes the relation from OR to AND. Does not work together with dynamic recount. →
- apply_filters woof_get_terms_args Added for compatibility with other plugins. Used in classes/helper.php, get_terms(). From v.2.2.4/1.2.4. →
- apply_filters woof_get_terms_order Orders terms in the search form (ASC/DESC per taxonomy). Used in pair with woof_get_terms_orderby. →
- apply_filters woof_get_terms_orderby Sets the field terms are ordered by in the search form, per taxonomy. Used in pair with woof_get_terms_order. →
- apply_filters woof_html_types_view_checkbox Rewrites the view template views/html_types/checkbox.php with your own file. From v.2.2.4/1.2.4. →
- apply_filters woof_html_types_view_mselect Rewrites the view template views/html_types/mselect.php with your own file. From v.2.2.4/1.2.4. →
- apply_filters woof_html_types_view_radio Rewrites the view template views/html_types/radio.php with your own file. From v.2.2.4/1.2.4. →
- apply_filters woof_html_types_view_select Rewrites the view template views/html_types/select.php with your own file. From v.2.2.4/1.2.4. →
- apply_filters woof_husky_query_post__in Switches between the two filter query modes: post__in (default, more reliable) and SQL JOIN. From v.2.2.9/1.2.9. →
- apply_filters woof_husky_query_post__in Manipulates text filtering through post IDs — added by a support request for separate title, description and SKU filtering. →
- apply_filters woof_image_add_term_desc For the Image filter (premium): shows or hides the term description in the tooltip. Default: true. →
- apply_filters woof_init_archive_by_default Programmatically disables 'Enable archives' for product attributes on the fly. →
- apply_filters woof_main_query_tax_relations Sets AND logic for any taxonomies in the search request. Add the filter in your theme's functions.php. →
- apply_filters woof_max_price_filter Sets the maximum price of the price filter by your own logic in functions.php. →
- apply_filters woof_min_price_filter Sets the minimum price of the price filter by your own logic in functions.php. →
- apply_filters woof_not_sort_checked_terms Excludes HTML types from the 'Lets checked terms be always on top' option. Used in woof_sort_terms_is_checked() in index.php. →
- apply_filters woof_order_catalog Adds a custom sort order for the catalog. From v.2.2.4/1.2.4. →
- apply_filters woof_price_slider_html Replaces the native Woo price slider markup in the search form. Used in classes/helper.php, price_filter(). →
- apply_filters woof_print_content_before_redraw_zone Places any HTML message above the products that is not redrawn by AJAX. From v.2.2.4/1.2.4. →
- apply_filters woof_print_content_before_search_form Prints any content before the items of the search form — for example, a notice while a filter search is active. →
- apply_filters woof_print_label_attributes Adds custom attributes to checkbox and radio label tags — for example ARIA attributes for accessibility. →
- apply_filters woof_products_query Runs once in the [woof_products] shortcode for custom query manipulations. →
- apply_filters woof_products_top_panel_content Displays any business content at the top of the filtration results. From v.2.2.4/1.2.4. →
- apply_filters woof_qs_get_template_structure For the Quick Search extension: changes a column header of the results table. →
- apply_filters woof_qs_shortcode_data For the Quick Search extension: changes template parameters before page load — for example, per device. →
- apply_filters woof_qs_sort_select_data For the Quick Search extension: changes the sort headers of the table when sorting is shown as a drop-down. →
- apply_filters woof_quick_search_products_limit Extends the Quick Search product limit above the default 10,000 — mind server resources on large values. →
- apply_filters woof_redraw_elements_after_ajax Adds custom messages or elements while the visitor filters in AJAX mode, based on the current query. →
- apply_filters woof_seo_do_index For the SEO URL extension: flexible indexing control — for example, exclude selected filter pages from indexing. →
- apply_filters woof_seo_meta_description Modifies the meta description tag for pages with an active filter search. →
- apply_filters woof_set_shortcode_taxonomyattr_behaviour Manipulates the 'additional_taxes' attribute behavior. Works in woof_shortcode() in index.php. →
- apply_filters woof_slider_meta_query_type Sets the value type for meta slider queries — for example DECIMAL for decimal values. →
- apply_filters woof_sort_terms_before_out Used in the checkbox and radio HTML types for any manipulation of the terms array before output. →
- apply_filters woof_start_filtering_btn_txt Changes the text of the 'Show product filter form' button rendered by [woof start_filtering_btn=1]. From v.2.1.6. →
- apply_filters woof_step_filter_img_size Resizes images in the step filter: thumbnail, medium, large, full or a custom size array. From v.2.2.4/1.2.4. →
- apply_filters woof_taxonomy_image Redefines images of image-filter terms on the fly depending on the current situation. →
- apply_filters woof_template_part Changes the template of the [woof_products] shortcode on the fly. →
- apply_filters woof_terms_where_hidden_childs Hides child terms of selected parent terms in checkboxes, radio, select, mselect and labels. →
- apply_filters woof_term_count_format Changes the term counter format — by default '(%d)'. →
- apply_filters woof_text_autocomplete_items Sets how many posts the text input autocomplete returns. →
- apply_filters woof_text_search_like_option Regulates text search behavior: returns FALSE by default; return TRUE to search without considering special characters. →
- apply_filters woof_text_search_query Redefines the text search SQL request on the fly — for example, restricts results to specific post IDs. →
- apply_filters woof_title_tag Redefines the H4 title tag of each taxonomy block to any other HTML tag. →
- apply_filters woof_turbo_mode_schedules Adds custom update periods for product data in Turbo Mode. Since v.3.3.6. →
- apply_filters woof_use_wp_cache Enables the WordPress object cache for the filter — showed good results in tests; requires a persistent object cache to be installed. →
- apply_filters woof_widget_title_tag Redefines the H3 title tag of the filter widget to any other HTML tag. →
- apply_filters woof_button_css_classes Filters the CSS class string applied to the "Start filtering" button, allowing custom styling or JavaScript targeting. →
- apply_filters woof_draw_products_get_args Filters the merged GET parameters used in AJAX product requests, allowing modification of query data before products are redrawn. →
- apply_filters woof_draw_products_html Filters the final HTML output of the products shortcode before it is returned in the AJAX response, enabling custom post-processing. →
- apply_filters woof_dynamic_count_attr Filters the WP_Query arguments used to calculate dynamic product counts, allowing custom conditions for recount badges. →
- apply_filters woof_ext_custom_title_by_backorder Filters the display label for the By Backorder filter checkbox, allowing custom translation or renaming. →
- apply_filters woof_ext_custom_title_by_featured Allows customization of the label text shown for the 'Featured products' filter checkbox in both the frontend view and the JavaScript localization array. →
- apply_filters woof_ext_custom_title_by_onsales Allows customization of the label text shown for the 'On sale' filter checkbox in both the frontend view and the JavaScript localization array. →
- apply_filters woof_ext_custom_title_stock_quantity Allows customization of the label text shown for the 'Stock quantity slider' filter in both the admin filter titles list and the frontend view template. →
- apply_filters woof_extensions_type_index Filters the comma-separated list of extension type indexes that are included in the JavaScript woof_accept_array, defining which filter keys the frontend JavaScript wi... →
- apply_filters woof_filter_search_slug Filters the URL slug used for WOOF filter parameters in the query string, allowing customization of the search slug (default is typically 'swoof'). →
- apply_filters woof_filter_taxonomies Filters the array of product taxonomies retrieved from WordPress, allowing removal or modification of taxonomies used by the filter. →
- apply_filters woof_front_builder_option Filters the value of an individual front builder option after it has been loaded from the database, allowing runtime modification of option values. →
- apply_filters woof_front_builder_options_after_update Filters the entire options array after a front builder option has been updated and before it is saved to the database. →
- apply_filters woof_generate_container_css_classes Filters the CSS class name used for filter section containers, allowing customization of container styling per filter section key. →
- apply_filters woof_get_all_filter_titles Filters the associative array of all filter titles before they are localized to JavaScript, allowing customization of displayed filter names. →
- apply_filters woof_get_front_css_file_link Filters the URL to the main frontend CSS file, allowing replacement of the default stylesheet with a custom one. →
- apply_filters woof_get_max_price Filters the maximum price value used for the price range slider, allowing modification of the upper price bound. →
- apply_filters woof_get_min_price Filters the minimum price value used for the price range slider, allowing modification of the lower price bound. →
- apply_filters woof_husky_txt_option Filters each rendered HTML option in the Husky text search autocomplete dropdown, allowing customization of individual search result items. →
- apply_filters woof_husky_txt_templates Filters the file path for a Husky text search result template when the default template file does not exist inside the plugin, allowing custom template locations. →
- apply_filters woof_meta_data_datapicker Filters the meta query array generated for a datepicker meta filter, allowing modification of the date range query parameters before they are applied to the product qu... →
- apply_filters woof_meta_filter_add_types Filters the array of available meta filter HTML types, allowing addition of custom meta filter types to the plugin. →
- apply_filters woof_meta_use_acf_dateformat Controls whether ACF (Advanced Custom Fields) date format should be used for datepicker meta filters; when true, dates are formatted as Ymd instead of Unix timestamps. →
- apply_filters woof_modify_settings_before_action Filters the entire plugin settings array before the filter shortcode renders, allowing dynamic per-instance modification of all filter settings. →
- apply_filters woof_regulate_by_only_show Filters the 'show' value for individual filter items when the 'by_only' shortcode attribute is used, primarily needed for the price filter whose view depends on this v... →
- apply_filters woof_seo_canonical Filters the canonical URL link tag that is output in the page head section during active filter searches, allowing customization of the canonical URL. →
- apply_filters woof_seo_h1 Filters the H1 page title text during active filter searches, allowing customization of the main heading displayed on search result pages. →
- apply_filters woof_seo_meta_title Filters the HTML <title> meta tag content during active filter searches, allowing customization of the browser/document title on SEO-filtered pages. →
- apply_filters woof_seo_text Filters the SEO text block displayed after the shop loop on filter search pages, allowing customization of the descriptive content shown below filtered products. →
- apply_filters woof_subscribe_lang Filters the subscription language text for the Products Messenger extension, allowing customization of the language/locale string stored with each product alert subscr... →
- apply_filters woof_taxonomy_type_objects_front_render Filters whether a taxonomy type object should render as the current filter type and allows passing modified arguments, supporting custom taxonomy rendering extensions. →
- apply_filters woof_text_filter_labels Filters the array of label slugs assigned to a product in the Husky text search, allowing customization of which labels are displayed for each search result. →
- apply_filters woof_text_search_ids Allows external search engines (e.g. SearchWP) to override the product IDs returned by the text search, replacing the default WooCommerce search results entirely. →
- apply_filters woof_text_urlencode Controls whether filter values in the URL query string should be URL-encoded, enabling special character handling in search parameters. →
- apply_filters woof_turbo_mode_products_limit Filters the maximum number of products to process during turbo mode cache generation, setting a limit to prevent memory or timeout issues. →
- apply_filters woof_url_parser_all_data Filters the entire data array passed to the JavaScript URL parser, allowing modification of filter key mappings for SEO-friendly URL parsing. →
- apply_filters woof_use_chosen Controls whether the Chosen jQuery plugin is used for enhancing select dropdown elements, allowing forced enable/disable of the enhanced select UI. →