Очередной блог фрилансера

коротко и полезно о веб-разработке

Menu Close

WordPress. Создаем запись только для подписчиков RSS

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

Первое, что вам нужно сделать – это создать специальную рубрику, записи которой будут доступны только для RSS-подписчиков. Предположим, вы создали новую рубрику «Только по RSS».

После создания рубрики, вам нужно будет узнать ее ID. Это определяется очень просто, зайдите на страницу редактирования рубрики, и ее ID отобразится в адресной строке браузера.

Теперь, откройте файл вашей темы functions.php в любом редакторе. Если в вашей теме нет такого файла, создайте его. Добавьте следующий код в файл functions.php.

<?php  
function excludeCategory($query)  
{  
    if($query->is_home | $query->is_archive )  
    $query->set('cat','-3');  
    return $query;  
}  
add_filter('pre_get_posts', 'excludeCategory');  
?>  

pre_get_post — это специальный фильтр WordPress, который запускается до получения записей из базы данных. С помощью этого фильтра, мы исключаем, указанную выше рубрику со всех страниц кроме RSS-ленты. Обратите внимание, что для исключения рубрики, используется знак минус, перед ID.

Так что теперь, когда вы добавите запись в рубрику «Только по RSS», она не отобразится на главной странице, странице рубрики, в тегах или архивах; эта запись будет доступна только вашим RSS-подписчикам.

И наконец, если вы используете в своей теме функцию wp_list_categories(), для отображения рубрик, вам необходимо передать параметр, исключающий нашу rss-рубрику из общего вывода.

wp_list_categories('exclude=3');  

А если вдруг функция wp_list_categories, уже имеет какие-то параметры, то добавить еще один, можно с помощью знака &.

wp_list_categories('show_count=1&exclude=3');  

Вот так довольно просто, можно создавать статьи только для читателей RSS-ленты. Если вы знаете еще какие-то способы реализации такой задачи, расскажите о них.

Перевод статьи «Create Post Only For Your RSS Subscribers in WordPress«

Рассказать друзьям

Понравилась статья? Лучший способ сказать спасибо - поделиться ссылкой в социальных сетях: