RSS лента для Яндекс.Дзен

Как сделать RSS ленту для Яндекс Дзена в WordPress

Привет, многие уже наверняка заметили на главной странице яндекса новостную ленту под название Yandex.Zen (Яндекс.Дзен). Многие сми и большие сайты, отмечают, что трафик с данной рекомендательной ленты просто огромный, еще бы, ведь какая посещаемость у яндекса.

Дзен — это сервис персональных рекомендаций Яндекса. Он составляет подборку новостей, постов из блогов и иных интернет-публикаций, которые могут быть вам интересны. Публикации отбираются на основе истории посещенных страниц и указанных вами предпочтений.

Сегодня я покажу, как очень просто сделать свою ленту RSS для добавления в Яндекс.Дзен. Стандартная лента новостей с WordPress не пойдет, потому как яндекс, требует особой разметки ленты. Я не буду использовать все рекомендации Яндекса и не буду добавлять в ленту те элементы, которые считаю ненужными.

Создаем шаблон RSS для Яндекса

Первым делом, давайте создадим шаблон, который будет выводить нашу ленту новостей с разметкой, как требует яндекс. Для этого, в папке с вашей темой создайте новый файл, и назовите его как хотите, главное не забудьте за что файл этот отвечает, я назвал свой rss-yandexzen.php и добавил в него следующий код:

<?php 
/**
*
* Template Name: RSS лента для yandex zen
*
**/
echo '<?xml version="1.0" encoding="utf-8"?>'; ?>
<rss version="2.0">
<channel>
<title><?php wp_title_rss();?></title>
<link><?php bloginfo_rss('url') ?></link>
<description><?php bloginfo_rss('description')?></description>
<language>ru</language>
<?php while (have_posts()) : the_post(); ?>
<item>
<title><?php the_title_rss() ?></title>
<link><?php the_permalink_rss() ?></link>
<description><![CDATA[<?php the_excerpt_rss() ?>]]></description>
</item>
<?php endwhile;?>
</channel>
</rss>

Все, на этом шаблон для вывода нашей RSS ленты для Яндекс.Дзен готов. Приступим к его регистрации и подключению.

Регистрация RSS ленты в WordPress

Для того, что бы лента заработала, нам нужно указать WordPress, что мы хотим использовать новую ленту и новый шаблон для ее вывода. Для этого необходимо отредактировать файл functions.php  вашей темы и добавить туда вот такие строчки кода, смотрите не перепутайте имена файлов, если используете какие то свои, иначе у вас не будет работать.

add_action('init', 'yandexDzen');
function yandexDzen(){
    add_feed('yandexzen','yandexZenFunc');
}

function yandexZenFunc(){
    get_template_part('rss', 'yandexzen');
}

 

Данным кодом мы сперва регистрируем новую RSS ленту в WordPress, а второй функцией мы говорим, что нужно использовать шаблон для этой ленты тот, который мы создали выше.
Теперь у вас доступна новая лента, и вы можете перейти по адресу вашсайт.ru/yandexzen/ и вы увидите вывод ваших статей в разметке для яндекс.дзен

Отдаем нашу ленту Яндексу

Да к сожалению, это еще не все. Теперь нам нужно отдать нашу ленту яндексу.

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

Подать заявку на размещение вашей ленты в Яндекс.Дзен вы можете по данной ссылке – https://yandex.ru/support/zen/publishers/rss.html#rss-on

Если вам лень делать руками все, можно использовать готовый плагин для создания RSS ленты для Яндекс.Дзен от автора Flector

Плагин RSS лента для Яндекс.Дзен

3 комментария

  1. Спасибо за статью.
    Как раз искал решение для дзена, есть много плагинов, но тут вроде как все контролируется, так как сам все создаешь

  2. У меня не пропустили ленту с использованием данного плагина от флектора. Сказали, что не прошла модерацию и в ленте есть ошибки.

    А вот код ваш прошел без проблем.

    1. У плагина было обновление, может поправили какие то не доработки. Хотя я не тестировал, с кодом, у меня отлично работает.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *