Разделы

  
 

UnisenderConnector[EVO] snippet by Alooze

Собственно как и обещал выкладываю в паблик решение заказаное мной ранее на сообществе. На данный момент сниппет протестирован и успешно работает на сайте Обучение аэродизайну.

Собственно сам сниппет: UnisenderConnector by Alooze.

Вызов простой
[!unisenderConnector? &listId=`ID рассылки куда подписываем` &apiKey=`ApiKeyUnisender` &tags=`список меток через запятую. передаются вместе с подписчиком чтобы идентифицировать где он подписался` &tplForm=`unisender`!]

На самом деле есть еще 1 скрипт который мониторит рассылку на unisender и синхронизирует контакты с сайтом. Сделано это с той целью, что если вдруг, на нескольких сайтах будет стоять форма подписки на одну и ту же рассылку, то чтобы контакты были везде одинаковые.

Задача авторизации пользователей не стояла, поэтому скрипт работает по принципу: получили мыло и имя -> создали заблокированную учетку со случайным паролем -> сгенерировали ссылку для подтверждения подписки (для валидации мыла) -> импортировали и активировали контакт на унисендер.

В этой цепочке есть еще одна недоработка. Если пользователь когда-то пробовал подписаться, но не подтвердил подписку, то этот человек навсегда теряет возможность подписаться, т.к. сниппет ему скажет, что такой юзер уже есть. Ну это все мелочи, которые на данном этапе меня не напрягают.

Понадобится — доработаю. Либо буду признателен, если кто-то допилит.

P.S. На данный момент в моих планах портировать этот сниппет на smartresponder и работать с ним, т.к. уже давно работаем с этим сервисом и на unisender посмотрели только из-за наличия API. Но, как выяснилось и у smartresponder'a оно есть:-)

Подписка на Evo

Здравствуйте!

Нужен следующий функционал:
При нажатии «ОК» введённый емейл добавляется в базу.
Добавление происходит без перезагрузки страницы.
Перед добавлением происходит проверка на корректность емейла.
При удачном добавлении пользователю выводится соответствующее сообщение.

В админке реализуется модуль рассылки сообщений по базе подписчиков.
В модуле присутствует поле ввода темы сообщения, и редактор для ввода тела сообщения.


Подскажите, пожалуйста, есть ли готовые решения? подойдет ли для этого TXNewsletters

Плагин уведомить о наличии

Пытаюсь создать плагин, отправки уведомления подписавшимся на наличие товара
Не могу выяснить почему не работает
есть таблица с подписавшимися

CREATE TABLE IF NOT EXISTS `nasklade` (
  `idp` int(11) NOT NULL AUTO_INCREMENT,
  `prodid` int(11) NOT NULL, #ключ документа
  `uname` varchar(20) NOT NULL, #имя подписчика
  `uemail` varchar(50) NOT NULL, #email подписчика
  PRIMARY KEY (`idp`),
  KEY `prodid` (`prodid`,`uemail`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ;



и плагин на событии OnDocFormSave по идее должен реагировать на изменение количества в TV документа invertory если больше или равно TV miniweigt. Если условие удовлетворяет отправляет сообщение подписавшимуся и удаляет запись

defined('IN_MANAGER_MODE') or die();
$e = &$modx->Event;
if ($e->name == "OnDocFormSave"){
$id = $_POST['id'];
    if($id) { //check Id
$field1 = $modx->getTemplateVar('invertory','',$id); //количество на складе
$field2 = $modx->getTemplateVar('miniweigt','',$id); //минимальное число товаров для заказа
            if($field1 >= $field2){ 
      global $modx;
      $aTitle = $modx->getPageInfo($id,'','pagetitle'); //get pagetitle 
$tblEmails= $modx->getFullTableName('nasklade');
$emails= $modx->db->select("SELECT idp, prodid, uname, uemail FROM $tblEmails WHERE prodid = '$id'");
    if( $modx->db->getRecordCount( $emails ) >= 1 ) { 
        while( $rowmail = $modx->db->getRow( $emails ) ) { 
$match=array("%X%","%N%");
$replace=array($aTitle['pagetitle'],$rowmail['uname']); 
$message = str_replace($match, '"'. $replace. '" ', wordwrap($message, 100));
     
     sendEmail($rowmail['uemail'], $subject, $message);
     // if ($sendmail) {
      $modx->db->delete($tblEmails, "idp = ".$rowmail['idp']."");
                //     }
                 }
              }
       }
}
}

 // Send email
function sendEmail($to, $subject, $message) {
    $headers ="MIME-Version: 1.0\n".
              "Content-type: text/html; charset=utf-8\n".
              "From: ".$_SERVER['SERVER_NAME']."<no-reply@{$_SERVER['HTTP_HOST']}>\n".
              "X-Mailer: PHP/".phpversion();

$body = <<<EOD
$message
EOD;

   $mail = mail($to, $subject, $body, $headers);
  }



с конфигурацией


&subject=Email Subject;text;товар в наличии &email=Email Address;text; &message=Message (%X% will be replaced);textarea;Здравствуйте, %N%. Товар %X% появился на складе нашего магазина

Рассылка новостей

Добрый день, подскажите, пожалуйста, как правильнее организовать подписку на новости на сайте?

Подписка на новые комментарии...

Всем привет. Никак не могу найти как реализовать подписку на новые комментарии jot. Знаю что можно настроить уведомления для зарегистрированных пользователей и админов, а вот как сделать так что бы могли подписываться гости?


Вот такую вот форму я хочу сделать. Как заставить этот чекбокс работать никак не пойму=(
  • 0
  • 8 марта 2010, 18:55
  • posha
  • 4

Помогите с TXnewsletters..

Добрый день!

Помогите советом, как сделать так чтоб TXNewsletters после регистрации подписки, отправляло на мыло подписчика письмо с благодарностью за регистрацию или какой-нибудь другой информацией?
  • 0
  • 15 февраля 2010, 15:31
  • oxiP
  • 11