I am using CiviCRM 5.18.4 with WordPress 5.3.2, and residing in the United States, where we are required by law to include certain info (our postal address and an opt-out link) in ALL our emails. I can do this in my individual messages and bulk email footers, fine. But they don't show up in any of the Mailflow messages.

I have tried adding

<p>To comply with CAN-SPAM laws, we remind you that you can also opt-out of all mailings from us.  To do so, <a href="{$action.optOutUrl}" click here</a>, or send mail to {$action.optOut}. </p>

near the bottom of the (html) message template, but it doesn't plug in the token values (or it just generates a critical error).

But even if I could get it to work, why am I figuring out how to tweak this? Doesn't almost EVERYONE need to include a footer like this in almost ALL their workflow emails?

  • Is the above the EXACT text in your template? You're missing a > just before the "click here" words.
    – Demerit
    Jan 15, 2020 at 18:16

1 Answer 1


Take out the $ signs. Smarty variables use $ signs, tokens don't. It is a little bit awkward when they're mixed in the same template.

I don't know the legal answer to the other part of the question, but bulk mailings include it by default.

  • Actually when I originally did it without the $, then when I submitted a donation I got: << There has been a critical error on your website. Learn more about debugging in WordPress. >> Any other suggestions, maybe about where in the template to put it, or how to format it correctly? Jan 14, 2020 at 20:01
  • I just tried {domain.address} in the offline contribution receipt template and it worked, so maybe something else going on on that site? For testing purposes I put it at the bottom just before the <body> tag.
    – Demerit
    Jan 15, 2020 at 18:15
  • The missing > was caught early, but it took a lot more fiddling, especially with the placement of the token, to get it working. Thanks very much for helping me test and troubleshoot! Jan 17, 2020 at 20:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.