我正在 WordPress 中创建一个登录页面(一个页面有很多部分),并且我正在使用 get_template_part() 调用每个部分。所以我有这样的东西;
<?php get_template_part( 'content', 'reasons-to-purchase'); ?>
<?php get_template_part( 'content', 'testimonials'); ?>
<?php get_template_part( 'content', 'reasons-to-purchase'); ?>
然后每个内容文件都有一个循环来返回与其类别匹配的帖子,posts_per_page 设置为 1,如下所示(content-reasons-to-purchase.php);
<?php
$args = array(
'post_type' => 'section',
'category_name' => 'Reasons-To-Purchase',
'posts_per_page' => 1,
'orderby' => 'date',
'order' => 'DESC'
);
$the_query = new WP_Query ( $args );
if (get_category_by_slug('Reasons-To-Purchase')->category_count > 0 ) {?>
<!-- Featured content image or slider. -->
<div class="container panel">
<?php if ( have_posts() ) : while ( $the_query->have_posts () ) : $the_query->the_post(); ?>
<?php the_content(); ?>
</div>
<?php } ?>
<?php wp_reset_query(); ?> <div class="clearfix"></div>
我想要创建尽可能多的这些部分,按照我喜欢的顺序,每个部分中的循环会拉出分配给该类别的下一篇文章。例如,在第一个“购买理由”部分,第一个帖子被拉出,然后在第二个“购买理由”中,第二个帖子被调用。目前我使用'wp_reset_query()'重置每个文件中的循环,因此它不会干扰可能不同的下一部分。基本上,循环必须继续下一个类似的命名部分,而不复制任何帖子..
任何关于如何做到这一点的想法或建议将不胜感激。