私はそれをセットアップcronジョブなしでクリーンなMagento 1.9.0.1インストールでテストし、それは私に連絡メールを送りました。したがって、連絡先メールのキューではありません。そして、コードを見ると同じことがわかります:
Mage_Contacts_IndexController
-> public function postAction()
-> sendTransactional
呼び出し:
Mage_Core_Model_Email_Template
-> public function sendTransactional
-> public function send
-> $mail->send();
。
より深いレベルではZend_Mail
-> public function send
-> $transport->send($this);
-> Zend_Mail_Transport_Abstract
-> public function send
-> $this->_sendMail();
-> Zend_Mail_Transport_Sendmail
-> public function _sendMail()
が呼び出され、最終的にPHP mail()
関数が直接呼び出されます。
$result = mail(
$this->recipients,
$this->_mail->getSubject(),
$this->body,
$this->header);
Magento 1.9.1.0では追加されました
if ($this->hasQueue() && $this->getQueue() instanceof Mage_Core_Model_Email_Queue) {
...
$emailQueue->addMessageToQueue();
で
Mage_Core_Model_Email_Template
-> public function send
設定する必要がありますpublic function sendTransactional
:
if (is_numeric($templateId)) {
$queue = $this->getQueue();
$this->load($templateId);
$this->setQueue($queue);
}
しかし$templateId
と同じである必要がありcontacts_email_email_template
、それが数値ではありませんので(デフォルト)。ただし、カスタムメールテンプレートが選択されている場合は数値になるため、メールはキューに入れられますが、テストしませんでした。