为自定义帖子类型的每个类别显示一个项目

时间:2016-05-19 作者:Ebelanger

我有一个自定义类型,叫做不同类别的公文包。我想显示除一个类别外的所有类别。我只想在我的页面上显示每个类别的一个项目。

我一直在忙这个,我的循环只能显示类别中的所有项目,但不能每个类别只显示一个项目。到目前为止,我可以显示类别,但它们会重复,我无法在页面上只显示一次。每页一个类别。

这是我试过的两个循环。

回路1

$args = array (
        \'post_type\' => \'portfolio\',
        \'category__not_in\' => array(28,30),
    );

    $newQuery = new WP_Query($args);

    if ($newQuery -> have_posts() ):
        while( $newQuery-> have_posts() ): $newQuery-> the_post();
            echo get_the_term_list( $post->ID , \'portfolio_type\'); 
        endwhile;
    endif;

    wp_reset_postdata();
测试回路2

$args_cat = array (
        \'taxonomy\' => \'portfolio_type\',
        \'exclude\' =>  \'28,30\',
    );
    $categories = get_categories($args_cat);

    foreach($categories as $category):

        $args = array (
            \'post_type\' => \'portfolio\',
            \'posts_per_page\' => 1,
        );

        $newQuery = new WP_Query($args);

        if ($newQuery -> have_posts() ):
            while( $newQuery-> have_posts() ): $newQuery-> the_post();

                echo get_the_term_list( $post->ID , \'portfolio_type\'); 

            endwhile;
        endif;

        wp_reset_postdata();
    endforeach;
谁能帮帮我谢谢?!

1 个回复
SO网友:Ebelanger
$args = array(
                    \'taxonomy\' => \'portfolio_type\',
                    \'exclude\' => \'28,30\',
                    );
                $tax = get_terms($args);
                foreach($tax as $t){




                    echo \'<div class="span3 produto-lista">\';

                        $args = array(

                                  \'tax_query\' => array(
                                    array(
                                        \'taxonomy\' => \'portfolio_type\',
                                        \'field\' => \'slug\',
                                        \'terms\' => array($t->slug)
                                    )
                                ),
                                  \'posts_per_page\' => 1,
                                  \'post_status\' => \'publish\',
                                  \'order\' => \'DESC\',

                                  );
                        $query = new WP_Query( $args );




                        while ( $query->have_posts() ) {
                            $query->the_post();

                            ?>

                            <a href="<?php echo get_term_link($t); ?>">

                            <?php
                            the_post_thumbnail(); ?>
                            <h1>
                            <?php
                            echo $t->name; 
                            ?>
                            </h1>
                            </a>
                            <?php
                        }
                        wp_reset_query();
                    echo \'</div>\';
                }

相关推荐

WordPress Custom Post Loop

我正在尝试循环浏览自定义WordPress帖子,遇到了一个问题,比如我添加了自定义字段并想在中显示它<li> 使用循环。我成功地完成了操作,但数据/链接/类别正在重复,如果类别与以下内容相同,我希望只显示一次:如果我有2篇带有data1类别的帖子,那么链接将只显示data1once 但我有2个不同类别的帖子,然后它会分别显示每个帖子。Sample Code:<ul class="filter filter-top"> <li cla