function hook_mail_alter(array &$message) {
if ($message['id'] === 'commerce_order_receipt') {
$language = \Drupal::languageManager()->getCurrentLanguage()->getId();
if($language == 'en'){
$message['subject'] = t('security');
}
if($language == 'fr'){
$message['subject'] = t('Sécurité');
}
}
}
}
对于Gmail中主题的基于语言的显示,我添加了这样的代码。身体部位已正确翻译。仅主题部分,我面临重音问题(sC3A9curitC3A9
)。我在Gmail帐户中收到了这样的邮件。
我为我的内容“安全性”添加了用户界面翻译文本,并将我的代码mail_alter函数更改为$message['subject'] = 'security'
。没有if条件。根据当前语言自动翻译。但是只收到法语邮件的英语主题。
我也尝试使用标头类型格式$message['headers']['Content-Type'] = 'text/html; charset=UTF-8; format=flowed; delsp=yes';
。但是我没有成功。