Form mode

You can create a form on any page where visitors can select navigation filter values. When they submit the form, the will be redirected to the shop page where the filters will be applied.

This PRO exclusive facility is useful when you want to place a WCPT table navigation form anywhere on your site (for eg: on the homepage), and make its results appear on the Shop page when the form is submitted.

Please note this is only possible when you have replaced the product grid on your shop page with a product table using the archive override facility.

Using form_mode=”true” on any WCPT table shortcode will hide the product table, leaving just the navigation section visible. To complete its form look, you can also add the ‘Apply / Reset’ element in the table navigation section.

When the visitor selects values in this form and submits it, they will be redirected to the shop page where the product table will show results based on options they selected in the form.

Please remember that the filters in the form should be a subset of the filters on the shop page. If the site visitor selects filters in the form that are not available on the shop page, then those filters will not be applied to the results on the shop page. So while you can have more filter options on the shop table, you should not have less filters on the Shop page than on the form. For example, if you have a Price range filter in the form, then you need to have a Price range filter in the Shop table as well, otherwise the price range will not be applied when the user tries to select a price range in the form.

In the above screenshot, the form shortcode is placed on a page where we want the table navigation to appear without the table.
This screenshot is from wp admin > product tables > settings > archive override. It shows that a table shortcode is being used to generate a table for the shop page. This table will override the default product grid on the shop page.
Here you can see the form generated by the shortcode in the first screenshot. You can also see in this screenshot that a range value has been selected for the ‘Range test’ filter in this form. It is then submitted.
When the above form is submitted it leads the visitor to the Shop page where the ‘Range test’ filter is applied on the table on the Shop page. It was possible for the filter to be applied here only because the same filter also exists in this table as well.

Multi range slider (for Custom Field and Price filters)

The multi-range slider available for custom field and price filters (PRO facility) makes it convenient for site visitors to select several numeric options in one go. There is a workaround for attribute filters as well.

This option works for the custom field filter and the price filter. If you are store the information as an attribute, you need to copy it over to a custom field to use this facility.

Settings to create Custom Field range slider

Note: The settings for Price range filter are similar.

Premade filter options

In addition to the range slider you might like to provide more pre-made filter options with min-max values. Such as this:

For this go to the settings of the same Custom Field Filter you have created and in its section called ‘Filter Options’ use the Add an Option button to create pre-made min-max range options for the filter. Reference screenshot:

Attribute filter workaround

The multi-range slider is not available for attribute filter right now. This is due to complications with the way woocommerce stores data for product attributes which makes it inefficient for this purpose.

Instead, what you can do is to store the specific attribute as custom fields (meta data) as well on each product. Now you can use that custom field to provide a multi range slider filter (as well as sorting if you need).

Going to each product page and saving the attribute as a custom field can be time consuming. There are more efficient ways to accomplish this, covered in this doc.

Once you have the attribute saved as a custom field, you can proceed with creating a custom field filter and using the multi-range slider for that property as well.

How to duplicate woocommerce product attribute to custom field?

Using WooCommerce Product Table PRO’s range slider facility is only possible with custom fields, not attributes. In this doc we will cover convenient ways to quickly duplicate attributes to custom fields on your site.

Going to each product page to duplicate the attribute to a custom field can be time consuming. There are more efficient ways to accomplish this task. You can use any of the following options to speed up the process:

  • Best option: Get the ‘WCPT Addon: Copy Attribute to Meta’ plugin that can help you automatically copy all attributes to product meta with one click. Sold separately from WCPT PRO.
  • Use the in-built WooCommerce Import / Export facility to modify products in an excel sheet.
  • Use a bulk product editor plugin.

Note: Before following the steps in this guide, please take a database backup first!

WCPT Addon: Copy Attribute to Meta

This is the simplest and fastest way to:

(1) Copy attributes to meta for all your woocommerce products with just one click.
(2) Automatically keep the attributes and meta in sync in the future, with no additional effort.

