DK WC Cart Offers Docs

DK WC Cart Offers preserves DK Cart Offers behavior while replacing repetitive record entry with one rule set per product title.
If an answer cannot be found in the docs or a new feature or setting request is needed, please email me.

Offer types

Every offer set has an Offer Type. The default and currently supported type is Book Offer, which generates the format relationships documented below. Existing offer sets are assigned Book Offer automatically by the one-time 1.1.0 upgrade without changing their mappings, discounts, wording, or appearance.

The editor displays Offer Type as a read-only value. This keeps an existing set from silently changing its rule behavior. Bulk import creates Book Offer sets only.

Import offer sets in bulk

  1. Open DK Plugins → WC Cart Offers and select Import Book Offer Sets.
  2. Review the eligible variable-product titles, detected formats, and number of offers each title will generate.
  3. Use the All, Ready, Needs Update, and Completed views to review the catalog. Ready is shown by default.
  4. When mappings become stale because products or variations changed, click Update Mappings. The refresh preserves role choices, bundle mappings, discounts, wording, and appearance.
  5. When a global product language attribute is configured, use the Language filter and column to review titles by language.
  6. Use Search Offer Sets for a server-side catalog search. The importer shows 20 records per page by default; change that value under Screen Options.
  7. Select the ready titles and click Import Selected Offer Sets above or below the list. Completed titles cannot be imported again.
  8. Review only the imported titles that need bundle exclusions or other title-specific changes.

Bulk import creates published offer sets using the global discount and presentation defaults. Bundle mappings are intentionally left empty because most titles do not need them.

Create or edit one offer set

  1. Open DK Plugins → WC Cart Offers and add an offer set.
  2. Select the WooCommerce product or products containing the title's formats. Variable products expand to their variations; all other product types remain individual products.
  3. Review the display title used in offer wording. New sets default to the product title before the first colon.
  4. Confirm each product or variation's eBook, audiobook, paperback, hardback, or ignored role.
  5. If a bundle contains any of these formats, select it and mark only the formats it contains.
  6. Review the generated-offer preview and any warnings, set the digital-pair and print-plus-digital discounts, then publish or update.

The plugin compiles the same required-product, excluded-product, offered-product, and percentage data used by DK Cart Offers. The eBook and audiobook pair offers require both digital formats and are invalid when any print format is in the cart. A print format can trigger the configured discount on qualifying digital formats. A print offer is not shown when another paperback or hardback for that title is already present, including alternate hardback variations.

Bundle exclusions are format-specific. A bundle invalidates only offers for the formats marked as contained in that bundle.

If selected products or variations change later, the Needs Update view on the Cart Offer Sets list displays the number of affected sets and filters the list to those records. Select stale sets and choose Update Mappings from the Bulk actions menu to refresh them while preserving their settings. The editor also identifies an affected offer set as out of date so its roles can be reviewed and regenerated.

Wording and appearance

Book Offer Defaults controls the default checkbox text, wording, colors, image display, price display, and discount percentages. Colors use the standard WordPress color picker. Individual offer sets can override these defaults with the same controls.

Print-offer wording has separate editable templates for titles with an eBook only, an audiobook only, or both digital formats. This keeps the message accurate without assuming a format exists.

Cart behavior

The cart displays every valid offer in a responsive carousel, showing up to two offers on wider layouts and one offer on narrow layouts. Customers can swipe, use a trackpad, use the Previous and Next controls, or navigate with the left and right arrow keys. The scrollbar is intentionally hidden because those controls remain available.

Offer-card calculations always start with the product's regular retail price. A full-retail offer price uses normal styling; only an actual discounted price uses the configured offer-price styling. When an offer is accepted, a lower existing catalog price or product/variation Discount % continues to win over a weaker cart-offer discount.

Internal bundle child rows are excluded from matching only when the bundle plugin marks them as children. A separately added product remains eligible even when its SKU matches a component inside a bundle.

When multiple products share a broad format role, such as two hardcover bindings, their offer cards use the exact catalog format so each choice is clear. If overlapping offer sets target the same product, only the highest-priority matching offer is displayed.

Dismissing an offer hides it for the remainder of the WooCommerce session, including after the cart changes. When a currently valid offer is dismissed, Show dismissed offers appears below the carousel navigation and restores the session's dismissed offers.

Both plugins can be installed for comparison. While DK Cart Offers is active, this plugin leaves its editor available but disables its cart runtime to prevent duplicate offers and pricing.