На большинстве блогов далеко не лишним будет завести рубрику, посты из которой не станут выводится на главной странице блога и идти в RSS ленту. Такая скрытая рубрика понадобится нам для публикации постов под продажные ссылки, чтобы не распугивать посетителей, а также для многих других вещей.
Например, в неё можно помещать статьи, написанные под трафик, но не совсем соответствующие основной теме блога. Или описывающие совсем уж банальные и простые вещи, которые вряд ли будут интересны постоянным читателям. Да мало ли бывает причин, по которым нам бы хотелось скрыть некоторые публикации. Всё это можно сделать с помощью скрытой категории, создать которую или превратить в неё уже существующую рубрику — дело пары минут.
Надо сказать, что некоторые исключают рубрики не только с главной и из RSS, но и из меню навигации, однако это не наш случай, если мы хотим публиковать в ней посты под трафик и продвигать их. Свой вариант вы выбираете сами в зависимости от ваших задач.
На этом блоге функцию скрытой рубрики выполняет категория «Разное», вы можете найти её в верхнем и боковом меню. Посты из неё не идут в RSS и не публикуются на главной странице блога. Подобную рубрику можно создать специально, либо сделать любую уже существующую категорию нашего блога.
Чтобы убрать рубрику (категорию) с главной и из RSS нам потребуется всего-лишь вставить несколько строчек кода в файл functions.php используемой темы. Переходим к редактированию файла functions.php из админки блога или по FTP (wp-content — themes — наша тема — functions.php).
Вставляем в файл functions.php например в самом конце (перед закрывающим ?>) следующий код:
// скрываем рубрику function hidecategory($query) { if ($query->is_feed || ($query->is_home && !(is_paged()))) {$query->set('cat','-28');} return $query; } add_filter('pre_get_posts','hidecategory'); // конец кода скрытия рубрики
Цифра 28 в этом коде представляет собой ID рубрики, которую мы исключаем с главной и из RSS. Вы, соответственно, вставляете ID своей рубрики. Как узнать ID любой рубрики: Заходим из админки в «Записи» — «Рубрики», находим нужную категорию и наводим курсор мыши на её название, снизу высвечивается ссылка, в которой есть номер ID.
Вот и всё о том как убрать рубрику (категорию) с главной и из RSS и зачем это нам нужно.
Видео: 10 ошибок при SEO продвижении сайта
Я бы и не прятал то, что у тебя в «Разное». Ты думаешь, что это все знают, а это скорее всего совсем не так.
Смотрел это видео, много воды. Чек-лист и книга, которую дали после вебинара и то полезнее.
Я просто описал для чего может быть использована подобная категория на более менее приличном блоге. Никогда такое не использовал? А видео зачем смотрел?
Не, категории пока не прятал, но понимаю, зачем это надо и фишка полезная. Особенно хорошо, что не надо плагины ставить.
Видео смотрел раньше, на работе было нечего делать и вроде какой-то толковый сеошник выступал. Но кто-же спалит что-то интересное на бесплатном выступлении :-). А чек-лист по пошаговому продвижению проекта и книга по написанию продающих сео-текстов довольно интересные.
У рекламодателей при покупке ссылок стоит условие, что страница со ссылкой должна попасть в основную ленту. Так что сокрытие целой рубрики, наверное, не получится.
Далеко не у всех и не всегда. Но даже в этом случае можно включить статью на время проверки в основную ленту а потом опять выключить.
спасибо за помощь
Привет! Вот подскажи, в рубрике сделать несколько подрубрик, чтобы на главной в ленте показывалась только «видео» , а при нажатии на нее открывались подрубкики для выбора, а не сама рубрика. Можно ли это сделать? Спасибо!
Не в курсе. Спрашивайте у тех кто хорошо разбирается в wp. Например вот у него — _http://wp-kama.ru/
Привет, Антон
$query->is_feed
Это прописываем, чтобы скрыть рубрику в фиде.
А как прописать, чтобы скрыть рубрику у меня на блоге?
Бsk бы блог на главной, прописал бы так — $query->is_home
Но путь к блогу у меня uotika.ru/otika-blog
Спасибо
Привет Отик, а так как написано в статье не работает?
Вот только провел эксперимент, работает оказывается.
Я думал не будет работать, т.к плагины WP Hide Post и Simply Exclude (которые созданы чтобы не отображать выбранные записи на главной) с задачей своей не справлялись. Ставил еще 2 подобных, без толку.
Вот я и подумал, что дело в том что главная стр. у меня « не правильная». Главная у меня это главная (статическая) а не блог.
Вот кстати код какой я использовал, для исключения записей (постов) с главной страницы сайта по ID
Именно любой страницы на выбор.
function exclude_post ($query) {
if ($query->is_home)
{$query->set ('post__not_in', array (1146, 1199) );} // id записи (поста)
return $query; }
add_filter ('pre_get_posts','exclude_post');
1146, 1199 — это номера записей (пример только) статей указывать (определять так же как и ID)
У вас номера будут другие.
Теперь хоть можно будет блог быстро наполнять, т.к из за подписчиков, я не мог к примеру, чисто один раздел наполнять. На сайте с этим проблем не было раньше.
Чтобы подписчики (именно подписчики а не читатели) не знали что статьи новые выходят, вот код скрыть в ленте RSS анонсы новых статей
function exclude_post ($query) {
if ($query->is_feed)
{$query->set ('post__not_in', array (1146, 1199) );} // id записи (поста)
return $query; }
add_filter ('pre_get_posts','exclude_post');
Можно плагином Skip RSS (он легенький, т.е не тяжелый) для кого сложно с кодом разбираться. Написал много, но это от радости...
Что наконец то удалось сделать (т.е найти решение) того, что я еще года полтора назад был должен сделать.
Ну молодец.
Нормик пост. Спасибо Антон! Как раз нужно было скрыть некоторые статьи с главной и с rss. Проверил код рабочий! Помню выводил плагином, а nne все так просто!
Не за что, Александр )