У меня есть этот PHP-код (просто используя Twig + SwiftMailer ):
# Load Twig and swiftmailer require_once('lib/SwiftMailer/swift_required.php'); require_once('lib/Twig/Autoloader.php'); Twig_Autoloader::register(); $loader = new Twig_Loader_Filesystem('views'); $twig = new Twig_Environment($loader, array( 'cache' => 'cache', )); $mailer = Swift_Mailer::newInstance(Swift_MailTransport::newInstance()); # Render twig template to a string $template = $twig->loadTemplate('email.twig'); $body = $template->renderBlock('body', array('name' => $_POST["name"], 'letter' => $_POST["letter"])); $message = Swift_Message::newInstance() ->setFrom("info@mydomain.com") ->setSubject("Hi, ".$_POST["name"]." blahblahblah") ->setBody($body, 'text/html') ->setTo($_POST["email"]); # Send email, using PHP mail function $retval = $mailer->send($message);
О моем шаблоне email.twig:
<style>
, с несколькими стилями CSS. ОБНОВЛЕНО: ссылка на шаблон здесь
Письмо отправляется правильно, но с двумя проблемами :
Любые подсказки?
У меня была аналогичная проблема и найти решение: это было связано с некоторыми непечатаемыми символами в шаблоне. Не уверен, что для вас это одно и то же, но, может быть, вам стоит просто переписать часть {{letter}}. (Моя французская клавиатура вставляет невидимый символ с комбинацией пространства Alt-Gr +).
Объектная переменная не отображается в шаблоне ветви