对外部PHP脚本中GET_POSTS返回的帖子进行计数

时间:2013-05-11 作者:Aram Boyajyan

我使用外部PHP脚本中的WP,包括wp-load.php 文件

到目前为止,所有功能和一切都按预期工作,除了一件事:我无法获得$wp_query->found_posts 在我用get_posts() 作用

有什么提示我应该用什么来代替吗?

谢谢

1 个回复
SO网友:birgire

WordPress功能get_posts() 正在制作自己的实例WP_Query 无法全局访问的:

function get_posts($args = null) {
    // ... cut ...
    $get_posts = new WP_Query;
    return $get_posts->query($r);
}
所以你可以试试

 $results = get_posts($args);
 echo count($results);
为您提供由返回的post对象的数组计数get_posts().

WP\\u Query()类用法示例:

您可以考虑使用WP_Query() 直接初始化。

下面是一个如何使用它的示例:

<?php
// your input parameters:   
$args = array(
    \'posts_per_page\' => 10,
);

$my_query = new WP_Query( $args );?>

Found posts: <?php echo $my_query->found_posts;?>

<?php if ( $my_query->have_posts() ):?>
    <ul>
        <?php while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
            <li> <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
        <?php endwhile; ?>
    </ul>
<?php endif; ?>

<?php wp_reset_postdata();?>    
我们使用wp_reset_postdata() 最终,恢复全球$post 对象,因为我们通过the_post() 方法

参考号:

http://codex.wordpress.org/Function_Reference/wp_reset_postdata

http://codex.wordpress.org/Class_Reference/WP_Query

结束

相关推荐

API在离开页面时触发提示

我有一个专有插件,可以在编辑帖子页面上创建一个元框。当插件管理的数据被编辑并且用户导航离开时,我们希望用户被提示为Wordpress(或者是TinyMCE?)现在编辑文章正文时执行。理想情况下,如果用户修改metabox和post内容,则会提示他们一次。Is there an API which allows us to activate Wordpress\' (or is it TinyMCE\'s?) dirty flag?我知道this similar question and the answe