我正在尝试在注册后向用户发送确认电子邮件。我定制了电子邮件模板,这样用户就可以收到带有确认url的电子邮件。
这些是我的配置
fos_user:
# ...
service:
mailer: fos_user.mailer.twig_swift
registration:
confirmation:
template: AppBundle:Email:registration.email.twig
from_email:
address: registration@example.com
sender_name: Example
这是我的模板
{% block subject %}Registration Success{% endblock %}
{% block body_text %}
{% autoescape false %}
Hello {{ user.fullName }}!
Thanks for registering
<p><a href="{{ confirmationUrl }}">verify</a></p>
Greetings,
CofiCo team
{% endautoescape %}
{% endblock %}
我正在手动触发控制器中的电子邮件发送:
$token = sha1(uniqid(mt_rand(), true));
$user->setConfirmationToken($token);
$this->get('fos_user.mailer')->sendConfirmationEmailMessage($user);
电子邮件不是使用此模板发送的。但是,如果我从模板中删除{{ confirmationUrl }}
,则电子邮件发送工作正常。
如何发送带有确认URL的电子邮件?
代码是正确的。一切正常,除了带有绝对URL的电子邮件被放入垃圾邮件文件夹。设置邮件加密解决了这个问题