Рассылка списка новых материалов за день/неделю/месяц с помощью Simplenews

Задача — с помощью Simplenews периодически рассылать списки новых материалов, появившихся на сайте.

Для решения понадобятся модули Simplenews, Simplenews Scheduler, Views и PHP filter (в ядре).

Создаём представление new_nodes без дисплеев:

Создаём новую рассылку с форматом ввода PHP code и кодом:
<?php
$prev_send_timestamp = variable_get('new_nodes_prev_send_timestamp', 0);
$send_timestamp = variable_get('new_nodes_send_timestamp', time());
$view = views_get_view('new_nodes');
$view->set_display('default');
$view->add_item($view->current_display, 'filter', 'node', 'created', array(
  'operator' => 'between',
  'value' => array(
    'min' => format_date($prev_send_timestamp, 'custom', 'Y-m-d H:i:s'),
    'max' => format_date($send_timestamp, 'custom', 'Y-m-d H:i:s'),
  ),
));
$view->execute();
echo $view->preview('default');
?>


В вкладке Newsletter выбираем пункт Send newsletter according to schedule, указываем Sending interval (интервал рассылки) и Interval frequency (частота интервала). В поле Additionally only create newsletter edition if the following code returns true пишем код:
variable_set('new_nodes_prev_send_timestamp', variable_get('new_nodes_send_timestamp', 0));
variable_set('new_nodes_send_timestamp', time());
return TRUE;

Написанное актуально для
Simplenews 7.x-1.x
Теги:
simplenews, views, работа с почтой
Добавлено: 19 Июля 2018 08:28:01 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...