кнопка наверх

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

исключение записи  с главной  WordPress

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

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

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

1. Первым делом нужно узнать ID категории, посты которой вы хотите исключить. Зайдите в «Записи -> Рубрики», наведите мышкой на категорию в писке справа и вы увидите параметр tag_ID внизу браузера (на скриншоте выделено).
Перейдите во вкладку «Внешний вид -> Редактор».

узнать ID рубрики вордпресс

2. Найдите в правой колонке фай с названием «Функции темы (functions.php)» и добавьте в конец файла код, который вы выберете из списка ниже. Когда будете вставлять код, не забудьте, что он должен оказаться до закрывающего тега ?>.

3. В каждом коде вам нужно изменить часть set ('cat',’-2, -24’) – здесь через запятую перечислены ID категорий для исключения, их вы можете указать сколь угодного много.

Варианты кода для исключения категорий

Как не показывать посты данной категории на главной странице WordPress Блога:

1
2
3
4
5
function exclude_category($query) {
 if ($query->is_home){
 $query->set('cat','-2, -24');} 
 return $query; }
add_filter('pre_get_posts','exclude_category');

Как исключить записи рубрики из архивов статей блога на вордпресс:

1
2
3
4
5
function exclude_category($query) {
 if ($query->is_archive){ 
 $query->set('cat','-2, -24');} 
 return $query; }
add_filter('pre_get_posts','exclude_category');

Как исключить посты категории из результатов поиска по сайту WordPress

1
2
3
4
5
function exclude_category($query) {
 if ($query->is_search){
 $query->set('cat','-2, -24');} 
 return $query; }
add_filter('pre_get_posts','exclude_category');

Как исключить посты рубрики одновременно из rss ленты, главной страницы и результатов поиска:

1
2
3
4
5
function exclude_category($query) {
 if ($query->is_feed || ($query->is_home || ($query->is_search))){
 $query->set('cat','-2, -24');} 
 return $query; }
add_filter('pre_get_posts','exclude_category');

Как исключить записи рубрики одновременно с главной страницы и rss фида Блога WordPress:

1
2
3
4
5
function exclude_category($query) {
 if ($query->is_feed || ($query->is_home)){
 $query->set('cat','-2, -24');} 
 return $query; }
add_filter('pre_get_posts','exclude_category');

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


1 звезда2 звезды3 звезды4 звезды5 звезд (5 оценок, среднее: 4,20 из 5)
Загрузка...
like
Понравилось?
Подпишитесь на блог и получайте новые статьи!
Добавляйтесь в соц. сетях:
  1. Max:

    Большое спасибо! 🙂

    Отличная статья, без «воды»

    Ответить
  2. Александр:

    Как исключить из поиска 'post_type', 'slider' ?

    Делаю так,но не срабатывает

    function SearchFilter ($query)

    {

    if ($query->is_search) {

    $query->set ('post_type', 'slider');

    $query->set ('cat', '-22, -20');

    }

    return $query;

    }

    Ответить
  3. Андрей:

    function exclude_category ($query) {

    if ($query->is_home){

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

    return $query; }

    add_filter ('pre_get_posts','exclude_category');

    Исчезает главное навигационное меню

    Ответить
  4. Андрей:

    При добавлении исключения пропадает главное меню. У кнопок навигации есть тоже id, и если их внести как не исключаемые — меню всё равно нет (

    Ответить
Ваш комментарий: