如何在一个循环中显示来自多个帖子类型的帖子?并将它们分别显示在同一模板上

时间:2017-02-14 作者:Soeb Safi

我有四种帖子类型

产品的横幅和产品组合的推荐信都显示在相同的主页模板(index.php)上。

目前正在使用下面的查询从不同的帖子类型获取帖子。

<?php
query_posts(
    array(
        \'post_type\' => \'work_projects\',
        \'work_type\' => \'website_development\',
        \'posts_per_page\' => 100
    )
);
if ( have_posts() ) : while ( have_posts() ) : the_post();

    the_post_thumbnail($size);
    the_title();
    the_content();

endwhile; endif;
但我的问题是我必须把query_post 在同一页上循环。我在google上搜索了一些解决方案,在堆栈溢出上也找到了答案。但却不知道如何使用它们the_title(), the_content()the_post_thumbnail().

2 个回复
SO网友:shanebp

post_type 接受数组。您是否尝试过使用WP_Query 使用阵列?

$args = array( 
         \'post_type\' => array( \'product\', \'banner\', \'portfolio\', \'testimonial\'),
         \'post_status\' => \'publish\',
         \'posts_per_page\' => 100
    );
    $the_query = new WP_Query( $args );

SO网友:Industrial Themes

最佳实践是使用四个不同的自定义查询,并使用wp_query

下面是一个例子:

<?php
$custom_query = new WP_Query( 
    array(
        \'post_type\' => \'work_projects\', 
        \'work_type\' => \'website_development\', 
        \'posts_per_page\' => 100
    ) 
);
if ( $custom_query->have_posts() ) : while ( $custom_query->have_posts() ) : $custom_query->the_post();

    the_post_thumbnail($size);
    the_title();
    the_content();

endwhile; endif; wp_reset_query();
?>
然后,您将对每种职位类型重复此过程,将“work\\u projects”替换为下一个职位类型的名称。

我不确定这个场景中的“work\\u type”是什么,但我只是把它放回查询中,因为您已经有了它。

相关推荐

Increase offset while looping

我正在编写一个自定义帖子插件,它将自定义帖子分组显示为选项卡。每组4个岗位。是否可以编写一个偏移量随每次循环而增加的查询?因此,结果将是:-第一个查询显示从1到4的帖子-第二个查询显示从5到8的帖子-第三个查询显示从9到12的帖子等。 <div class=\"official-matters-tabs\"> <?php $args = array(\'post_type\' => \'official-matters\', \'showp