You can set up this plugin once and forget about it. It will automatically manage copying attributes to meta as your website data changes going ahead, ie, attribute values change or new products are created.

While the next 2 options will also help you copy over attributes to custom fields, you will need to repeat the process of copying attributes to meta each time you make changes to your product attributes.

On the other hand, ‘WCPT Addon: Copy Attribute to Meta’ can copy attributes to meta automatically whenever you make any changes to your products in the future.

This addon plugin is sold separately from WCPT PRO. To get the addon contact support.

WooCommerce import / export products facility

You can read the official woocommerce documentation on this topic here. It covers how to use this woocommerce facility. The following guide further explains how to achieve the specific aim of copying over attributes to meta as per our requirement.

  • Begin by exporting the products as a CSV file. This file can be viewed as a spreadsheet via Excel (Windows) or Numbers (Mac).
  • In that exported CSV file, products are listed in rows and their properties are listed in column. You need to create a new column that will contain a new custom field for the products. This new column needs to have the heading ‘Meta: *attribute name*’ where your need to replace *attribute name* with the name of the actual attribute (Color, Size, etc) or custom field name that you want to use. Before continuing with this step, please refer to the ‘Important notes on creating the new meta column’ section below.

  • After you have added the new meta field column to the file, you need to save the file as CSV. Now import this modified csv file into your site again. During import, ensure you check the option to ‘Update existing products’. After the import process (could take some time depending on the number of products and properties) you should have the new custom field prepared for each product based on the mtea column you created in the import file.

Important note on creating the new meta column:

In the exported excel file please notice 2 things:

  • Attribute information is split over multiple columns: Name, Values, Visible, Global, Default. Only the Name and Values column are relevant to us here, so we will ignore the rest. The Name column helps us identify which attribute(s) this column pertains to and the values are needed to be copied over to the new duplicate meta column.
  • Second thing to notice – in the above screenshot Attribute 1 name column only contains the Color attribute. So you might be tempted to simply duplicate its values column, rename the heading of the duplicate to Meta: Color and be done with the process. While this may work in this particular case, please keep in mind that the attribute columns in your export file might contains information about multiple attributes in the same column.
  • For example, in the screenshot below notice that the ‘Attribute 2 name’ column contains 2 distinct attributes – Size and Logo. So, in this case, duplicating the ‘Attribute 2 value(s)’ column to create a new meta column for Size attribute will be a mistake. As you can imagine, such a duplicate column will also contains values for Logo attribute. So, you will need to be careful that only relevant values are copied over to the new meta column.
  • In this example, to create a meta column for the Size attribute, we can duplicate the values column, but then we need to carefully go over the column values in our duplicate and delete the values that are not related to Size.

If you have any confusion about this method and need more clarity please do not hesitate to write into support to receive prompt assistance with this.

Bulk product editor plugins

This method is slower than the import/export method described above but some users might find this more convenient as it is simpler.

The following woocommerce bulk product editor plugins will allow you to edit multiple products at one time using a simple UI:

The above links are for the free versions of the plugin. Some features are only available in the PRO version.


The ToolTip element offers excellent potential to improve your table presentation! This doc includes element introduction, benefits, style tips and special notes.


The ToolTip element offers excellent potential to improve your table presentation. Consider the following:

– The tooltip element basically increases the available surface area in which you can present data. This is especially helpful when fitting the table into narrower screens. Now you can present the same information, in a smaller space. 

– When you need to display large chunks of text like excerpt or some specification, you do not need to spoil your table layout. You can still keep a neat column based layout while packing the text chunk in tooltips. 

– Tooltips can be used to provide special notes, explanation about data highlights. You might be using an icon or image to represent a property and a tooltip to provide additional context for clarity.

– Information that is nice to include but not really essential can be presented in tooltips so that precious user attention is focused first on the most important bits of data.


Both, the label and the content part of the tooltip can be individually styled. You can also style the elements that you place inside the tooltip.

