WooCommerce · Elementor

Compare Products Table widget for Elementor

A side-by-side comparison table of WooCommerce products the shopper selected.

Open live demo

Get King Addons

This page describes the PHP/JS for this widget — not a renamed stub. Install the free plugin from WordPress.org.

Get King Addons

What it actually does

A side-by-side comparison table of WooCommerce products the shopper selected.

Compare Products Table Widget (Free).

render() writes HTML data attributes: data-hide-equal, data-product_id, data-product_sku, data-quantity, data-row-id, data-sticky-header.

Content is loaded with WP_Query in PHP (not a hardcoded list in the editor).

Output depends on WooCommerce objects (products, cart, or account). Empty without WooCommerce data.

Some inspector controls are marked Pro in PHP (eicon-pro-icon / king-addons-pro-control). Those need King Addons Pro, not Elementor Pro.

How to add it in Elementor

  1. Install King Addons. Install Elementor and King Addons. Get King Addons from WordPress.org.
  2. Edit with Elementor. Open a page and click Edit with Elementor.
  3. Insert the widget. Search the panel for “Compare Products Table”. Typing “king” lists every King Addons widget.
  4. Set inspector controls from this widget’s PHP. Configure “Product IDs”, “Max Products”, “Categories (Pro)”, “Show Image”. Style and Content tabs are listed on this page.

When to use it

Tip: After King Addons is active, type king in the Elementor search box to list every widget, including Compare Products Table.

Inspector controls from this widget’s PHP

ControlWhat the code does
Products — Product IDsComma-separated product IDs to compare.
Products — Max ProductsFree version limited to 4 products.
Products — Categories (Pro)Comma-separated slugs (Pro).
Display — Show ImageSwitcher inspector control (`kng_show_image`).
Display — Show PriceSwitcher inspector control (`kng_show_price`).
Display — Show RatingSwitcher inspector control (`kng_show_rating`).
Display — Show Short DescriptionPassed through to the post excerpt.
Display — Show SKUSwitcher inspector control (`kng_show_sku`).
Display — Show StockSwitcher inspector control (`kng_show_stock`).
Display — Show Add to CartSwitcher inspector control (`kng_show_add_to_cart`).
Display — Hide Identical Rows (Pro)Switcher inspector control (`kng_hide_equal_rows`).
Layout — Cell AlignmentWrites CSS `text-align` onto the widget’s front-end markup. Options: Left; Center; Right.
Layout — Cell PaddingWrites CSS `padding` onto the widget’s front-end markup.
Header — TypographyElementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-compare-table__head .king-addons-compare-table__cell`.
Header — Text ColorWrites CSS `color` onto the widget’s front-end markup.
Header — BackgroundWrites CSS `background-color` onto the widget’s front-end markup.
Header — BorderElementor border group: type, width, color, and radius when the group includes it. Selector: `{{WRAPPER}} .king-addons-compare-table__head .king-addons-compare-table__cell`.
Header — Border RadiusWrites CSS `border-radius` onto the widget’s front-end markup. (min 0, max 40).
Header — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-compare-table__head`.
Body — TypographyElementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-compare-table__body .king-addons-compare-table__cell`.
Body — Text ColorWrites CSS `color` onto the widget’s front-end markup.
Body — BackgroundWrites CSS `background-color` onto the widget’s front-end markup.
Body — Stripe BackgroundWrites CSS (row, background-color) onto the widget’s front-end markup.
Body — BorderElementor border group: type, width, color, and radius when the group includes it. Selector: `{{WRAPPER}} .king-addons-compare-table__cell`.
Body — Cell Border RadiusWrites CSS `border-radius` onto the widget’s front-end markup. (min 0, max 30).
Add to Cart — TypographyElementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .button`.
Add to Cart — PaddingWrites CSS `padding` onto the widget’s front-end markup.
Add to Cart — Indicator SizeSpacing/size control (min 8, max 40).
Add to Cart (Normal) — Text ColorWrites CSS `color` onto the widget’s front-end markup.
Add to Cart (Normal) — BackgroundWrites CSS `background-color` onto the widget’s front-end markup.
Add to Cart (Normal) — BorderElementor border group: type, width, color, and radius when the group includes it. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .button`.
Add to Cart (Normal) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .button`.
Add to Cart (Hover) — Hover Text ColorWrites CSS (button, color) onto the widget’s front-end markup.
Add to Cart (Hover) — Hover BackgroundWrites CSS (button, background-color) onto the widget’s front-end markup.
Add to Cart (Hover) — BorderElementor border group: type, width, color, and radius when the group includes it. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .button:hover`.
Add to Cart (Hover) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .button:hover`.
Add to Cart — Border RadiusWrites CSS `border-radius` onto the widget’s front-end markup. (min 0, max 40).
View Cart Link — Spacing From ButtonWrites CSS `margin-left` onto the widget’s front-end markup. (min 0, max 60).
View Cart Link — TypographyElementor typography group: family, size, weight, transform, style, decoration, line-height, letter-spacing. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .added_to_cart`.
View Cart Link — PaddingWrites CSS `padding` onto the widget’s front-end markup.
View Cart Link (Normal) — Text ColorWrites CSS `color` onto the widget’s front-end markup.
View Cart Link (Normal) — BackgroundWrites CSS `background-color` onto the widget’s front-end markup.
View Cart Link (Normal) — BorderElementor border group: type, width, color, and radius when the group includes it. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .added_to_cart`.
View Cart Link (Normal) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .added_to_cart`.
View Cart Link (Hover) — Hover Text ColorWrites CSS (cart, color) onto the widget’s front-end markup.
View Cart Link (Hover) — Hover BackgroundWrites CSS (cart, background-color) onto the widget’s front-end markup.
View Cart Link (Hover) — BorderElementor border group: type, width, color, and radius when the group includes it. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .added_to_cart:hover`.
View Cart Link (Hover) — Box ShadowElementor box-shadow group for the selector. Selector: `{{WRAPPER}} .king-addons-compare-table__cell .added_to_cart:hover`.
View Cart Link — Border RadiusWrites CSS `border-radius` onto the widget’s front-end markup. (min 0, max 40).

Content and Style tabs from this widget’s PHP, including repeater fields and group controls (typography, background, border, shadow). Elementor’s Advanced tab is core Elementor and is not listed here.

FAQ

Which Compare Products Table options need King Addons Pro?

Controls marked with the Pro icon in this widget’s PHP. King Addons Pro is a separate license from Elementor Pro.

Does Compare Products Table require WooCommerce?

Yes. Install WooCommerce and add products (or complete a cart) before this widget has anything to show.

Do I need Elementor Pro?

No. King Addons runs on free Elementor. Some King Addons options (for example template-in-accordion, extra popup conditions, parts of the template catalog) need King Addons Pro — not Elementor Pro.

Related woocommerce widgets

Get King Addons

One free plugin. 80+ Elementor widgets, 650+ templates, and 4,000+ sections. Search for Compare Products Table after you activate it.

Get King Addons