xpay✦ Commerce
Directory
WooCommerce plugins
RockOn Woo Variations Table
RockOn Woo Variations Table
Show WooCommerce variable products as a table, with price, stock, quantity and AJAX add to basket. Shortcode and block.
Will this break my store?
What the WordPress.org registry says about keeping RockOn Woo Variations Table running.
Tested to 7.0.4 — 1 branch behind 7.1
Tested against the WordPress branch in use today.27 days ago
At least 0.4 releases a year since launch. WordPress.org only lists versions still available for download, so the real number may be higher.7.4
Your host must be running at least this version.6.4
1
A single maintainer. Worth knowing if the plugin is load-bearing for your store.Maintenance & trust
Scored on how RockOn Woo Variations Table is looked after — not on how many stores run it.
Maintenance
35 / 35WordPress compatibility
20 / 20Support responsiveness
Not enough dataMerchant satisfaction
Not enough dataListing transparency
10 / 10Ratings
No one has rated this plugin on WordPress.org yet. That is a statement about the ratings page, not about the plugin — plenty of well-kept plugins never collect them.
RockOn Woo Variations Table turns WooCommerce’s variation dropdowns into a compact table, so shoppers can compare and order several products from one page instead of visiting each product in turn.
Features
- Shortcode
[rovartable]and a “Variations Table” block. - Pick products by ID, category, tag, or product attribute.
- Optional columns: image, title, SKU, attributes, price, stock, quantity, basket.
- Live price, stock, SKU and image updates as options are chosen, with no page reload.
- AJAX add to basket, including an optional “Add selected to basket” button for the whole table.
- Works without JavaScript: every row falls back to a link to the product page.
- Accessible markup: real table headers, labelled form controls, live-region status messages.
- Responsive: the table stacks into cards on small screens.
- Respects the visitor’s light or dark colour scheme.
- Fully translatable.
Performance
Variation data is embedded in the page so option matching happens instantly in the browser. Products with more variations than the threshold (30 by default, filterable via rwvt_ajax_variation_threshold) fall back to a single AJAX lookup, mirroring WooCommerce’s own behaviour.
Shortcode
Basic use:
[rovartable id="12,34,56"]
Choosing products
id— comma separated product IDs, rendered in the order given.category— comma separated product category slugs.tag— comma separated product tag slugs.attribute+terms— a product attribute slug and its term slugs, e.g.attribute="colour" terms="red,blue".exclude— product IDs to leave out.categories_exc— category slugs to leave out.limit— maximum number of products (0 = no limit).orderby—date,title,menu_order,ID,randormodified. Defaultdate.-
order—ASCorDESC. DefaultDESC.id takes priority: when it is set, the category, tag and attribute filters are ignored.
Controlling the table
columns— comma separated, in display order. Available:image,title,sku,attributes,price,stock,quantity,button. Defaulttitle,attributes,price,stock,quantity,button.thead— custom header labels, comma separated, replacing the defaults in order.caption— a visible caption above the table.class— extra CSS classes on the wrapper.link_titles—yes(default) orno.add_all—yesto show an “Add selected to basket” button. Defaultno.disabled—yesrenders a read-only table with no dropdowns, quantity fields or basket buttons. Defaultno.
Examples
[rovartable id="12,34" thead="Product,Colour,Size,Price,Stock,Qty,Basket"]
[rovartable category="t-shirts" limit="10" orderby="title" order="ASC" columns="image,title,sku,attributes,price,quantity,button" add_all="yes"]
[rovartable attribute="colour" terms="red" caption="Everything in red"]<h3>Hooks</h3>
Filters:
rwvt_product_ids— the resolved product ID list for a table.rwvt_table_columns— the resolved column definitions.rwvt_render_custom_column— render a custom column’s cell.rwvt_no_products_message— the output when a table matches nothing.rwvt_script_settings— the configuration handed to the front-end script.rwvt_ajax_variation_threshold— inline variation payload cut-off.
Upgrading from version 6
Your existing shortcodes keep working. [rovartable id="12,34"] and [rovartable id="12,34" thead="Title,Colour,Size,Basket"] render the same columns they always did.
A shortcode that supplies thead keeps the version 6 column set (title, one column per attribute, then basket), because thead labels are positional and adding the new columns would shift every label onto the wrong one. To take the new Price, Stock and Qty columns, name them explicitly:
[rovartable id="12,34" columns="title,attributes,price,stock,quantity,button" thead="Product,Colour,Cost,Availability,Amount,Basket"]
Shortcodes without thead gain the new columns automatically.
Two behaviour changes to be aware of
disabledwas accepted but never did anything in version 6. It now renders a read-only table. If you haddisabledon a shortcode, remove it unless you want that.categories_excwas also accepted and ignored. It now genuinely excludes those categories.
Custom CSS
These version 6 hooks are unchanged: .ron-woo-table-section, tbody.row-hover, tr.row-2, .even, .odd, td.value, td.column-5, select.user_vote.
These are gone, because the markup they belonged to was invalid or buggy: div.ro-loader-*, input#ron-att-name-*, select#ron-attr-*, and a#add-cart-*. The basket control is now button.rwvt-add-to-cart, and each cell carries data-column so it can be targeted reliably.
Custom PHP
ron_woo_variations_table(), `ron_woo_variable_add_to_cart()` and `ron_woo_find_matching_product_variation()` still exist as deprecated wrappers, so template customisations will not fatal. They log a deprecation notice when `WP_DEBUG` is on and will be removed in a future major release; move to `do_shortcode( '[rovartable ...]' )`.
Custom JavaScript
The check_choosed_var AJAX action and the global getVarData() function have been removed. The replacement endpoints require a nonce. If you wrote custom scripts against them, they need updating.
Requirements
Version 7 needs WordPress 6.4+, PHP 7.4+ and WooCommerce 8.0+. On older setups WordPress will not offer the update, so those sites simply stay on version 6 rather than breaking.
Yes. Simple products are shown as ordinary rows with a working add to basket button. Where a column does not apply to a product, the cell shows a dash so the table stays aligned.
The header is the union of every attribute in the table. A product that does not use one of them shows a dash in that column.
Yes. Append WooCommerce’s usual attribute parameters, for example ?attribute_pa_colour=blue, and matching dropdowns are preselected on load.
The table renders in full, and each row shows a link to the product page instead of the basket button.
Filter rwvt_ajax_variation_threshold. Products above the threshold use a single AJAX request per selection instead.
Yes, compatibility is declared for high performance order storage, cart and checkout blocks, and the product block editor.
Categories
Plugin details
Tags on WordPress.org
