[eccube3]メールテンプレートを増やす

大変使い勝手が悪いということが分かった

環境

ECCUBE 3.0.18

やりたいこと

メールテンプレートを増やしたい

やること(概要)

phpmyadminで枠を増やしまくる

注意点というか

Mail/order.twigとかそういうテンプレートの他に、管理画面で認識するテンプレートが別にあって、2つのテンプレートをかけ合わせて使うって感じになる。

やる前に

ECCUBE3のメール管理画面において、「テンプレート」のプルダウンに表示されるのは「テンプレート名」じゃなくて「件名」になっている。DBで見ると「テンプレート名」は別枠であるのにこれはおかしい。おかしいというか、メールのバリエーションを件名で判断するのは無理だから変えないと非常にマズい。

本体をいじる

/src/Eccube/Entity/MailTemplate.php
を開く

40行目くらいにある

return $this->getSubject() ? $this->getSubject() : '';

これを

return $this->getName() ? $this->getName() : '';

これに変える。

管理画面上のメールテンプレート選択部のプルダウンが「テンプレート名」で表示されるようになる。

ちなみに、送料無料条件表示プラグインを入れていると相性問題があるのかメール関連のページがぶっ壊れるので無効にして使用を諦める必要がある。使い勝手微妙だからあんまり困るところではないと思う。

テンプレートを増やす

ECCUBE3で送信メールテンプレートの追加方法
ここを読む。

読んだ通りにやるか、phpMyadminにアクセスして「dtb_mail_template」を開く。登録済みの内容を参考に新しく登録する。

「template_id」はユニーク的なやつだから被らないように注意。

「create_date」「update_date」を空欄で登録するとエラー的なものを吐くけど全部「0」で登録してくれるからまあ放置でいい。

「file_name」でテンプレートを指定するんだけどそこはまあ用途に応じて使い回すなり新しく作るなりで。

コメント

タイトルとURLをコピーしました