首页 > 解决方案 > php 只循环 5 次,应该为每个帖子循环

问题描述

我不擅长 php,所以也许我忽略了一些简单/愚蠢的事情。

但是下面的代码似乎只循环了 5 次(至少它只输出 5 个站点),而这个特定类别中有 12 个站点。

难道我做错了什么?

<div class="col-md-3">
<div class="maddos-category-container">
<div class="maddos-category-header"><h3 class="maddos-category-header-title"><a href="<?php echo get_category_link( "17" );?>"><?php echo get_cat_name(17);?></a></h3></div>
<div class="maddos-category-wrapper">
<ol>
   <?php
    $args = array( 'category' => 17, 'post_type' =>  'post' ); 
    $postslist = get_posts( $args );    
    foreach ($postslist as $post) :  setup_postdata($post); 
    ?>  
    <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> 
    <?php endforeach; ?> </div></div></div>
</ol>

标签: phpwordpress

解决方案


查看get_posts的文档

$args

(数组)(可选)检索帖子的参数。有关所有可用参数,请参阅 WP_Query::parse_query()。

'numberposts' (int) 要检索的帖子总数。是 WP_Query 中 $posts_per_page 的别名。全部接受 -1。默认 5。

所以,替换:

$args = array( 'category' => 17, 'post_type' =>  'post' ); 

$args = array( 'category' => 17, 'post_type' =>  'post',  'numberposts' => -1);  //unlimited

推荐阅读