GetPost()方法和分页

时间:2011-11-19 作者:Umesh Awasthi

我正在为启用wordpress的网站创建一个相关的文章后功能。刚接触php和wordpress时,面临一些问题。虽然我可以使用wordpress内置功能来显示作者的相关帖子,但由于该网站正在托管作者的文章,而这些作者没有任何个人资料,而且有很多这样的作者,所以当为作者创建新帖子时,我们倾向于将自定义字段保存为author\\u电子邮件。因此,基于此,我们想展示某位作者发表的所有帖子。我尝试使用get\\u posts()方法

<?php 
        $args = array( \'meta_key\' => \'author_email\', \'meta_value\' => \'[email protected]\');
        $authorposts=get_posts($args); ?>
    <div id="content">
    <span class="breadcrumbs"><a href="<?php echo get_option(\'home\'); ?>/">Home</a> &raquo; <?php the_category(\', \') ?></span>
    <?php if (count( $authorposts ) > 0) {
    foreach ( $authorposts as $post ): setup_postdata($post)            ?>
    <div id="headline_author">
        /*
          showing post tilte with image and some part of it
        */
        <div class="clearfloat"></div>
    </div>
    <?php endforeach;  ?>
    <div class="post-nav">
                <div class="previous"><?php previous_posts_link(\'&lsaquo; Previous Page\') ?></div>
                <div class="next"><?php next_posts_link(\'Next Page &rsaquo;\') ?></div>
    </div>
   <?php
                    } else {
                        echo \'<p>No articles by this user</p>\';
                    }       
                    ?>
</div>
它显示前5个结果和指向下一页的链接,但当我单击下一页时,它显示它已转到第二页,因为它在URL上也可见,但它显示的5个结果与第一页中显示的结果相同。我的想法是,我在同一页上编写的查询将从头开始再次执行,但不确定如何修复它。因为我使用cutom字段来获取帖子,所以我可以使用简单的查询来获取基于限制或偏移等的帖子。

有人能帮我解决问题吗?或者能告诉我怎么做

提前感谢

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

我想你需要告诉我查询已经被分页了。

您是否尝试过:

 $args = array( \'meta_key\' => \'author_email\', \'meta_value\' => \'[email protected]\', \'paged\' => $paged);

结束

相关推荐

Integrating plugins in themes

我找不到讨论这个的帖子,所以开始这篇。我目前正在为3.1+开发一个相当复杂的主题,我的意思是,除了样式和常规的前端功能之外,我还在主题的核心包括后端和前端的插件。因此,为了使这一点更有条理,我将其分为三个问题:集成插件是一种常见的做法吗</自动更新主题/插件有什么影响/复杂之处</在不破坏现有功能的情况下,包含每个插件的最佳方式是什么