Configuration
Marks is configured under a single top-level Marks admin menu. Settings are sanitised and clamped on save, so an out-of-range value can never break a listing.
Global toggle
Section titled “Global toggle”The master on/off switch for the whole plugin. When off, no badges render anywhere, regardless of the per-rule toggles.
Placement
Section titled “Placement”Where badge groups may render:
- Single product page — badges on the product image on the product page.
- Shop and category listings — badges on the loop cards in shop, category and tag archives.
Enable one or both. Each context has its own badge cap (see Appearance).
Automatic badges
Section titled “Automatic badges”Per-rule toggles, each with optional custom label text. Leave a label blank to use the built-in translated default.
| Badge | When it shows |
|---|---|
| Sale | Product is on sale |
| New | Published within the newness window |
| Low stock | Stock-managed and quantity at or below the threshold |
| Bestseller | Total sales reach the configured threshold |
| Discount % | Computed from regular vs sale price |
| Free shipping | Product shipping class matches your configured slugs |
| Out of stock | WooCommerce reports out of stock |
Thresholds
Section titled “Thresholds”The numbers that drive the rules:
- Newness window — how many days a product counts as New (30 by default).
- Low-stock level — the quantity at or below which Low stock appears (stock-managed products only).
- Bestseller sales count — the total sales that earn the Bestseller badge.
- Free-shipping class slugs — a comma-separated list of shipping-class slugs that trigger the Free shipping badge.
Appearance
Section titled “Appearance”- Shape — pill or square badges.
- Uppercase — optionally force badge labels to uppercase.
- Per-context caps — the maximum number of badges shown on a single product page and on a loop card, so a busy product never stacks too many badges.
Hide the WooCommerce sale flash
Section titled “Hide the WooCommerce sale flash”An optional setting to hide WooCommerce’s default corner Sale! flash when the Marks Sale badge is enabled, so shoppers see one clear promo label instead of two competing ones.
Manual badge
Section titled “Manual badge”A single store-wide manual badge — a label and a colour set on the Marks screen. Attach it to individual products by setting the product meta _marks_manual_text (and optionally _marks_manual_style) on the products that should show it. One consistent label keeps merchandising fast across a large catalogue.
Rendering and cleanup
Section titled “Rendering and cleanup”Badges render with plain CSS — no JavaScript — positioned over the product image so they never reflow the layout (CLS-safe). Marks ships a translation template (POT) and a clean uninstall that removes its options, and it is compatible with HPOS and the Cart/Checkout Blocks.