In some cases you might like to make the label background transparent, for example when displaying an exclamation icon or an image in the label. 

You can also set a max-width for the tooltip content section in case of broader / narrower content.

Special notes

Element condition

The toolTip element provides a Condition section (same as other column elements). This section lets you toggle element based on certain criteria. You can leverage this to place multiple tooltip elements in your columns and only display them when specific criteria are met.

Relabeling terms

Attribute terms can be relabeled using the ‘Custom term labels’ section in the attribute element. This can be a smart place to use tooltips if additional information needs to be provided for the element.

Show woocommerce product table on Elementor shop

Simple setup guide to replace the default Elementor shop page product grid with a WCPT PRO custom product table. Works with any WordPress page builder plugin.

A step by step guide to replace the default woocommerce product grid in Elementor shop page with a custom woocommerce product table.

Time required: 5 mins

Difficulty: Beginner

Using WooCommerce Product Table PRO you can easily replace the default product grid on Elementor woocommerce shop page with a completely custom product table as per your requirement.

This article focuses on on Elementor PRO, but you can use this guide to place WooCommerce Product Table on any page builder template for the woocommerce shop, category, attribute and tag pages. It will work equally well with Divi page builder, Beaver Builder, Visual Composer, etc.

Please follow these steps:

  1. Using Elementor PRO create a template with display condition to appear on Product Archive pages only. If you have a template to override all archives, not just product archives, then you need to first create a new template that only overrides Product Archives. The instructions in this tutorial are to be applied on this Product Archives template only.
  2. Install WCPT PRO, create a custom product table and configure your WCPT Archive Override facility (wp admin > product tables > settings > archive override) to assign this tables to the shop page.
  3. In Elementor, go to your product archive customization screen page. 

4.  Delete the ‘Archive Products’ section from your template.

Show a product table in Elementor shop page

5. In your Elementor panel > Elements section search for ‘Text’. The Text widget element will come up on the screen. Drag and drop it on your template, below the title (where the Archive Products element was placed earlier).

6. In the settings of the Text widget element enter [wcpt_elementor]. This special shortcode will print your product table on the page according to your settings in WP Admin > Product Tables > Settings > Archive Override.

Replace elementor product grid with product table

If you have completed the above steps, you will have the product table showing up on your Elementor shop page. But in case you have any difficulty following this guide, please contact support for a prompt resolution.

Create ‘download button’ in your WooCommerce Product Table

Using WCPT PRO you can easily create download buttons in your table giving users the option to download files related to the product. You can provide any file type for download such as a PDF brochure / mp3 audio preview / mp4 video trailer / software zip file.

You can provide multiple download buttons in the same table row. Therefore you can provide download links for different files associated with the product, such as different versions of the audio track.

Create download button

First, for each product you need to create a custom field with the same name like download-1 and provide the download URL in the value of that custom field. 

If your site has ACF installed the custom fields section might not appear. In that case just create a text field (not URL field) using ACF. 

Once you have created the custom field for a few Create a button element in your columns and use the following settings:

Externally hosted files

If your file is being hosted from another domain, then it is not always possible to use this method to provide a download. Due to the CORS specification,  most browsers will not allow this.

However, a workaround exists for 2 very popular hosting choices:

Google drive

Please check the guide here and follow the steps to generate download links for your google drive files.  


Please check this guide to create a direct download link for your dropbox hosted files.

Style tips

WCPT provides you styling options at various levels to ensure you can highly customize your table’s style as per your needs.

For general styling purposes please use the product table > Style tab and apply styles from there. You can apply styles that specifically target Laptop, Tablet or Phone size devices.

In order to style individual columns go to the Column > Cell template > Design section and apply your column specific styles there.

 Likewise you can apply unique styling to specific elements as well via the element’s settings > Style for element.   

Column width

