<?php
if (is_home()) {
query_posts("cat=-1,-2,-3");
}
?>
Исключены категории с id= 1, 2 и 3
Этот код следует добавить в index.php Вашей темы перед началом Цикла (loop). Классический Цикл начинается так:
<?php while (have_posts()) : the_post(); ?>
Источник: query_posts
UPD 28.05.2007
Можно воспользоваться плагином Category Visibility
мм как я понимаю что этот, что тот http://forum.maxsite.org/viewtopic.php?id=577 код работать не будет, если у меня сообщение относится к нескольким моим категориям.
Кстати этот код не будет работать и на версии 2.0.* – в ней можно задать только одну исключающую рубрику.
ага у меня не работает
и ваш Максим другой для одной рубрики тоже чего-то не рабоатет
А какой тогда код будет работать (чтобы исключить неск. категорий)?
Я дернула этот пример из Кодекса, сама не пробовала, но иногда же может понадобится
Да в кодексе этот пример для 2.1 описан. Для предыдущих версий, насколько я помню, это был баг, который они и поправили. 🙂
У самого такая же проблема и как побороть, не переписывая движок, не знаю. Проблема еще в том, что не будет корректно работать пагинация (pagged). Сейчас я просто в цикле TheLoop (сразу после if (have_posts()) : while (have_posts()) : the_post();) прописываю:
где X – номер исключенной рубики.
соответственно, и мануал для исключения одной рубрики с главной тоже не будет работать по предложенному там коду? 2.0.x версии
С одной исключенной рубрикой работать будет.
одна рубрика исключается, но при переходе на предыдущие страницы /page/2/ и т.п.
отображаются сообщения с главной, как исправить не подскажете?
Как я и написал, нужно исключать рубрику из вывода прямо в цикле TheLoop:
Можно добавить условие is_pagged() – срабатывает, если идет пагинация.
Но, вообще это глюк WordPress. Когда исправят неизвестно.
Хоть и пост старый спрошу!
А разве будет работать код if ( $cat == X ) continue; если он в не блока кода <?php ?>?
Убрал закрывающий ?>
И что это исключение? Постов категории главной срт. или с под категорий главной категории??? :rolleyes: