Представляю вашему вниманию обновленный модуль и сниппет для осуществления рассылки, управления подписчиками EasyNewsletter v1.0. Это готовое дополнение для MODx Evolution. С его помощью можно без труда справиться с массовой рассылкой писем. CMF MODx же, в свою очередь позволяет создавать всевозможные шаблоны и назначать их для шаблонов писем.
Прежде чем установить модуль, необходимо выставить в настройках плагина TinyMCE fullpathurl. Это необходимо в первую очередь для замены относительных адресов на полные (при вставке изображений, например).
Установка модуля:
1 — Создайте новый модуль в панели администратоа с кодом:
include_once (MODX_BASE_PATH.'assets/modules/easynewsletter/module.php');
2 — Обновите вкладку браузера.
Далее всё просто — выбираете либо добавление первого подписчика, либо (если файлы в папке с бэкапом существуют) востанавливаете базу данных подписчиков.
Приведу несколько скриншотов:
Это общий список зарегистрированных подписчиков. Вы можете выбрать адреса и отложить их на последующую отправку. Также можете осуществлять фильтрацию, для более удобного поиска
Управлениекатегоиями подписчиков происходит на странице «Категории»:
В этой версии можно массово назначать категории. Также можно назначить принудительно идентификатор категории при вызове сниппета.
К примеру, вызов:
[!EasyNewsletter? &cat_id=`7`!]
будет добавлять подсисчиков в категорию «Подписчики с сайта».
Вот так выглядит страничка резервного копирования и быстрого восстановления базы подписчиков:
На странице управления письмами можно посмотреть статистику отправок, создать новое письмо, отредактировать старое:
Как видно на изображении сверху — если мы отложили в сессию адреса на отправку, то в будущем можно отослать только им письма. Результат запишется в отчет.
Импорт из csv выглядит следующим образом:
Установка сниппета:
Создайте в панели администратора новый сниппет с кодом:
<?php
if(!defined('MODX_BASE_PATH')){die('What are you doing? Get out of here!');}
include (MODX_BASE_PATH.'assets/modules/easynewsletter/snippet.php');
return $out;
?>
Оригинал — sazanof.ru/razrabotka/easynewsletter-1_0.html
Михаил Сазанов 09.02.2014 20:45 #
Елена Бредова 16.04.2014 10:36 #
Эдуард 23.05.2014 12:50 #
скрин awesomescreenshot.com/0c72ur4fb6
Михаил Сазанов 23.05.2014 13:11 #
Эдуард 23.05.2014 13:42 #
Эдуард 23.05.2014 13:48 #
1. создал модуль (добавил строку)
2.прокинул папку /assets/modules/easynewsletter/
3.создал сниппет (его где то вызывать надо ?? или создать и все)
4.в конфигурации указал почту смтп порт пароль и логин
версия системы 1.0.5
Михаил Сазанов 23.05.2014 13:55 #
Михаил Сазанов 23.05.2014 13:53 #
Эдуард 23.05.2014 16:00 #
Эдуард 23.05.2014 14:04 #
вставить сюда в общий шаблон или непосредственно в чанк формы
awesomescreenshot.com/05b2urwcd9
hotelalex.ru/ — вот на данном сайте
Эдуард 23.05.2014 15:33 #
Михаил Сазанов 23.05.2014 15:48 #
У меня вопрос — вы вообще топики читали по easyNewsLetter? Там есть ответы на все ваши вопросы.
чтобы с еФорм заработало нужно писать сниппет на событие после проверки формы.
Олег 06.07.2015 21:21 #
Подскажите как это сделать?
Олег 07.07.2015 01:11 #
Мне пока пришлось немного переделать код backend.php
может кому-то пригодится:
в начале файла backend.php дописал две переменных
$my_header='код хидера';
$my_footer='код футера';
после строки // Insert newsletter into database
идет такая:
$sql = «INSERT INTO easynewsletter_newsletter VALUES('', now(), '','', '".$my_header."', '".$modx->db->escape($_POST['subject'])."', '".$modx->db->escape($_POST['tvmailMessage'])."', '".
$my_footer."','') ";
после строки // Обновление письма // замена адресов на абсолютные
идет такая:
$sql = «UPDATE easynewsletter_newsletter SET subject='".$_POST['subject']."', newsletter='".$modx->db->escape($_POST['tvmailMessage'])."', header='".$my_header."', footer='".$my_footer."' WHERE id='".$_POST['xid']."'";
Строку
$mail->Body = $newsletter_newsletter;
Заменил на
$mail->Body = $newsletter_header.$newsletter_newsletter.$newsletter_footer;
Евгений Торбеев 26.12.2015 13:54 #
ИМХО. Самым дельным было бы решение, если бы в настройках мы могли прописать id родительской страницы (допустим «новости»), а все дочерние страницы (непосредственно сами новости (новость1 новость2 и т.д.)) помещались бы в журнал писем. Заголовок письма — заголовок страницы (Новость1). А сам текст новости при сохранении страницы выводился бы в текст письма. Тогда исправлять очепятки можно было бы в одном месте (в новости). Или, как вариант, письмо ручками можно было бы привязать к странице с новостью (по id). И по кнопке «заполнить» с ресурса бы «брался» текст. Тогда можно и новости рассылать и какие-то вещи, не связанные с новостями.
Александр 27.08.2015 11:25 #
« MODX Parse Error »
MODX encountered the following error while attempting to parse the requested resource:
« Execution of a query to the database failed — Table 'biznec.easynewsletter_categories' doesn't exist »
SQL > SELECT id,kat_title FROM easynewsletter_categories
Basic info
REQUEST_URI: emupdate.ru/manager/index.php?a=112&id=3&action=1
Manager action: 112 — Execute module
Referer: emupdate.ru/manager/index.php?a=112&id=3
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36
IP: 212.176.236.162
Benchmarks
MySQL: 0,0025 s (5 Requests)
PHP: 0,0238 s
Total: 0,0262 s
Memory: 1,9372406005859 mb
Backtrace
1 include_once()
manager/index.php on line 561
2 evalModule()
manager/processors/execute_module.processor.php on line 69
3 eval()
manager/processors/execute_module.processor.php on line 82
4 include_once()
manager/processors/execute_module.processor.php(82): eval()'d code on line 1
5 include()
assets/modules/easynewsletter/module.php on line 192
6 DBAPI->query()
assets/modules/easynewsletter/backend.php on line 769
Михаил Сазанов 22.10.2015 10:48 #
Вика 22.10.2015 10:47 #
Михаил Сазанов 22.10.2015 10:49 #
Вика 22.10.2015 11:19 #
Евгений Малыкин 07.12.2015 03:25 #
Не подскажите — с чем может быть связано?
p.s. сборка Дмитрия 1.1b-d7.1.3
Да, и подписчик, при этом, не добавляется в базу. И как убрать лишние поля как имя и фамилию? Есть параметр какой-нибудь для этого?
Михаил Сазанов 09.12.2015 08:58 #
Как вызываете сниппет?
Евгений Малыкин 14.12.2015 16:43 #
Вызываю без параметров:
Сниппет так и называется, я убрал в нем «1.0» из названия, в модуле зависимости добавил.
Михаил Сазанов 15.12.2015 09:16 #
dev.sazanof.ru/easynewsletter
Быть может такой подписчик уже существует?
Евгений Малыкин 15.12.2015 15:52 #
Михаил Сазанов 15.12.2015 15:53 #
Евгений Малыкин 15.12.2015 15:54 #
Михаил Сазанов 15.12.2015 15:54 #
Евгений Малыкин 15.12.2015 15:54 #
Евгений Малыкин 15.12.2015 15:55 #
Михаил Сазанов 15.12.2015 15:56 #
Евгений Малыкин 15.12.2015 16:00 #
Евгений Малыкин 15.12.2015 16:01 #
К сожалению, Вы не прошли тестВопрос:
— Сколько будет 2 + 2
Ответ правильный!
— Вопрос:
Сколько будет 4 * 2
Ответ правильный!
Забавный результат тестирования :))
Михаил Сазанов 15.12.2015 16:02 #
Есть яндекс кошелек
410011254859040
Евгений Малыкин 15.12.2015 16:05 #
Уже, думаю, лишними не будут.
Михаил Сазанов 15.12.2015 16:09 #
Евгений Малыкин 15.12.2015 16:11 #
Евгений Торбеев 26.12.2015 08:55 #
Евгений Торбеев 26.12.2015 11:12 #