我无法获取电子邮件的内容。 <{1}}变量未填充。
$content
来自textarea输入,允许使用HTML。
控制器
$this->request->data['message']
查看/电子邮件/ HTML / test_email.ctp
debug($this->request->data['mensagem']); // Output: <p>\n\ttssseste<\/p>\n
App::uses('CakeEmail', 'Network/Email');
$email = new CakeEmail();
$email->emailFormat('html');
$email->from(array('noreply@domain.com' => 'System'));
$email->to($this->AuthExtended->user('email'));
$email->subject(__('Sample email'));
$email->template('test_email');
$email->viewVars(array('content' => $this->request->data['mensagem']));
$email->send();
我收到了电子邮件但没有内容。如果我将<?php echo $content; ?>
更改为:
test_email.ctp
我只获得Foo <?php echo $content; ?>
而不是Foo
加Foo
。
更新
$content
之后我尝试使用显示我的“已发布”变量的$email->viewVars(array('content' => $this->request->data['mensagem']));
进行调试,但视图中没有任何内容。
debug($email->viewVars());
答案 0 :(得分:0)
要发送模板化电子邮件,请使用:
$ email-&gt; template('test_email_view','test_email');
这里test_email_view是视图文件放在app / View / Emails / html / test_email_view.ctp中 并在此处放置您要在电子邮件正文消息中查看的代码
和test_email是你的布局文件app / View / Layouts / Emails / html / test_email.ctp 并将echo $ this-&gt; fetch('content');