Хак для легкой проверки результатов верстки email в OkayCMS и SimplaCMS
Чтобы верстать e-mail и не приходилось каждый раз после внесения изменений "вслепую", создавать заказ или имитировать инные действия пользователя, чтобы пришел e-mail можно сделать так:
В api/Notify.php ишем метод отвечающий за отправку нужного нам e-mail.
Список дефолтных методов для симплы и окая:
email_order_user() - Отправка емейла клиенту о заказе
email_order_admin() - Отправка емейла о заказе администратору
email_comment_admin() - Отправка емейла о комментарии администратору
email_comment_answer_to_user() - Отправка емейла с ответом на комментарий клиенту
email_password_remind() - Отправка емейла о восстановлении пароля клиенту
email_feedback_admin() - Отправка емейла администратору о заявке с формы обратной связи
email_feedback_answer_to_user() - Отправка емейла клиенту с ответом на заявку с формы обратной связи
password_recovery_admin() - Отправка емейла на восстановление пароля администратора
Далее на примере емейла клиенту о заказе, для остальных случаев также справедливо, в email_order_user() добавляем последний входной параметр (в данном случае это второй параметр),
и обзываем его, например, $debug и по умолчанию он равен false, то есть должно получиться так:
public function email_order_user($order_id, $debug = false) { ... }
далее в этом же методе заменяем строку
$this->email($order->email, $subject, $email_template, $from);
на
if($debug) { print $email_template; } else { $this->email($order->email, $subject, $email_template, $from); }
здесь все. Далее в корне сайта создаем пустой файл с расширением .php (например email.php) в нем пишем следующее:
для OkayCMS
<?php require_once('api/Okay.php'); $okay = new Okay();
для SimplaCMS
<?php require_once('api/Simpla.php'); $simpla = new Simpla();
и
$okay->notify->email_order_user(123, true);
123 - это номер вашего тестового заказа, теперь при обращении на http://yousite.net/email.php вам будет выводится содержимое, которое было-бы отправлено вам на емейл.
Открываем .tpl файл указанный в строке
$email_template = $this->design->fetch($this->config->root_dir.'design/'.$this->settings->theme.'/html/email/email_order.tpl');
и можно верстать.
Удачи :)
Комментарии
Пока нет комментариев
Оставить комментарий