Как грамотно настроить рассылку новостей?
Сейчас ситуация такая:, подскажите, столкнулся с такой проблемой но совсем понимаю как правильно работает подписка и рассылка новостей. В какую сторону идти.
По вводным: есть форма по которой идет подписка на рассылку. Во вкладке рассылки.
По вводным: когда человек подписывается ему отправляется письмо на почту с подтверждением подписки, он соглашается, далее попадает во вкладку подписчики.
Сейчас ситуация такая: далее в разделе список рассылок есть созданная рассылка которая активная и заполненная на отправку каждый день в 5 утра. Но она нечего не отправляет.
Сейчас ситуация такая: если сделать проверку тестовую то там не будет новости а только текст о том что о чем письмо то есть заголовок. Новости магазина.
Сейчас ситуация такая: и получается новость туда не подгружается и в целом не отправляет. (даже пытался в шаблоне отправки добавить точечно на какой id новостей ссылаться).
Стандартный шаблон
<? if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die(); global $SUBSCRIBE_TEMPLATE_RUBRIC; $SUBSCRIBE_TEMPLATE_RUBRIC=$arRubric; global $APPLICATION; ?> <STYLE type=text/css> .text {font-family: Verdana, Arial, Helvetica, sans-serif; font-size:12px; color: #1C1C1C; font-weight: normal;} .newsdata{font-family: Arial, Helvetica, sans-serif; font-size:12px; font-weight:bold; color: #346BA0; text-decoration:none;} H1 {font-family: Verdana, Arial, Helvetica, sans-serif; color:#346BA0; font-size:15px; font-weight:bold; line-height: 16px; margin-bottom: 1mm;} </STYLE> <P>Новости магазина</P> <P><?$SUBSCRIBE_TEMPLATE_RESULT = $APPLICATION->IncludeComponent( "bitrix:subscribe.news", "", Array( "SITE_ID" => "s1", "IBLOCK_TYPE" => "news", "ID" => "", "SORT_BY" => "ACTIVE_FROM", "SORT_ORDER" => "DESC", ), null, array( "HIDE_ICONS" => "Y", ) );?></P> <? if($SUBSCRIBE_TEMPLATE_RESULT) return array( "SUBJECT"=>$SUBSCRIBE_TEMPLATE_RUBRIC["NAME"], "BODY_TYPE"=>"html", "CHARSET"=>"UTF-8", "DIRECT_SEND"=>"Y", "FROM_FIELD"=>$SUBSCRIBE_TEMPLATE_RUBRIC["FROM_FIELD"], ); else return false; ?>
По вводным: но если зайти в раздел выпуски и создать тестовое отправку письма точечно на кого-то то оно отправляется.
Сейчас ситуация такая: подскажите, в каком направление двигаться, и то что-то застрял не понимаю.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос




В 1С-Битрикс “подписка” и “рассылка” часто путаются. Подписчик в списке подписчиков — это только адрес и согласие получать выпуски. Чтобы новости реально попали в письмо, нужен выпуск рассылки с корректным шаблоном, выборкой элементов инфоблока и агентом/cron, который этот выпуск отправит.
Сначала проверьте базовую цепочку:
Тестовое письмо с одним заголовком обычно означает, что шаблон письма не содержит компонент/код, который выбирает новости, либо выборка возвращает пустой результат. Проверьте параметры: ID инфоблока, активность элементов, дата публикации, разделы, права доступа, фильтр по дате.
Для диагностики временно сделайте максимально простой шаблон, который выводит последние элементы нужного инфоблока:
$rs = CIBlockElement::GetList( ['DATE_ACTIVE_FROM' => 'DESC'], ['IBLOCK_ID' => 12, 'ACTIVE' => 'Y'], false, ['nTopCount' => 5], ['ID', 'NAME', 'DETAIL_PAGE_URL'] ); while ($item = $rs->GetNext()) { echo '<p><a href="' . $item['DETAIL_PAGE_URL'] . '">' . $item['NAME'] . '</a></p>'; }
Если этот код ничего не выводит, проблема в инфоблоке/фильтре. Если выводит на странице, но не в рассылке, проблема в шаблоне выпуска или контексте выполнения.
Отправку по расписанию лучше перевести на cron:
php -f /path/to/site/bitrix/modules/main/tools/cron_events.php
И проверьте, что агенты подписки выполняются. Если агенты не запускаются, рассылка будет “активна”, но фактически не уйдёт.
Итог: отдельно проверьте генерацию содержимого письма и отдельно отправку. Сначала добейтесь, чтобы в выпуске появились новости, затем проверьте cron/агенты и почтовые события. Не пытайтесь чинить всё сразу через ID новостей в шаблоне — лучше настроить правильную выборку элементов инфоблока.