0

关于如何在 Wordpress 中获取分页帖子当前页面的字数的任何建议?通常,如何仅获取有关分页帖子的当前页面的信息(使用“”进行分页)。

我根据这篇有用的博客文章制作了一个字数统计功能:http: //bacsoftwareconsulting.com/blog/index.php/wordpress-cat/how-to-display-word-count-of-wordpress-posts-without- a-plugin/但这让我得到了整个帖子的总字数,而不是仅当前页面的字数。

非常感谢您的帮助!

4

2 回答 2

0

您必须计算页面上所有帖子的字数。假设这是在循环内,您可以定义一个初始化为零的全局变量,然后使用您发布的链接中建议的方法计算每个帖子中显示的单词。

这条线上的东西 -

$word_count = 0;

if ( have_posts() ) : while ( have_posts() ) : the_post();
    global $word_count;
    $word_count += str_word_count(strip_tags($post->post_excerpt), 0, ' ');
endwhile;
endif;
于 2011-09-30T16:48:36.800 回答
0

用于$wp_query访问帖子的内容和当前页码,然后使用 PHP 将帖子的内容拆分为页面explode(),使用 去除内容中的所有 HTML 标记strip_tags(),因为它们不算作词,最后只计算当前的词页面与str_word_count().

function paginated_post_word_count() {
    global $wp_query;

    // $wp_query->post->post_content is only available during the loop
    if( empty( $wp_query->post ) )
        return;

    // Split the current post's content into an array with the content of each page as an item
    $post_pages = explode( "<!--nextpage-->", $wp_query->post->post_content );

    // Determine the current page; because the array $post_pages starts with index 0, but pages
    // start with 1, we need to subtract 1
    $current_page = ( isset( $wp_query->query_vars['page'] ) ? $wp_query->query_vars['page'] : 1 ) - 1;

    // Count the words of the current post
    $word_count = str_word_count( strip_tags( $post_pages[$current_page] ) );

    return $word_count;

}
于 2011-09-30T17:35:51.480 回答