[Помогите] Вывод по 2 поста из категории

Тема в разделе "Wordpress", создана пользователем t3s, 16 ноя 2010.

Статус темы:
Закрыта.
Модераторы: Sorcus
  1. t3s

    t3s

    Регистр.:
    16 фев 2008
    Сообщения:
    719
    Симпатии:
    290
    Приветствую всех фанатов вордпресса!
    Ребята, стоит задача на главной выводить из шести указанных категорий по два поста. Сейчас делаю вот так:
    PHP:
    <?php
    $mycat 
    3// беру ид категории
    query_posts'showposts=2&cat=' $mycat );// беру 2 поста
    ?>
    затем стандартным вордпрессовским loop-ом вывожу новости
    PHP:
    <?php while (have_posts()) : the_post(); ?>
        <div class="title"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></div>
        <div class="meta">[<?php the_time('j M Y'?> | <?php comments_popup_link('Коментариев нет''1 коментарий »''% комментарев »'); ?> | <?php if(function_exists('the_views')) { the_views(); } ?>]</div>    
        <?php the_excerpt(); ?>
    <?php 
    endwhile; ?>
    вроде как задача решена - вывожу две новости из нужной мне категории... но поскольку категорий 6, то все это придется проделать 6 раз что есть не совсем красиво... может, кто подскажет более изящное решение?
     
  2. BadMotherFucker

    BadMotherFucker Модератор (Core Team)

    Регистр.:
    13 ноя 2009
    Сообщения:
    786
    Симпатии:
    570
    Добавьте следующую конструкцию в файл вашего шаблона index.php:
    Код:
    <?php
    
    //IDs of your categories…
    
    $display_categories = array(1,2,3,4,5,6);
    foreach ($display_categories as $category) {
    
    //showposts = Number of posts to display per category…
    
    	query_posts("showposts=2&cat=$category");
            $wp_query->is_category = false;
            $wp_query->is_archive = false;
            $wp_query->is_home = true;
            ?>
    
    	//Displays category name (Эту часть можно убрать)…
    
    	<h3><a href="<?php echo get_category_link($category);?>"><?php
            single_cat_title(); ?></a></h3>
    
    //WordPress loop…
    
    <?php while (have_posts()) : the_post(); ?> 
        <div class="title"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></div> 
        <div class="meta">[<?php the_time('j M Y') ?> | <?php comments_popup_link('Коментариев нет', '1 коментарий »', '% комментарев »'); ?> | <?php if(function_exists('the_views')) { the_views(); } ?>]</div>     
        <?php the_excerpt(); ?> 
    <?php endwhile; ?>
    
    <?php } ?>
    В результате на главной странице вашего блога будет выводится ровно по 2 поста из заданных категорий.
     
    Danilka71 и t3s нравится это.
Статус темы:
Закрыта.