Отправка письма по событию
Подскажите, пожалуйста, с написанием небольшого плагина.
При регистрации (login) пользователь автоматом подписывается на рассылку (плагин от marabar). Теперь, нужно создать письмо (sendex) для нового зарегистрировавшегося пользователя, и поставить его в очередь на отправку. Такой плагин, на событие регистрации, создает письма и ставит в очередь, но для всех подписчиков.
При регистрации (login) пользователь автоматом подписывается на рассылку (плагин от marabar). Теперь, нужно создать письмо (sendex) для нового зарегистрировавшегося пользователя, и поставить его в очередь на отправку. Такой плагин, на событие регистрации, создает письма и ставит в очередь, но для всех подписчиков.
<?php
if ($modx->event->name == 'OnUserSave') {
if ($user && $mode == 'new') {
$modx->addPackage('sendex', MODX_CORE_PATH . 'components/sendex/model/');
/** @var sxNewsletter $newsletter */
if ($newsletter = $modx->getObject('sxNewsletter', 1)) {
$response = $newsletter->addQueues();
if ($response !== true) {
echo $response;die;
}
}
}
return;
}
А нужно создать письмо только для одного, нового, зарегистрировавшегося пользователя Комментарии: 6
Думаю нужно модифицировать строку:
$response = $newsletter->addQueues();
но как…
жизнь в сообществе просто кипит. с ума сойти. спасибо всем (0) откликнувшимся, уже решил вопрос другим путем
И как решил, не через sendex?
жизнь в сообществе просто кипит. с ума сойти.Все на море… ;)
Счастливые.
Решил написанием мини-плагина, который на событие OnUserActivate отправляет письмо этому свежерегнувшимуся, а главное, активировавшимуся пользователю. В качестве тела письма выступает content заданного по id ресурса, а заголовком — pagetitle
В принципе, под мою задачу подошло. А для дальнейших рассылок уже можно использовать и sendex
Решил написанием мини-плагина, который на событие OnUserActivate отправляет письмо этому свежерегнувшимуся, а главное, активировавшимуся пользователю. В качестве тела письма выступает content заданного по id ресурса, а заголовком — pagetitle
$object = $modx->getObject('modResource',384);
$user->sendEmail($object->content, array('subject'=>$object->longtitle));
В принципе, под мою задачу подошло. А для дальнейших рассылок уже можно использовать и sendex
Я примерно тоже так и думал, молодец.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.