私はそれをセットアップ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、それが数値ではありませんので(デフォルト)。ただし、カスタムメールテンプレートが選択されている場合は数値になるため、メールはキューに入れられますが、テストしませんでした。