知道之前进入循环的帖子总数

时间:2013-01-09 作者:Daniel

有没有办法在循环开始之前知道帖子的总数?我在考虑使用两个循环。第一个将进行计数,而第二个将处理内容。然而,我认为这种方法并不“优雅”。还有其他解决方案吗?

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

功能。php:

function wpse8170_get_posts_count() {
    global $wp_query;
    return $wp_query->post_count;
}
索引。php:

if (have_posts()) :
    echo \'<h1>\' . wpse8170_get_posts_count() . \' Posts Found</h1>\';

    while ( have_posts() ) : 
        the_post();
        //...
    endwhile;
endif;

SO网友:fuxia

给定查询的所有帖子数为$GLOBALS[\'wp_query\']->found_posts.

您所看到的页面的所有帖子数量$GLOBALS[\'wp_query\']->post_count.

要查看所有可用变量,请使用以下工具进行测试:

add_action( \'loop_start\', function() {
    print \'<pre>\'
        . htmlspecialchars(
            print_r( $GLOBALS[\'wp_query\'], TRUE ),
            ENT_QUOTES,
            \'utf-8\',
            FALSE
        )
        . \'</pre>\';
});

结束

相关推荐

在外部php脚本中使用插件功能不起作用

我遇到了一个奇怪的问题,到目前为止我还不能解决。我在打电话给a。通过cronjob(Debian/GNU-Linux)编写php脚本。要使用wordpress功能,我添加了:define(\'WP_USE_THEMES\', false); require( \'/full/path/to/wp-blog-header.php\' ); 现在,数据库查询和默认wordpress功能都可以正常工作,但我也调用了插件提供的一些功能(即高级自定义字段,但该问题会影响其他插件以及我测试的插件)。