必要に迫られ、EC-CUBE2.4.1(PHP 5.2.17)をXSERVERへ移したら自動返信メールが飛ばなくなっていた。

お客様からのお問い合わせで気付くという大失態をおかしたのでその戒めとしての備忘録。

こちらを参考にしました。

◆/data/class/SC_SendMail.php

    function sendMail() {
        $header = $this->getTEXTHeader();
        $recip = $this->getRecip();

        $mailObject = Mail::factory("mail");

        // メール送信
        $result = $mailObject->send($recip, $header, $this->body);

        $ret = true;
        if (PEAR::isError($result)) {
            GC_Utils_Ex::gfPrintLog($result->getMessage());
            GC_Utils_Ex::gfDebugLog($header);
            $ret = false;
        }
        return $ret;
    }
 

◆/data/module/Mail/smtp.php

    /**
     * The SMTP host to connect to.
     * @var string
     */
    var $host = '●●●●●●.xserver.jp';

    /**
     * The port the SMTP server is on.
     * @var integer
     */
    var $port = 587;

    /**
     * The username to use if the SMTP server requires authentication.
     * @var string
     */
    var $username = 'MAILADDRESS';

    /**
     * The password to use if the SMTP server requires authentication.
     * @var string
     */
    var $password = 'PASSWORD';

 

◆ec-cubeの[システム設定]⇒[パラメータ設定]

/admin/system/parameter.php

MAIL_BACKEND "smtp"
SMTP_HOST "●●●●●●.xserver.jp"
SMTP_PORT "587"