EC厨房料理人のブログ | EC厨房プログラマーブログ EC-CUBEやWordPressをわかりやすく紹介

プロフィール

EC厨房の料理人(プログラマー)をやらせていただいています。むかしマークアップエンジニアとしてHTML+CSSもガリガリやっておりました。現在はPHP+JavaScriptをメインとしてサイトを構築しています。

【EC-CUBEカスタマイズ】オリジナルメールを送信する

ECサイトを運営していると、もっとカスタマイズされたメールを出したいと考える人もいるでしょう。
EC-CUBEで独自のメール実装を行う方法をご紹介します。

管理者にメールを飛ばす

これはレポートメールとして使える技です。
例えば、1日の終わりに本日の売上などを送信したり、などにも使えます。

編集するファイルは SC_Helper_Mail_Ex.php

SC_Helper_Mail_Ex.php/data/class_extends/helper_extends/ の中にあります。
中を開くと解りますが、クラスの定義以外何も書いてません。なぜならば、このファイル自体がカスタマイズのためにあるものだからです。
extends のファイルに追加するだけで用が済むのであれば、メンテナンスのことも考えて出来るだけ、class_extends内のファイルをカスタマイズするように心がけるといいでしょう。

それでは適当にメソッドを追加します。
今回はサンプルですので、商品を受注したら、管理者宛におめでとうメールを送るというどうしようもないものを作ります。
/data/class_extends/helper_extends/SC_Helper_Mail_Ex.php


function sfSendCongratulationMail() {
    // サイト情報を取得
    $objSiteInfo = new SC_SiteInfo();
    // サイト管理者のメールアドレスを送信先に指定
    $to      = $objSiteInfo->data['email01'];
    $subject = "【注文キター!】おめでとう " . date("Y/m/d H:i:s");

    // 以下メール本文 「\n」は改行文字
    $body = "おめでとうございます!\n\nついに収益が上がりますね。";

    $this->sfSendMail($to, $subject, $body);
}

注文完了ページにて、上記メソッドを実行させます。
/data/class/pages/shopping/LC_Page_Shopping_Complete.php


// 91行目あたり
// 完了メール送信
if($order_id != "") {
    $mailHelper->sfSendOrderMail($order_id, '1');
    // ここに追加
    $mailHelper->sfSendCongratulationMail();
}

これでテストで注文すると、キター!ってメールが来ます。
今回のサンプル自体は何の役にも立ちませんが、中身を変更するだけ充分に実用に耐えるものになるでしょう。
シンプルなカスタマイズながら、かゆいところに手を届かせる技だと思います。

2009.02.18 | EC-CUBE, カスタマイズ | コメント (0)

まだコメントがありません

コメントをどうぞ

ログイン を行ってコメントをしてください。