Skip to main content

Auto compare in the product card

A shopper who opens three or four phones in a row soon forgets which one had the bigger battery. The Auto compare module answers that question right in the product card: a "Compare products" table puts the product on screen next to the 1–3 products the same shopper has just viewed in the same category, characteristic by characteristic. Nobody has to press "Add to compare" first — the table builds itself from the viewing history.

The "Compare products" table in the product card

What the shopper sees​

  • The current product is the first column, marked "You are viewing"; the products viewed before it follow, each with a "View" button.
  • Photo, name, rating and price on top; characteristics as rows below.
  • "Differences only" switch — hides the rows where every product has the same value, so only what really differs stays on screen.
  • "Open full comparison" — adds all products from the table to the shop's compare list and opens the usual comparison page.
  • The table appears only when there is something to compare: on the first product the shopper opens in a category there is no block at all.

The same table with "Differences only" switched on

On a phone the table scrolls sideways; the first column with the names of the characteristics stays pinned, and a "Scroll the table sideways" hint shows under it.

Phone, 390 px: the table before and after scrolling sideways

Which products get into the table​

  • Only products the shopper has viewed in this browser — the last ones first.
  • Only from the same category as the current product (or, if you choose so, from the neighbouring categories of the same parent section).
  • Only active products that are in stock and have a price. A product that went out of stock simply drops out of the table.
  • Characteristics are the same ones the comparison page shows — properties with the "Show in comparison" checkbox. Rows you listed as hidden in the settings are skipped.

Settings​

Settings → Auto compare in the admin panel (/admin/auto-compare). The settings page is in Ukrainian in every admin language.

Auto compare settings

SettingWhat it doesDefault
How many viewed products to show next to it1, 2 or 3, plus the product itself2
Which products count as similarOnly the same category, or the same category plus its neighbours under the same parent section. For a top-level category it is always the category itselfSame category
Hide characteristicsOne name per line, as on the site; letter case does not matterempty
Show the "Differences only" switchTurns the switch on or offon
Place in the product cardBelow the description and characteristics · below the product photo (next to "Share") · below the "Buy" button · next to the action buttons (wishlist, compare) · in the related products blockBelow the description
Where to put it

The table is wide, so the best place is below the product description — the default. In the default theme the "related products block" place hides the colour choice when the product has one, so keep that place for themes where it fits.

Cache and privacy​

  • The viewing history lives only in the shopper's browser (localStorage, key cms9_viewed, the same one the "Viewed products" widget uses). Nothing is written to the database and nothing is tied to the customer account.
  • The product page itself stays cacheable by LiteSpeed: the table is filled by a separate request (/auto-compare/block) that is never cached, so one shopper never sees another shopper's history.
  • No theme changes are needed — the block comes in through a render point that every theme already has.

Analytics​

Two events go to GA4 through gtag, or to dataLayer when there is no gtag (see GA4 events):

  • auto_compare_view — the table scrolled into view (once per page);
  • auto_compare_click — a click in the table: "View", "Differences only" or "Open full comparison".

Comparing the two tells you whether shoppers actually use the table or scroll past it.

Requirements and price​

  • eCMS9 core 5.0.5 build 712 or newer, PHP 8.2–8.5.
  • Paid module: €99 one-off, updates for 24 months; renewing updates — €50. A free 7-day trial is available. Installed from the module store; how to pay and renew — Buying modules.