Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Вордпресс, запрет категорий на главной
цитата
02/03/11 в 23:33
 San_Tehnik
Уважаемые, помогите. Как запретить вывод постов из определенных категорий на главную страницу? Всем в репу и благодарность icon_wink.gif
цитата
03/03/11 в 01:16
 Yacc
Найти в файле шаблона главной страницы начало цикла:

Код:
<?php while ( have_posts() ) : the_post();?>


и заменить на

Код:
<?php while ( have_posts() ) : the_post(); if( !in_category( 'Категория 1' ) && !in_category( 'Категория 2' ) ) {?>


Найти конец цикла

Код:
<?php endwhile; ?>


и заменить на

Код:
<?php } endwhile; ?>
цитата
03/03/11 в 02:31
 San_Tehnik
Спасибо, сейчас буду пробовать.
цитата
03/03/11 в 11:29
 San_Tehnik
Чувствую, где-то натупил:
Код:
<div id="system">

   <?php if (have_posts()) : ?>

      <?php echo $this->render('_posts'); if( !in_category( 'Blues' ) && !in_category( 'Classical' )&& !in_category( 'Country' )&& !in_category( 'Dance' )&& !in_category( 'Folk' )&& !in_category( 'Jazz' )&& !in_category( 'New Age' )&& !in_category( 'Rap' ) && !in_category( 'Reggae' )&& !in_category( 'Rock' )) {?>
      
      <?php echo $this->render("_pagination", array("type"=>"posts")); ?>

   <?php else : ?>

      <h1 class="title"><?php _e('Not Found', 'warp'); ?></h1>
      <p><?php _e("Sorry, but you are looking for something that isn't here.", "warp"); ?></p>
      <?php get_search_form(); ?>

   <?php }  endif; ?>

</div>

кто подскажет, где именно?
цитата
03/03/11 в 11:45
 Yacc
Видимо условие нужно проверять до того как $this->render('_posts'). icon_smile.gif

Код:
<?php
if(   !in_category( 'Blues' )
   && !in_category( 'Classical' )
   && !in_category( 'Country' )
   && !in_category( 'Dance' )
   && !in_category( 'Folk' )
   && !in_category( 'Jazz' )
   && !in_category( 'New Age' )
   && !in_category( 'Rap' )
   && !in_category( 'Reggae' )
   && !in_category( 'Rock' ) )
{
   echo $this->render('_posts');
?>
цитата
03/03/11 в 12:33
 San_Tehnik
Теперь, если добавить пост хоть в одну из этих категорий, на главную нифига не выводится.

Код:
<div id="system">

   <?php if (have_posts() && !in_category( 'Blues' )
   && !in_category( 'Classical' )
   && !in_category( 'Country' )
   && !in_category( 'Dance' )
   && !in_category( 'Folk' )
   && !in_category( 'Jazz' )
   && !in_category( 'New Age' )
   && !in_category( 'Rap' )
   && !in_category( 'Reggae' )
   && !in_category( 'Rock' ))  : ?>



      <?php echo $this->render('_posts'); ?>
      
      <?php echo $this->render("_pagination", array("type"=>"posts")); ?>

   <?php else : ?>

      <h1 class="title"><?php _e('Not Found', 'warp'); ?></h1>
      <p><?php _e("Sorry, but you are looking for something that isn't here.", "warp"); ?></p>
      <?php get_search_form(); ?>

   <?php endif; ?>

</div>
цитата
03/03/11 в 12:38
 sisers
Поставб плагин http://wordpress.org/extend/plugins/advanced-category-excluder/
И не мучайся. Установка и настройка не более минуты займут.
цитата
03/03/11 в 12:40
 San_Tehnik
Ставил уже его, не работает он с последними версиями вордпресс.
цитата
03/03/11 в 12:57
 Yacc
Стучи в аську, разберёмся.
цитата
03/03/11 в 14:09
 Yacc
Тема жуть - чёрт ногу сломит. smail101.gif

Файл \warp\systems\wordpress.3.0\layouts\_posts.php

Найди строку

Код:
$columns[$column] .= $this->render('_post');


и замени на

Код:
if( is_home() ) {
   if (     !in_category( 'Lexi Belle' )
         && !in_category( 'Clara G' )
         && !in_category( 'Lindsey Meadows' )
         && !in_category( 'Dance' )
         && !in_category( 'Folk' )
         && !in_category( 'Jazz' )
         && !in_category( 'New Age' )
         && !in_category( 'Rap' )
         && !in_category( 'Reggae' )
         && !in_category( 'Rock' ) )
   {
      $columns[$column] .= $this->render('_post');
   }
}
else $columns[$column] .= $this->render('_post');
цитата
03/03/11 в 16:00
 San_Tehnik
Yacc: Спасибо, выручил smail54.gif


Эта страница в полной версии