Главная Новости

Исключаем категории из архива или с главной страницы WordPress

Опубликовано: 17.06.2018

видео Исключаем категории из архива или с главной страницы WordPress

Вордпресс. Как убрать метки, рубрики с главной страницы сайта

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



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


Wordpress видео уроки - Как убрать надпись: архив рубрик

Изложу суть своей задачи, быть может ее решение будет кому-то полезным. На одном сайте нужно было сделать календарь анонсов. Специально для анонсов я создал отдельную рубрику. Календарь использовал тот, который встроен в WordPress. Но тут возникает проблема – при вызове архива за определенный день, выводятся все записи опубликованные в этот самый день. А мне нужно было получить только записи из рубрики анонсы. Соответственно, для этого мне нужно исключить все записи всех других рубрик. Вот как я поступил.


Как вывести подрубрики на странице рубрик - Константин Хмелев

Я создал файл loop-archive.php, соответственно при вызове архива, срабатывает именно этот файл. Для этого в файле archive.php петля должна вызываться следующим образом:

<?php rewind_posts(); get_template_part( 'loop', 'archive' ); ?>

В файле loop-archive.php я прописал код петли, который мне был необходим, а именно:

<?php if ( ! have_posts() ) : ?> <div id="post-0"> <h1 class="entry-title"><?php _e( 'Not Found', 'twentyten' ); ?></h1> <div class="entry-content"> <p><?php _e( 'Apologies, but no results were found for the requested archive. Perhaps searching will help find a related post.', 'twentyten' ); ?></p> <?php get_search_form(); ?> </div><!-- .entry-content --> </div><!-- #post-0 --> <?php endif; ?> <?php while ( have_posts() ) : the_post(); ?> <?php if ( !in_category('5') ) continue; ?> <div id="post-<?php the_ID(); ?>"> Содержимое поста на странице архива </div><!-- #post-## --> <?php endwhile; ?>

Петля, в принципе стандартная, но я добавил лишь некоторые изменения:

<?php if ( !in_category('5') ) continue; ?>

Собственно этот код является своеобразным фильтром, который включает в архив только те записи, которые содержатся в рубрике «5» - это рубрика «Анонс», нужная мне категория. Все остальные записи из других рубрик просто пропускаются. Таким образом можно исключать или включать необходимые категории. Если убрать восклицательный знак, то мы наоборот исключим категорию с ID=5, все записи из остальных категорий будут показываться в архиве. Экспериментируя над кодом, можно добиться необходимых результатов, в зависимости от поставленных задач.

Подписывайтесь и получайте полезные статьи на почту!

Добро пожаловать , Гость !

Мы настоятельно рекомендуем Вам зарегистрироваться, если вы ещё этого не сделали. регистрация откроет Вам новые функции.

Войти или Зарегистрироваться

www.silvio-berluskoni.ru © Все права защищены © 2016.
rss