Refusals
Eight messages for a link that could not be followed.Partial adds
Four messages for a link that worked with a caveat.Later, in the cart
Four messages about editing a preset that is already in the cart.Labels
Three labels, shown on the cart line, the order, and in emails.Placeholders
Four messages contain a placeholder that carries a value:
These are checked when you save, in both directions:
- Dropping one leaves a sentence that reads as a typo — “limited to purchases per customer”.
- Adding one would break the cart page in front of a customer.
The one plural
limit_customer is the only message whose grammar changes with the number, so it is stored as a pair — singular and plural. Each falls back on its own, so rewriting only the plural gives you your sentence for two and the shipped one for one, rather than “1 purchases”.
If your store translates into a language with more than two plural forms, leaving this one at its default is genuinely better than rewriting it. The default path keeps proper plural handling in every locale; an override has exactly two forms in any language.
Translating
Two halves, and they translate differently. Wording you have not touched goes through WordPress’s normal translation functions and is in the.pot file like everything else. Nothing special is needed.
Wording you have rewritten is a value in an option, and an option value is data rather than a translatable string. CartPresets ships a wpml-config.xml naming every key so a translation plugin can pick it up.
Polylang reads the same file through its own WPML-config compatibility and needs no add-on.
Why String Translation only lists some of them
It lists the ones you have actually rewritten, and that is correct rather than a gap. WPML builds its list by intersecting the keys named in the config against the keys the option currently holds — and CartPresets stores only your overrides. A notice still at its shipped wording has nothing to translate there because it is translated through gettext instead. So the list grows as you edit. A store that has reworded nothing sees nothing.For developers
cartpresets_notice_text filters one customer-facing sentence before its values are put in, receiving the wording, the notice ID, and whether this is the plural form of a pair. See the hooks reference.