Two forms, one preset
Both of these resolve to the same preset, and both work at all times:Changing the base and the parameter
Both halves are yours, under Settings → Links & fallbacks:
Change the base to
/kit/ and every preset link becomes /kit/starter-kit. Changing it flushes permalinks for you.
The parameter name is checked against names WordPress and WooCommerce already own, and a collision is refused. It subtracts the plugin’s own registered parameter from that list first, so saving the settings screen twice does not accuse you of colliding with yourself.
Renaming a preset
Change a preset’s slug and the old one keeps working for 30 days, as a permanent redirect to the new one. That window exists because a link, once shared, is out of your hands. A newsletter sent last week cannot be edited. Thirty days is long enough for traffic from an existing campaign to drain. After 30 days the old slug stops resolving and meets the not-found fallback.Slug collisions
Two presets cannot share a slug. If you type one that is taken, the new preset gets a numbered suffix —starter-kit-2 — and saves. It does not refuse the save and make you think of another name.
Check the Preset link card after saving if the exact slug matters to you.
When a link does not resolve
A mistyped slug, a deleted preset, or a rename older than 30 days all reach the same place: your fallback URL, under Settings → Links & fallbacks. Leave it empty and customers go to your shop page. They also get a notice — That link is not valid. It may have been changed or removed. The shipped wording deliberately does not say whether the preset ever existed. Anyone can guess a URL, and a message confirming what used to be there tells a stranger more than it tells your customer. You can reword it; see Cart notices and wording.UTM parameters
Campaign parameters on a preset link —?utm_source=newsletter and friends — can be carried through the redirect to the cart, so your analytics still attribute the visit. Off by default; turn it on under Settings → Links & fallbacks.
Settings reference
For developers
cartpresets_preset_url shapes the URL a preset outputs. It does not affect how an incoming request is parsed — that read path is independent, so changing one keeps the other working. See the hooks reference.