wordpress5.3主题开发第十一课:显示文章的浏览次数

wordpress5.3显示某篇文章时,本身并没有统计文章点击次数的功能。需要开发人员自己实现或者使用第三方插件实现。

wordpress5.3主题开发第十一课:显示文章的浏览次数_第1张图片

非插件统计文章浏览次数

在主题的 functions.php文件的最后一个 ?> 前面添加下面的代码:

/* 记录文章访问计数 */
function record_visitors()
{
    if (is_singular())
    {
        global $post;
        $post_ID = $post->ID;
       
        if($post_ID)
        {
            $post_views = (int)get_post_meta($post_ID, 'views', true);
            if(!update_post_meta($post_ID, 'views', ($post_views+1)))
            {
                add_post_meta($post_ID, 'views', 1, true);
            }
        }
    }
}
add_action('wp_head', 'record_visitors');

/// 函数名称:post_views
/// 函数作用:取得文章的阅读次数
function post_views($before = '(点击 ', $after = ' 次)', $echo = 1)
{
    global $post;
    $post_ID = $post->ID;
    $views = (int)get_post_meta($post_ID, 'views', true);
    if ($echo) echo $before, number_format($views), $after;
    else return $views;
}

代码分析:上面的代码中使用get_post_meta()和add_post_meta()函数

所有发布的文章和页面都是存储在wp_posts数据表中,该表没有哪个字段可以存放浏览次数

而get_post_meta()和add_post_meta()操作的数据表是:wp_postmeta数据表

wordpress5.3主题开发第十一课:显示文章的浏览次数_第2张图片

 

在需要显示该统计次数的地方使用下面的代码调用:

下面是single.php文件的参考代码



','');
        post_views('
点击量:', '
'); //显示 the_content(); endwhile; endif; $args = array( 'next_text' => '上一篇:'. '%title', 'prev_text' => '下一篇:'. '%title' ); the_post_navigation($args); ?>

 

使用插件实现统计文章浏览次数

搜索安装插件:WP-Postviews

在显示文章的地方,如

在下边随便一栏添加代码:浏览次数:
 

该插件可以设置显示次数的样式

wordpress5.3主题开发第十一课:显示文章的浏览次数_第3张图片

 

你可能感兴趣的:(wordpress)