Здравствуйте, сегодня рассмотрим как с помощью кода – выводить на главной странице только нужные категории (рубрики) записей (постов, страничек).
Скачать исходники для статьи можно ниже
1. Нужно определить id категорий (рубрики), которых вы хотите оставить на главной странице сайта, как это сделать:
Заходим в панель управления wordpress, в левом меню выбираем пункт “Записи” и его подпункт “Рубрики”:
Далее заходим в нужную рубрику, например, зайду в рубрику под названием “дизайн”:
Жмем левой клавишей мышки на адресную строку браузера (отмечена синей стрелкой на картинке выше) и смотрим на id рубрики:
Например, в моем примере адресная строка браузера показывает следующее:
http://localhost/testmnogoblog/wp-admin/edit-tags.php?action=edit&taxonomy=category&tag_ID=2&post_type=post
Здесь смотрим чему равно ID, в нашем примере ID=2, то есть id рубрики “2”.
Еще один вариант посмотреть ID рубрики, категории – зайти в панель управления, в левом меню выбрать пункт “Записи” и его подпункт “Рубрики”, далее просто наводите курсор мышки на название рубрики и в нижнем левом углу смотрите ее ID:
И еще один способ определить Id рубрики, категории, записей, страничек – это установить плагин Reveal IDs:
Последнее обновление: 2014-6-16
Загрузок: 403,101
Сайт плагина: “wordpress.org/plugins/reveal-ids-for-wp-admin-25/”
Установка плагина стандартная – через панель управления wordpress.
2. Изменяем файл fumctions.php
Перед тем как вносить изменения в файл funtions.php – предупреждаю, что это может сломать ваш сайт.
Лучше всего использовать дочернюю тему, или же протестировать код на тестовом сайте, или на локальном сервере (denwer).
Заходим в панель управления, в левом меню выбираем пункт “Внешний вид” и его подпункт “Редактор”, справа в списке шаблонов выбираем файл functions.php:
И вставляем в файл functions.php следующий код:
function my_home_category( $query ) { if ( $query->is_home() && $query->is_main_query() ) { $query->set( 'cat', '2'); } } add_action( 'pre_get_posts', 'my_home_category' );
В данном примере на главной странице будут показаны записи, странички только из категории с id=2
Если же вы хотите показывать записи, странички нескольких категории, то используйте следующий код:
$query->set( 'cat', ’2, 14’ );
В данном примере будут показаны категории с id=2 и с id=14, то есть нужно перечислить id нужных категорий через запятую.