WooCommerce Product Table PRO provides a long list of shortcode options (aka shortcode attributes) that can be viewed in the table editor. Here is a screenshot to show you where you can find the shortcode options in your product table editor:

These shortcode options are highly useful for the following reasons:
- Save a lot of time and effort — You reduce the number of new product tables you need to create for your site using these shortcode based facilities:
- Modify the product query — You can print out different sets of products from the same product table layout you’ve created simply by changing the shortcode option each time you place it on a page (see example).
- Create a template table — add all the columns you need for different product types in a single table and then using the shortcode options decide which columns should be hidden or displayed based on the current products (see example).
- Access additional powerful facilities —some of the table features are only available via the shortcode attributes (see example).
Example of modifying the product query using shortcode options
You can change the category of the products displayed by the table by modifying the category=”*slug*” option in the shortcode. You can find information on the category shortcode option here:

Let’s say you need to show 3 product tables on your shop, each displaying a list of products from a unique category — clothes, shoes, accessories.
In this case, you don’t need to create 3 separate product tables. Instead, create only one product table with no category selected in its query settings.
[product_table id="123"]
Now to print product tables showing the different categories you can simply re-use this shortcode with the category shortcode options modified like this:
[product_table id="123" category="clothes"]
[product_table id="123" category="shoes"]
[product_table id="123" category="accessories"]
And now you have printed 3 product tables showing different sets of products while you only needed to create one product table in the backend.
In the same way, to display a set of products based on their IDs you could use this shortcode option:
[product_table id="123" ids="111, 222, 333"]
Note: Some shortcode attributes (like the following ones) are marked PRO and are available only in the premium version of the plugin.
Show products with specific attribute terms:
[product_table id=”123″ attribute=”color: red, green | size: small”]
Example of creating a template table and showing different columns based on shortcode options
Lets say we have created a single product table for displaying our shop’s products — clothes, books, toys. But we need a different set of columns to be printed for each product table.
We create a single product table with the columns — product image, product name, color, author, maker, add to cart button. Here is our ‘master’ product table shortcode:
[product_table id="123"]
But here’s the catch — the attribute ‘color’ needs to be printed only if the product table is showing ‘clothes’, while the attribute ‘author’ belongs to the table showing ‘books’, and attribute ‘maker’ goes with ‘toys’.
Like we mentioned before, we can use the category shortcode option to re-use this table layout to print 3 different product tables, each displaying products from a separate category:
[product_table id="123" category="clothes"]
[product_table id="123" category="books"]
[product_table id="123" category="toys"]
But in each of these product tables there will be empty columns. Since our products belonging to ‘clothes’ category have no attributes terms for ‘author’ and ‘maker’, the first table will have two empty columns belonging to these attributes. Similarly the ‘books’ product table will have empty columns for ‘color’ and ‘maker. While the ‘toys’ table has empty ‘color’ and ‘author’ columns.
We can make out product table automatically hide empty columns using a shortcode option included in the plugin:

Now our new product table shortcodes look like this:
[product_table id="123" category="clothes" hide_empty_columns="true"]
[product_table id="123" category="books" hide_empty_columns="true"]
[product_table id="123" category="toys" hide_empty_columns="true"]
When our product tables are printed, the empty column is hidden for each product table. So now we have created 3 product tables, each displaying a different category of products and each with a different set of columns specific to the product category.
Therefore we have essentially created a ‘master table’ and we can show different versions of this table on different pages via modified shortcode options.
While this facility automatically hides empty columns in the table, the plugin also provides an option to manually decide which columns should be hidden from the table while printing it:

Now we have even more control over how much we can transform our ‘master table’ while printing different versions of it at different places on our site.
Note on ‘Conditions’ facility
The product table plugin provides you even more granular control — applying conditions on individual elements in the table template to decide whether they will be printed or not depending on the nature of the product and other criteria.
Example of application of this facility:
- Hide the add to cart and price element from non-logged in visitors.
- Print special notices, tooltips, or icons depending on whether product has specific category or attribute terms.
For more information watch this video on the product table’s conditions facility.
Special features provided by shortcode attributes
Please browse the shortcode options to learn about several more features provided in it. Here are some examples:
- Override any option in the editor’s ‘query’ tab using shortcode options to modify product results dynamically while printing the table
- Freeze or lock the product table’s heading or columns in place
laptop_freeze_left="1"laptop_freeze_heading="true" - Add additional heading layers above the column headings
laptop_upper_headings="..." - Override the navigation category options
nav_category="slug1,slug2" - Hide the table completely from the page if it was going to be empty
hide_empty_table="true" - Change the background color for rows that have the add to cart checkbox ticked
checked_row_background_color="green" - Add an html class to the product table for styling
html_class="custom-class-name"
