My organisation has members who speak different languages, and we send them emails written in the language they speak.

These emails have an opt-out link, generated by the token {action.optOutUrl}. Our problem is that the link always leads to the English version of the form, while we would like it to be in the same language as the email. Same thing for the optout confirmation. So for example the token should generate www.example.com/de/civicrm/mailing/optout? when sending an email in German (our CMS is Drupal).

I can see two ways for CiviCRM to do that:

  • Use the preferred language of the user
  • Use the language used by the person who creates the mailing

Actually, it seems the second option is almost there: if I create the mailing from an interface in German (/de/civicrm/a/#/mailing/xxx), the Test mail has the link generated for German, but unfortunately the real mailing doesn't.

Is this something lacking from civicrm, or am I missing something? I would rather avoid having to create one token and one optout message per language, especially for the former as it requires development.

1 Answer 1


Yes, it's a know limitation. The language used is the language of the cron job. If you manually launch the scheduled task with the proper language, you should be able to send in the proper language.

The way we intend to solve it is to add some option to tell in which language we want the mailing to be send - cf. https://issues.civicrm.org/jira/browse/CRM-16352


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.