Repository navigation
v1.5.0 - personalisation inside links
Placeholders now work inside link URLs.
https://example.com/book?fname={{first_name}}&lname={{last_name}}&e={{email}}
becomes, per recipient:
https://example.com/book?fname=Anne%20Marie&lname=O%27Brien&e=anne%40test.com
Values are percent-encoded, not HTML-escaped - a name containing a space, an apostrophe or an ampersand would otherwise break out of its query parameter.
Available: {{first_name}}, {{last_name}}, {{full_name}}, {{email}}, {{company_name}}, {{website}}, {{country}}.
Click tracking still works
Previously a link containing a placeholder was silently excluded from tracking. It is now tracked as a template, with the real destination resolved at the moment of the click - the only point at which the recipient is known.
Safety
Contact data arrives by CSV and is not trusted to decide where a link points. A placeholder in the host is refused outright, and a resolved destination whose host differs from the template's falls back to the template. The open-pixel and unsubscribe tokens are still never registered as links.
No schema change.
Tested up to: 6.8
Installing
Download techzapp-crm.zip below. Do not use the auto-generated source archives - they omit vendor/ and the plugin will not load.