Flector

Как убрать с главной страницы и RSS записи рубрики?

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

//исключение записей рубрик с главной start
function wph_remove_from_home($query) {
    if ($query->is_home) 
        {$query->set('cat','-7,-11');}
    return $query; 
}
add_filter('pre_get_posts','wph_remove_from_home');
//исключение записей рубрик с главной end

Где 7 и 11 это ID рубрик, записи которых надо убрать. Данный сниппет уберет записи указанных рубрик с главной страницы сайта, а для удаления записей одновременно еще и из RSS-ленты надо использовать такой код:

//исключение записей рубрик с главной и RSS start
function wph_remove_from_home_rss($query) {
    if ($query->is_feed || $query->is_home)  
        {$query->set('cat','-7,-11');}
    return $query; 
}
add_filter('pre_get_posts','wph_remove_from_home_rss');
//исключение записей рубрик с главной и RSS end

Помните, что условный тег is_home сработает на странице вывода записей сайта, которая не всегда является главной страницей сайта (главной на сайте может быть установлена статическая страница).


Комментарии (1 комментарий)
  1. Спасибо, получилось, а главное - так кратко и доступно написано!

Написать комментарий

Для вставки кода воспользуйтесь кнопкой "Код". Используйте предпросмотр!