查询特定类别中的所有帖子

时间:2013-08-07 01:29:01

标签: php wordpress

我一直在尝试在某个类别的页面中显示所有帖子。这是我到目前为止所做的:

<?php
$args = array(
             'category_name' => 'diy-tutorial',
             'post_type' => 'post',
             'posts_per_page' => 3
             //'paged' => ( get_query_var('paged') ? get_query_var('paged') : 1),
             );
query_posts($args);
$x = 0;
while (have_posts()) : the_post(); ?>

它实际上正在工作,但它不会让我浏览类别的下一页例如,我在该特定类别中有30个帖子,所以我的代码会向我显示每页三个帖子吗?下一个&gt;&gt;链接不会显示以及如果我更改每页显示的帖子数量,它将无法正常工作...

如果您有另一种展示方式,请告诉我。

2 个答案:

答案 0 :(得分:0)

我相信你必须添加按钮并可能建立功能:阅读Codex的朋友:https://codex.wordpress.org/Pagination#Function_Reference

此外,我相信您的代码中已注释掉的部分必须处于活动状态才能声明分页。

<nav class="wp-prev-next">
    <ul class="clearfix">
        <li class="prev-link"><?php next_posts_link(__('&laquo; Older Entries', "bonestheme")) ?></li>
        <li class="next-link"><?php previous_posts_link(__('Newer Entries &raquo;', "bonestheme")) ?></li>
    </ul>
</nav>

答案 1 :(得分:0)

抱歉,我的wordpress有点生疏,但我喜欢发帖的方法是将查询字符串传递给get_posts

$catID=get_cat_id('diy-tutorial');
$queryString="cat=".$catID."&numberposts=1000";
 global $post;
 //execute the query from the string 
 $myposts = get_posts($queryString);
//loop thru and do stuff
 foreach($myposts as $post) :
 setup_postdata($post);
the_post();
endforeach;

请参阅此处的代码:http://codex.wordpress.org/Template_Tags/get_posts