为什么WP_QUERY(‘showpost=5’)只显示一个帖子?

时间:2013-02-10 作者:TruMan1

我试图做一个简单的查询,将最新的5篇文章放入一个无序的列表中,但这只显示了1个结果,尽管我有几篇文章。我甚至做了一个偏移,但它显示了下一篇文章仍然是1的结果。我做错了什么?

<ul>
    <?php $the_query = new WP_Query(\'showposts=5\'); ?>
    <?php while ($the_query -> have_posts()) : $the_query -> the_post(); ?>
        <li>
            <a href="<?php the_permalink() ?>"><?php the_title(); ?></a>
            <p><?php the_content_limit(250); ?></p>
        </li>
    <?php endwhile;?>
</ul>

2 个回复
最合适的回答,由SO网友:chrisguitarguy 整理而成

the_content_limit WordPress中不存在。你可能想要the_excerpt.

可能发生的情况是,您的循环工作正常,但对未定义函数的调用会导致程序出错,使其看起来好像循环不工作。查看呈现的HTML:您可能会看到一个<li> 标记、链接和开头段落标记。

showposts 也不推荐使用。看一看in the codex: 加入2.1

尝试以下操作:

<?php
$query = new WP_Query(array(
    \'posts_per_page\'   => 5,
));

while ($query->have_posts()): $query->the_post(); ?>
    <li>
        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
        <p><?php the_excerpt(); ?></p>
    </li>
<?php endwhile;

SO网友:Mayank Kushwaha

post\\u per\\u页面的默认语法为-

<?php
      $query = new WP_Query
      (array(
                 \'posts_per_page\'   => 5,
             )
       );

       while ($query->have_posts()): $query->the_post(); ?>
      <li>
          <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
          <p><?php the_excerpt(); ?></p>
     </li>
<?php endwhile;

结束