You can give each columns a fixed width. For example, if you want to give the columns width 20%, 40% 20%, 20% (total should be 100%) then you need to go to the design settings for each column and give it the percentage width. 

If you are manually setting widths for each column in this manner please take note of responsive view of your table. If you do not have tablet / phone specific columns setup then the custom widths will be applied to the columns on narrowers screens as well.

Column text align

To set the text align for the table heading and cells from a central place try the table settings > Style > Laptop style > Headings | Cells > Text align.

If you need to set different text align for individual columns you can do that from the Style settings of the individual columns.

Columns cells vertical align

You can decide how the content in adjacent cells align with each other through the vertical align property.

Force overrides

Sometimes themes apply aggressive styling that can override the styling set through WCPT. The common case is setting font color and size for cells. Please use:

.wcpt-heading {
font-size: 18px !important;
font-color: black !important;

.wcpt-cell {
font-size: 16px !important;
font-color: black !important;

Change the color and font size to what you need. For further assistance please contact support.

Table heading

.wcpt-heading {
color: #000 !important;
padding: 15px 5px !important;
font-size: 16px !important;
@media(max-width: 1099px){ /* Tablet style */
.wcpt-heading {
color: #000 !important;
padding: 15px 5px !important;
font-size: 16px !important;
@media(max-width: 800px){ /* Phone style */
.wcpt-heading {
color: #000 !important;
padding: 15px 5px !important;
font-size: 16px !important;

Header navigation section sample CSS:

.wcpt-header {
padding: 10px 15px;
background: white;
margin-bottom: 10px;
border-bottom: 2px solid #ddd;

Filter dropdown text styline  sample CSS:

.wcpt-filter .wcpt-dropdown-option {
font-family: Tahoma !important;
font-size: 16px !important;
color: black !important;

.wcpt-filter .wcpt-filter-heading {
font-family: Tahoma !important;
font-size: 16px !important;
color: black !important;

Product addons – only show short text field

If you have a ‘short text’ product add field attached to your products and wish to display it in your tables you need to follow the following steps:

  1. Add a Cart Form element to one of your columns
  2. In the settings of this cart form element, in Additional CSS Class add: wcpt-product-addons-only-short-text-field
  3. Now in the table settings > Style > CSS, enter the following code:
.wcpt-product-addons-only-short-text-field {
vertical-align: middle !important;

.wcpt-product-addons-only-short-text-field > *:not(form),
.wcpt-product-addons-only-short-text-field > form > *:not(.wc-pao-addon),
.wcpt-product-addons-only-short-text-field > form .wc-pao-addon label {
display: none !important;

.wcpt-product-addons-only-short-text-field > form .wc-pao-addon,
.wcpt-product-addons-only-short-text-field .wc-pao-addon-wrap {
padding: 0 !important;
margin: 0 !important;

Cart form – only show attribute dropdowns (and price)

If you need to show your attribute dropdowns in a column and do not wish to show other elements like price or add to cart in that column you can follow this guide:

  1. Add a Cart Form element to one of your columns
  2. In the settings of this cart form element, in Additional CSS Class add: wcpt-only-attributes
  3. Now in the table settings > Style > CSS, enter the following code:
.wcpt-only-attributes {
  vertical-align: middle !important;

.wcpt-only-attributes  > *:not(form),
.wcpt-only-attributes  > form > *:not(.variations):not(.single_variation_wrap),
.wcpt-only-attributes  > form .single_variation > *:not(.woocommerce-variation-price),
.wcpt-only-attributes .woocommerce-variation-add-to-cart {
  display: none !important;

.wcpt-only-attributes > form,
.wcpt-only-attributes > form .variations {
  margin:0 !important;

.wcpt-only-attributes .woocommerce-Price-amount {
  font-size: 18px !important;
  font-weight: bold !important;
  color: #66a918 !important;

If you need to hide the price as well, please use:

.wcpt-only-attributes .woocommerce-Price-amount,
.wcpt-only-attributes .single_variation_wrap {
  display: none !important;

Global search shortcode

/* Height */
.wcpt-global-search__submit-wrapper {
line-height: 56px !important;
height: 56px !important;

/* Input Field */
.wcpt-global-search__keyword-input {
border-color: #CDDC39 !important;
font-size: 16px !important;

.wcpt-global-search__keyword-input:focus {
border-color: #AFB42B !important;

/* Dropdown */

/* -- background */
.wcpt-global-search__category-selector-wrapper {
background: #CDDC39 !important;
font-size: 16px !important;

.wcpt-global-search__category-selector-wrapper:hover {
background: #AFB42B !important;

/* -- text */
.wcpt-global-search__category-selector-facade {
color: rgba(0, 0, 0, 0.75);
font-size: 15px;

/* Submit Button */

/* -- background */
.wcpt-global-search__submit {
background: #CDDC39 !important;

.wcpt-global-search__submit:hover {
background: #AFB42B !important;

/* -- icon */
.wcpt-global-search__submit-icon {
color: rgba(0, 0, 0, 0.75);
stroke-width: 3px;

/* -- text */
.wcpt-global-search__submit-text {
font-size: 15px;
color: rgba(0, 0, 0, 0.75);

Create a WooCommerce variation table

WCPT PRO provides you the facility to create a variations based table. However, you cannot mix product variations with variable products and simple products in the same table. A variations table only contains product variations from a single variable product.

You can easily create a product variation table for any woocommerce variable product on your site. This doc will explain all the necessary steps in detail to create your own custom woocommerce variation table. WooCommerce Product Table PRO is the most flexible solution to create product tables for your site and this includes woocommerce variation tables as well!

WooCommerce variation product table demo

Please see a demo woocommerce product variation table here. Reference image below:

WooCommerce product variation table demo
Example of a WooCommerce variation table. Click on image to go to the demo and try it.

Using the variations table you can make it much simpler for your customer to find and purchase the product variation that they need. It offers a far better user experience than the default WooCommerce attribute dropdowns which can be confusing and difficult to use.

Important notes on the variation table facility

  • This table will show product variations in separate rows
  • The table will only show product variations, it will not show other product types such as variable and simple products.
  • You can customize the look and elements of your variation table using WCPT PRO product table editing facilities.
Another example of a custom woocommerce product variation table.

Variation tables can be of any size, they can contains 100s of products if required and support filtering and pagination as well.

To create a product variations table simply create a product table using the product table editor and in the shortcode add the product_variations=”true” attribute and ids= “111” where 111 is ID of the variable product.

[product_table id="123" ids="111" product_variations="true"]

In the above example replace id value with table ID and ids value with the variable product’s ID. 

Custom ordering for your WooCommerce product variations

You can give your product variations table sorting instructions by going to the table’s settings > Query > Initial orderby. If you need to give your product variations a special custom order then please see the below reference screenshot and set Initial orderby to ‘Menu order’ and Initial order to ‘Ascending’:

To show custom order for your products in the woocommerce variation table, use these ordering settings.

In the backend on the variable product’s settings page > ‘Product data’ section > Variations > you can drag and drop the variations to give them the order you want. With the above ordering settings in place, the product table will show the variations in the same order as the order you have given them in the backend.

Your WooCommerce variation product table can show the variations in the same order as the backend.

Show WooCommerce product variation table on the variable product page

You can place the shortcode in the description or short description of a product to make the table appear on its product page. In this case you do not need to enter the ‘ids’ shortcode attribute as the shortcode will automatically use the current product id if ids is left empty. 

So, writing :

[product_table id="123" product_variations="true"] 

will be enough in the product description. You do not need to enter ids=”111″ as the plugin will automatically add it.

If you do not want to type in the shortcode on every variable product page, but you need the variations table to show up on all those pages, you can add the shortcode via PHP. This is not part of the plugin facilities however and can be achieved via a custom work request. 

Select a group of product variations for your table based on their SKUs

If you need to add variations to your product table based on their SKU, then use the shortcode option variation_skus=”sku1, sku2″. Enter the variations separated by comma. Please see an example shortcode below:

[product_table id="123" product_variations="true" variation_skus="sku1, sku2"]

Add your WooCommerce product variation table to product pages via PHP

If you wish to automatically place your new product variations table on all the variable product pages then you can use this solution. The variation product table will automatically show the products belonging to the parent variable product on that page.

Add the following to your child theme’s functions.php file to add variation table in the product description (in the shortcode replace id=”122″ with your table id):

// wcpt custom: adds variation table in product main description
add_filter('the_content', 'wcpt__custom__variation_table__in_content');
function wcpt__custom__variation_table__in_content( $content ){
  global $product;

    ! empty( $product ) &&
    function_exists('is_product') &&
    is_product() &&
    $product->get_type() === 'variable'
    $content = '[product_table id="122" product_variations="true"]' . $content;

  return $content;

To add variation table before the product variation form on product pages, use this (in the shortcode replace id=”122″ with your table id):

// wcpt custom: adds variation table above product form
add_action('woocommerce_before_add_to_cart_form', 'wcpt__custom__variation_table__before_form' );
function wcpt__custom__variation_table__before_form(){
  global $product;

    ! empty( $product ) &&
    function_exists('is_product') &&
    is_product() &&
    $product->get_type() === 'variable'
    echo do_shortcode( '[product_table id="122" product_variations="true"]' );

To hide the default woocommerce ‘add to cart form’ from the variable product pages you can copy paste this CSS in your child theme’s style.css file:

.product .variations_form {
  display: none !important;

Only show relevant columns based on current product attributes

Solution 1:

[product_table id="123" product_variations="true" hide_empty_columns="true"] 

You can use the hide_empty_columns=”true” facility to hide the table columns which have no values in any of their cells. This is usually a good solution for hiding attribute columns where the cells contain no other content other than the attribute value. But if your column template outputs values even when there is no attribute term, then you need to use the next solution. This can be the case if your attribute element is configured to output a default value if there is no associated term, or if you are using multiple elements in the same column beside the attribute element. In these two cases even if the attribute has no value, there will be content in the column, so it will not be hidden.

Solution 2:

[product_table id="123" product_variations="true" laptop_attribute_columns="3: pa_color | 4: logo" phone_attribute_columns="2: pa_color | 5: logo"] 

You can use laptop_attribute_columns to connect columns with attributes. If a variable product does not have one of the attributes listed in laptop_attribute_columns then that attribute’s related column will be removed from the table.

This is very useful when you want to use the same product table on the product pages of different variable products that have different sets of attributes. One product may have attributes Color and Logo, whereas another has Size and Material. Normally you would need to create 2 separate product tables in this case to place on the product pages of these products.

Now you can create a single product table with 4 attribute columns Color, Logo, Size and Material, then use laptop_attribute_columns=”3: pa_color | 4: logo | 5: pa_size | 6: pa_material”

The Format for laptop_attribute_columns value is column number (1, 2, 3…) followed by “:” then the attribute slug. Each set of ‘column number: attribute slug’ is separated by the pound “|” sign so that you can list multiple columns.

So if you have the attributes Color, Size and Material attached to your products and in your table the 3rd columns is for Color, 4th columns for Size and 5th column for Material then you would enter laptop_attribute_columns=”3: pa_color | 4: pa_size | 5: pa_material”

The above shortcode attribute tells the plugin to hide the 3rd column if the product does not have Color attribute, 4th if it doesn’t have Size and 5th if it doesn’t have materia.

If you have a separate set of columns in your table settings for tablet and phone devices then you can fill out tablet_attribute_columns=”…” and phone_attribute_columns=”…” as well.

If in your responsive layout you have not separated the attributes into separate columns and have them in the same column, then you can instead set a condition directly on the element itself to only show it if the product has the relevant attribute. For this open the attribute element’s setting in your table settings, then open its Condition settings section and set an attribute condition.

The slug name for custom attributes is simple ‘Color’ turns into ‘color’. ‘Can Size’ turns into ‘can-size’. For global attributes you need to add ‘pa_’ at the beginning of the slug, so ‘Color’ becomes ‘pa_color’ and ‘Can size’ turns into ‘pa_can-size’ if these are global attributes.

Please feel free to write in to support if you have any trouble with this facility.

Show WooCommerce product variations table in Elementor product template

In the Elementor product template create a Shortcode element. In this shortcode element enter the variation table shortcode but without the ids=”…” shortcode attribute. WCPT PRO will automatically detect the current product and display its variations in the table.

Show woocommerce product variation table in Elementor
Show your woocommerce product variation table in your Elementor template.

Shortcode attributes

Save time and effort while creating new tables by using the shortcode attributes included in WCPT such as category, limit, ids, etc. WCPT PRO extends this list of shortcode attributes even further.

Using shortcode attributes included in WCPT you can save a lot of time and effort by modifying any shortcode’s query on the fly. For example:

If you want to reuse the same shortcode to show category clothing in one table and shoes in another table you can do this:

[product_table id=”123″ category=”Clothing”]

[product_table id=”123″ category=”Shoes”] 

To display only specific products, chosen by post ID, in a table:

[product_table id=”123″ ids=”111, 222, 333″]

As you can imagine, this saves a lot of work as you can create a table and then re-use it to display different results based on different queries that are generated using the shortcode attributes.

You can find the list of shortcode attributes next to the shortcode on any product table editor page.

Some shortcode attributes are marked PRO and are available in the premium version of the plugin WCPT PRO

Filter by tags: Just you the taxonomy shortcode attribute for this and target the product_tag taxonomy [product_table id=”123″ taxonomy=”product_tag: Tag 1, Tag 2″]

Filter by attribute: [product_table id=”123″ attribute=”Attribute 1: Term 1, Term 2 | Attribute 2: Term 3, Term 4″]


WCPT PRO offers a powerful search facility that is capable of using the keyword phrase entered by visitors and looking through product title, content, SKU, excerpt, category, attributes, custom fields and tags to yield comprehensive results. Moreover, using match weightage / relevance rules you can deliver more accurate search results.

Weightage rules 

You can find the weightage rules in WP Dashboard > Product Tables > Settings > Search > title rules, content rules, sku rules … etc  

  • Phrase exact: Applies when the match between the keyword phrase and the product field is exact. Eg: when title and keyword phrase are both “Chocolate sundae”.
  • Phrase like: Applies when the keyword phrase entered by user is contained within the field text. Eg: when keyword phrase is “Chocolate sundae” wherase the title is “Chocolate sundae ice-cream”.
  • Keyword exact: Applies when one of the keywords in the search phrase exactly matches a word within the field text. Eg: when keyword phrase is “Chocolate sundae” and the word “Chocolate” in this matches in the title “Chocolate ice-cream”.
  • Keyword like: Applies when one of the keywords in the search phrase is included within a word in the field text. Eg: when keyword phrase is “Choco treat” and the word “Choco” is a sub-word in the title “Chocolate ice-cream”.

In the case of attribute and custom field, you can set custom weightage for each term. This facility is very useful when, for example, you want to prioritize ‘genre’ matches over ‘artist’ matches for the keywords entered by user. In that case you would give the genere attribute higher match scores, therefore pushing up its results compared to artist attribute match results.

Using the checkbox next to any weightage rule you can outright disable the rule if you uncheck it.  

Search exact “keyword” only

Let us take an example where the search focuses on a custom field ‘manufacturing code’. In this case it may be necessary that the results for a keyword like ‘123’ only returns products with custom field ‘manufacturing code’ set to ‘123’ and not results for ‘1234’, ‘0123’ etc. 

To enable exact match, go to the global search settings > weightage rules > open the target where you want to search. In this example it is ‘custom fields’. Now disable all weightage rules for it except ‘Phrase exact’. Doing this instructs the plugin to only return products where the custom field value exactly matches the searched keyword.


You can do the same for any other search target areas as well where you only want exact matches – title, content, excerpt, SKU, custom field, attribute, category, tag. SKU example:

Resource usage / response speed

If you are searching through several product properties and have a large number of products on your site, your search results can end up taking a long time. To workaround this situation:

  • Ensure memcache is enabled on your server. This helps cache repeated database searches, therefore speeding results and reducing resource usage.
  • Only enable the fields that are most important. You may also want to consider combining different product properties into a single custom field dedicated for search, then target only that custom field for search.
  • Consider switching to a web host that offers the requisite resources to support your heavier search requirements.

Global search shortcode

A special search shortcode is included in WCPT PRO that lets you create a search bar with a category dropdown. You can place this shortcode on your site outside your product table, anywhere that accepts shortcodes, such as text widget, or add it to your product templates via PHP.

[wcpt_search clear_redirect="home" redirect="search"]

Using the category dropdown your site visitor can select the category they wish to search within, or they may search through all categories at once. The search facility will redirect them to the category page that they have selected.

clear_redirect=”home” lets you decide which page to show when user clears search. Possible values –

  • home : leads to homepage
  • shop : leads to woocommerce shop page
  • category : leads to current category page with the search cleared 

redirect=”shop” lets you decide on which page to show the search results. Possible values:

  • search : leads to the product search page. This is the default option.
  • category : takes visitor to the selected product category if they selected a product category in the search dropdown.

disable_category=”true” can be used to hide the category dropdown.

category_required=”true” can be used to make the category selection mandatory.

placeholder=”search” lets you set the placeholder text in the input box. For translations enter placeholder_*locale*=”Translation” where *locale* is the locale code like fr_FR for french, en_US for US region english, etc.

submit_label=”Submit” lets you set a text label for the submit button. For translations, use locale codes like: submit_label_fr_FR=”Submit”

all_label=”All” lets you change the label for ‘all categories’ option in the category dropdown. For translation, use locale codes like: all_label_fr_FR=”All”

exclude=”category-1, category-2″ will exclude categories from the dropdown.

include=”category-1, category-2″ will only show those categories in the dropdown. 

hide_search_icon=”true” will hide the search button icon.

width=”400px” sets a fixed width for the search box.

max_width=”800px” defines a limit for the possible width.

For styling the global search shortcode please see the Style Tips doc section “Global search shortcode”.

You can also add this shortcode directly via PHP to different parts of your site. You can copy paste the following examples in your child theme’s functions.php file:

Above archive page tables:

add_filter( 'wcpt_shortcode_attributes', 'wcpt_custom__search_bar_above_table' );
function wcpt_custom__search_bar_above_table($atts){
  if( ! empty( $atts['_archive'] ) && ! wp_doing_ajax() ){
    echo do_shortcode('[wcpt_search]');
  return $atts;

Top of product archive pages:

add_action('woocommerce_before_main_content', 'wcpt_custom__search_bar_above_archive');
function wcpt_custom__search_bar_above_archive(){
  echo do_shortcode('[wcpt_search]');  

Live search / instant results / autocomplete

This feature is not part of WCPT PRO. However, you can use select 3rd party plugins that are compatible with WCPT PRO for live search. Please note:

  • When using 3rd party plugin for search results, the search settings of WCPT PRO, including weightage rules will not take effect.
  • The 3rd party plugin will affect the results only on the product search page of your site. You can replace the product grid on this page with product tables using the Archive override facility included in WCPT PRO.
  • The 3rd party search elements cannot be used ‘inside’ the WCPT container, navigation area. They will remain outside at another location on the page, either in the widget area, or top of page depending on the 3rd party plugin facilities.