Zum Inhalt springen

FAQ

Dieser Inhalt ist noch nicht in deiner Sprache verfügbar.

Yes. Marks reads WooCommerce product state and registers no hooks until WooCommerce is active. If it is inactive, Marks shows an admin notice and does nothing else.

Seven: Sale, New, Low stock, Bestseller, Discount percent, Free shipping and Out of stock. Sale, New, Low stock, Bestseller and Out of stock are on by default; Discount percent and Free shipping are opt-in. Each has its own toggle and (except Discount percent) an optional custom label.

While the product’s created date is within the newness window, 30 days by default, configurable on the Marks screen. It uses the WooCommerce created date, not the WordPress publish date of the post.

Only on products with WooCommerce stock management enabled, when the remaining quantity is above zero and at or below the low-stock threshold. Products without managed stock never show it.

The automatic badges use fixed semantic colours: Sale and Low stock are amber, New and Free shipping are green, Bestseller is the accent (an inked vermilion, not a UI blue), Discount percent is red, and Out of stock is grey. The manual badge uses whichever of the five semantic colours you pick. These are intentionally not admin settings, re-skin them with CSS instead.

How do I add a manual badge to a single product?

Section titled “How do I add a manual badge to a single product?”

Set the store-wide label and colour on the Marks screen, then add the product meta _marks_manual_text to each product that should show it; the meta value is the text that renders. Optionally add _marks_manual_style (accent, success, warning, danger or neutral) to recolour that one product.

Yes. Appearance has two caps, one for the single product page (max_badges_single, default 4) and one for loop cards (max_badges_loop, default 3). Badges are de-duplicated, then kept in priority order (manual, sale, new, low stock, bestseller, discount, free shipping, out of stock), so the cap drops the lowest-priority badges first.

Enable Hide theme “Sale!” flash. It only takes effect when the Sale badge is also enabled, then Marks suppresses the theme’s native corner flash so shoppers see one promo label.

Does it add JavaScript or cause layout shift?

Section titled “Does it add JavaScript or cause layout shift?”

No front-end JavaScript at all. Badges are server-rendered CSS, absolutely positioned over the product image with reserved space, so there is no script on listings and no Cumulative Layout Shift. The only script Marks loads is on its own admin settings page (for the help popovers and live preview), deferred.

Can I change the badge size, shape or colours with CSS?

Section titled “Can I change the badge size, shape or colours with CSS?”

Yes. The storefront styling is built on --marks-* custom properties, --marks-ink (the accent), gap, inset, radius, padding, font size/weight and each semantic background. Override them in your theme stylesheet under .marks-badges; no markup overriding needed. There is no theme template override file, the CSS variables are the supported customisation surface.

Three. storefront_kit_product_badges filters the resolved badge list (before de-dupe and cap), marks_sanitize_settings filters the sanitised settings before save, and the marks_admin_settings_after_manual_table action lets you add controls to the settings page. See Using Marks → Developer hooks for working examples.

Can I place badges outside the default templates?

Section titled “Can I place badges outside the default templates?”

Yes, with the [marks_badges] shortcode. Use it bare for the current product, or pass id and context (single or loop), for example [marks_badges id="123" context="loop"]. It enqueues the badge stylesheet on that page only when the product has badges.

Badge text is plain, escaped content, and colour is never the only signal, each badge carries its own readable label. Decorative effects (the stamp-press entrance, the peel-lift corner) are CSS-only and the animation is disabled under prefers-reduced-motion. The admin help popovers use the native Popover API with an aria-expanded keyboard/screen-reader fallback.

Is it compatible with HPOS and the checkout blocks?

Section titled “Is it compatible with HPOS and the checkout blocks?”

Yes. Marks declares compatibility with WooCommerce HPOS (custom order tables) and the Cart/Checkout Blocks, ships a translation template (languages/marks.pot), and removes its options on uninstall.

Deleting the plugin removes the marks_settings and marks_db_version options. The per-product manual-badge meta (_marks_manual_text, _marks_manual_style) is left in place, it is your content and may be useful elsewhere. Marks contacts no external service.

Only if Polski’s badge module is off. Polski has its own product badges, run one badge system, not both. See Standalone storefront plugins.

Marks Pro (planned) adds scheduled campaign badges, conditional display rules, image badges and A/B label tests, not the basic automatic badges, which are free.