Інтеграція 1С-Бітрікс з Яндекс.Дзен

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Інтеграція 1С-Бітрікс з Яндекс.Дзен
Середня
~1-2 тижні
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Інтеграція 1С-Бітрікс з Яндекс.Дзен

Яндекс.Дзен (з 2023 року — просто «Дзен») приймає контент з зовнішніх джерел через RSS-фід. Для інтернет-магазину або контентного сайту на Бітриксі це означає автоматичну публікацію статей і матеріалів блога в ленту Дзена без ручного копіювання. Технічно завдання — генерація правильного RSS й підтримання його актуальності.

Формат RSS для Дзена

Дзен підтримує два види фідів:

Звичайний RSS — контент передається в <description> або <content:encoded>. Дзен читає текст, сам формує сторінку. Обмежений контроль над оформленням.

RSS з нативним Турбо-форматом — розширений формат з turbo:content, дозволяє передавати повноцінний HTML з зображеннями й розміткою. Рекомендується для статей з rich-контентом.

Мінімальний RSS для Дзена:

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:turbo="http://turbo.yandex.ru">
  <channel>
    <title>Блог магазину</title>
    <link>https://example.ru/blog/</link>
    <language>uk</language>

    <item>
      <title>Як вибрати товар X</title>
      <link>https://example.ru/blog/yak-vybrat-x/</link>
      <pubDate>Fri, 13 Mar 2026 12:00:00 +0300</pubDate>
      <author>[email protected] (Редакція)</author>
      <turbo:content><![CDATA[
        <figure>
          <img src="https://example.ru/upload/iblock/abc/cover.jpg" alt="Обложка">
          <figcaption>Підпис до фото</figcaption>
        </figure>
        <p>Основний текст статті...</p>
        <h2>Підзаголовок</h2>
        <p>Продовження тексту...</p>
      ]]></turbo:content>
    </item>

  </channel>
</rss>

Генерація фіду з інфоблока Бітрікс

Створюємо сторінку /dzen-feed.php або кастомний компонент. Приклад генерації з інфоблока «Статті»:

<?php
require($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php');

header('Content-Type: application/rss+xml; charset=utf-8');

$iblockId = BLOG_IBLOCK_ID;
$limit    = 100; // Дзен рекомендує 50–200 останніх публікацій

$cache = \Bitrix\Main\Data\Cache::createInstance();
$cacheKey = 'dzen_feed';

if ($cache->startDataCache(1800, $cacheKey, '/dzen')) {
    $items = [];

    $res = CIBlockElement::GetList(
        ['ACTIVE_FROM' => 'DESC'],
        ['IBLOCK_ID' => $iblockId, 'ACTIVE' => 'Y'],
        false,
        ['nTopCount' => $limit],
        ['ID', 'NAME', 'DETAIL_PAGE_URL', 'DETAIL_TEXT',
         'PREVIEW_TEXT', 'DETAIL_PICTURE', 'ACTIVE_FROM', 'TAGS']
    );

    while ($el = $res->GetNextElement()) {
        $fields = $el->GetFields();
        $props  = $el->GetProperties();

        $imgHtml = '';
        if ($fields['DETAIL_PICTURE']) {
            $file = CFile::GetFileArray($fields['DETAIL_PICTURE']);
            if ($file) {
                $imgHtml = '<figure><img src="https://' . SITE_SERVER_NAME
                         . $file['SRC'] . '" alt="'
                         . htmlspecialchars($fields['NAME']) . '"></figure>';
            }
        }

        $content = $imgHtml . $fields['DETAIL_TEXT'];

        $items[] = [
            'title'    => $fields['NAME'],
            'link'     => 'https://' . SITE_SERVER_NAME . $fields['DETAIL_PAGE_URL'],
            'pubDate'  => date('r', MakeTimeStamp($fields['ACTIVE_FROM'])),
            'author'   => 'editor@' . SITE_SERVER_NAME,
            'content'  => $content,
        ];
    }

    $cache->endDataCache(['items' => $items]);
} else {
    $items = $cache->getVars()['items'];
}

echo '<?xml version="1.0" encoding="UTF-8"?>';
echo '<rss version="2.0"'
   . ' xmlns:content="http://purl.org/rss/1.0/modules/content/"'
   . ' xmlns:turbo="http://turbo.yandex.ru">';
echo '<channel>';
echo '<title>' . htmlspecialchars(SITE_NAME) . '</title>';
echo '<link>https://' . SITE_SERVER_NAME . '/blog/</link>';
echo '<language>uk</language>';

foreach ($items as $item) {
    echo '<item>';
    echo '<title>' . htmlspecialchars($item['title']) . '</title>';
    echo '<link>' . htmlspecialchars($item['link']) . '</link>';
    echo '<pubDate>' . $item['pubDate'] . '</pubDate>';
    echo '<author>' . htmlspecialchars($item['author']) . '</author>';
    echo '<turbo:content><![CDATA[' . $item['content'] . ']]></turbo:content>';
    echo '</item>';
}

echo '</channel></rss>';

Вимоги до контенту

Дзен висуває вимоги до публікацій:

  • Обсяг: статті менше 700 символів можуть погано розповсюджуватися в ленту
  • Зображення: обов'язкові абсолютні URL, Дзен кешує зображення на своїх серверах
  • Унікальність: дублювання контенту між публікаціями знижує охват
  • Дата: поле <pubDate> з коректною датою обов'язково для коректної сортування

DETAIL_TEXT у Бітриксі зберігає HTML-текст, оброблений редактором. У фід він йде як є — всередину CDATA теги не екрануються. Якщо контент містить ]]> (крайне рідко), потрібна заміна: $content = str_replace(']]>', ']]]]><![CDATA[>', $content).

Підключення каналу в Дзені

  1. Створіть канал на zen.yandex.ru (або dzen.ru) через аккаунт Яндекса
  2. У налаштуваннях каналу → «Джерела» → «Додати джерело» → вставте URL фіду
  3. Дзен перевірить фід і почне імпорт. Перша публікація появляється протягом кількох годин
  4. Після перевірки 10–50 публікацій канал отримує можливість монетизації

Моніторинг й автообновлення

Дзен обходить фід кожні 15–30 хвилин. Оновлювати pubDate в уже опублікованих матеріалів не потрібно — Дзен не перепубліковуватиме їх. Нові елементи в початку фіду підхоплюються при наступному обході.

Для сповіщення Дзена про новий контент можна відправляти ping-запит після публікації нового матеріалу через обробник OnAfterIBlockElementAdd:

AddEventHandler('iblock', 'OnAfterIBlockElementAdd', function(&$fields) {
    if ($fields['IBLOCK_ID'] !== BLOG_IBLOCK_ID) return;

    // Скидаємо кеш фіду
    \Bitrix\Main\Data\Cache::createInstance()->cleanDir('/dzen');
});

Графіки реалізації

Варіант Склад Строк
Простий RSS (без turbo:content) Сторінка фіду + кеш 0.5–1 день
Turbo-фід з зображеннями й структурою Парсинг DETAIL_TEXT + обробка зображень 1–2 дні
Мультиінфоблочний фід (статті + новини + товари) Об'єднаний фід з кількох джерел 2–3 дні