Как запретить вывод на главной ленте блога каких-то рубрик

Недавно столкнулись с необходимостью закрытия определенной рубрики от вывода на главную ленту блога. Плагины использовать для этого не хочу, так как нагрузка от них идет существенная, особенно, если сайт посещаемый. Так что шпаргалка по ПХП. Откройте для редакции файл functions.php.

Я делаю обычно это через меню в админке. Путь: Внешний вид – Редактор – functions.php. В самом конце этого файла, перед закрывающим тегом ?> вставить:

function removeFromHome($query) {
if ($query->is_home)
{$query->set('cat','-12');}
return $query; }
add_filter('pre_get_posts','removeFromHome');

Чтобы запретить вывод определенной рубрики, нам надо знать ее ID. Узнать его можно вызвав на редактирование рубрику. В адресной строчке браузера будет что-то типа:

taxonomy=category&tag_ID=12&post_type=post

Нас будет интересовать та цифра, что стоит после ID=

В данном случае это цифра 12

Теперь, в строчке

{$query->set ('cat','-12');}

прописываем требуемый нам номер со знаком минус (исключить).

Если требуется исключить несколько рубрик

В этой же строчке пропишите все номера через запятую

{$query->set ('cat','-12, -16, -24');}

Вот так просто можно исключить с главной какие-то отдельные рубрики. И плагинами не нужно ничего загружать.