Евгений Webinmd

Евгений Webinmd

С нами с 07 января 2013; Место в рейтинге пользователей: #23
Евгений Webinmd
26 сентября 2019, 22:35
+1
точку с запятой пропустил после массива $emails, исправил
Евгений Webinmd
26 сентября 2019, 22:27
+1
Код ниже не тестировал, но чисто в теории должно работать
Запускать в компоненте console или modalConsole

<?php

$Sendex = $modx->getService('sendex','Sendex',$modx->getOption('sendex_core_path',null,$modx->getOption('core_path').'components/sendex/').'model/sendex/');

if (!($Sendex instanceof Sendex)) return '';

// Указать ID рассылки
$idNewsletter = 1;

$emails = [
	'email@mail.ru',
	'email1@mail.ru',
	'email2@mail.ru',
	'email3@mail.ru',
	..... 
];

foreach ($emails as  $email) {	

	$duble = $modx->getObject('sxSubscriber', array('email' => $email));
 
	if ($duble) { continue; }

	$obj = $modx->newObject('sxSubscriber');    
       $data = array(
        'user_id' => 0,
        'email' => $email,
        'newsletter_id' => $idNewsletter,
    );

    $obj->fromArray($data);
    $obj->save(); 

}
Евгений Webinmd
26 сентября 2019, 22:21
0
Самый простой способ — скопировать сниппет и внести в него изменения:
Со строки 59 идёт проверка
github.com/bezumkin/Sendex/blob/master/core/components/sendex/elements/snippets/snippet.sendex.php#L59

Закоментируйте в этом блоке всё что вам не надо (например отправку email)

И добавьте туда следующий кусок кода
$newsletter->Subscribe(0,$email);
Это если через форму подписывать пользователей, а можно напрямую в базу записать через API modx
Евгений Webinmd
21 сентября 2019, 15:39
0
для таких требований есть готовый платный компонент, что-то попроще можно и самому написать
Евгений Webinmd
21 сентября 2019, 11:24
+1
Выгрузку куда?
— эксель
— pdf
— массив
— на экран
— на страницу
— на почту

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

Могу еще вопросов накидать
Евгений Webinmd
02 сентября 2019, 15:58
0
jquery подключен?
Евгений Webinmd
04 июля 2019, 13:44
0
ну да, в методе getChunk, примера с foreach не увидел, тут либо у вас size не массив, либо такая конструкция не работает
Евгений Webinmd
04 июля 2019, 13:35
0
феном в феноме?
Вынесите tpl в чанк и всё будет работать
Евгений Webinmd
28 июня 2019, 12:05
+6
таким надо бы держаться подальше от разработки сайта.
Да и не думаю, что тот, кому не хватает знаний подключить js — хватит знаний купить и установить компонент
Евгений Webinmd
27 июня 2019, 18:14
1
+1
Нужен плагин для переключения контекстов, пример можно глянуть тут
Евгений Webinmd
30 мая 2019, 18:53
1
+1
1) подключить сервис
$pdoTools = $modx->getService('pdoTools');
2) заменить вызов чанка
$modx->getChunk
на
$pdoTools->getChunk
Это в самом сниппете, продублируй и заменяй
Евгений Webinmd
29 мая 2019, 23:05
+1
не получится, феном используется в pdoTools сниппетах, только если переписать нужный сниппет с использованием pdotools.
Евгений Webinmd
10 мая 2019, 12:15
0
у formIt есть свой хук
FormItSaveForm