用于自定义投递类型的自定义循环

时间:2014-10-18 作者:user3331701

我使用WP 4.0和Headway作为我的主题。我已经创建了一个名为“property”的自定义帖子类型,并希望在两列中创建循环。但我不确定要在下面的代码中添加什么来实现它。我还想添加分页。

我还有其他信息要放在循环中。只是努力让它正常工作。

这是目前为我工作的代码。。。没有列。

<?php $loop = new WP_Query( array( \'post_type\' => \'property\', \'posts_per_page\' => -1, \'category\' => \'current\' ) ); ?>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
<div class="pindex">
    <div class="pimage">
        <a href="<?php the_permalink(); ?>"><?php if ( has_post_thumbnail() ) {the_post_thumbnail();} ?></a>
    </div>
    <div class="ptitle">
        <h2><?php echo get_the_title(); ?></h2>
    </div>
</div>
<?php endwhile; wp_reset_query(); ?>

1 个回复
SO网友:Robert hue

您的查询中有几个问题。

没有名为的参数category. 您可以使用以下内容。

cat (int) - use category id.
category_name (string) - use category slug (NOT name).
category__and (array) - use category id.
category__in (array) - use category id.
category__not_in (array) - use category id.
如果需要查询分页,则不应使用posts_per_page\' => -1. 这将覆盖分页并返回所有帖子。

还有一件事,您正在错误的位置检查帖子缩略图。您应该在图像容器之前检查它。

因此,我修改了您的查询,结果如下。我想你的分类弹头是current 正如您在查询中使用的一样。

<?php
    $loop = new WP_Query( array( \'post_type\' => \'property\', \'category_name\' => \'current\', \'ignore_sticky_posts\' => 1, \'paged\' => $paged ) );
    if ( $loop->have_posts() ) :
        while ( $loop->have_posts() ) : $loop->the_post(); ?>
            <div class="pindex">
                <?php if ( has_post_thumbnail() ) { ?>
                    <div class="pimage">
                        <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail(); ?></a>
                    </div>
                <?php } ?>
                <div class="ptitle">
                    <h2><?php echo get_the_title(); ?></h2>
                </div>
            </div>
        <?php endwhile;
        if (  $loop->max_num_pages > 1 ) : ?>
            <div id="nav-below" class="navigation">
                <div class="nav-previous"><?php next_posts_link( __( \'<span class="meta-nav">&larr;</span> Previous\', \'domain\' ) ); ?></div>
                <div class="nav-next"><?php previous_posts_link( __( \'Next <span class="meta-nav">&rarr;</span>\', \'domain\' ) ); ?></div>
            </div>
        <?php endif;
    endif;
    wp_reset_postdata();
?>
这将返回类别中的所有帖子current 带分页。如果您需要从多个类别获取帖子,那么您可以使用category__in 参数而不是category_name.

\'category__in\' => array( 2, 6 )
请注意category__in 仅帐户类别ID。

结束

相关推荐