怎么给WordPress文章标题添加字数统计和预计阅读时间?

作者 : 小编 发布时间: 2020-03-16 共1982个字,阅读需5分钟。 共290 人阅读

阿里云服务器低至¥89元/年 限时抢

阿里云服务器专享1折起 | 限时抢各种代金券

立即抢购

腾讯云服务器低至¥50元/年 限时抢

腾讯云服务器专享1折起 | 1核2g服务器免费拿

立即购买

最近在某些博客文章中看到有该篇文章的字数统计和预计阅读时间,小编认为这两个小数据还是比较人性化的,可以用读者用户在阅读前就大概知道这篇文章的长度及预计花费的时间,今天我们就来说一说如何为 WordPress 添加文章字数统计和预计阅读时间。

一、为 WordPress 添加文章字数统计

1、将以下代码加到主题的 functions.php 文件最后一个 ?> 的前面。

    //字数统计
    function count_words ($text) {
    global $post;
    if ( '' == $text ) {
       $text = $post->post_content;
       if (mb_strlen($output, 'UTF-8') < mb_strlen($text, 'UTF-8')) $output .= '本文共' . mb_strlen(preg_replace('/\s/','',html_entity_decode(strip_tags($post->post_content))),'UTF-8') . '个字';
       return $output;
    }
    }

2、再把调用统计代码加到自己认为适合的位置,如 single.php 文件的某个位置。

<?php echo count_words ($text); ?>
PS:经 小编 测试,以上代码统计中文和英文都没有问题,跟 Microsoft Word 统计的字数完全一致。
二、为 WordPress 添加预计阅读时间

将以下代码加到主题的 functions.php 文件最后一个 ?> 的前面,保存后即可在 WordPress 文章内容开始的地方自动显示“预计阅读时间 x 分钟”。

    function lmsim_read_time($content){
            $text = trim(strip_tags( get_the_content()));
            $text_num = mb_strlen($text, 'UTF-8');
            $read_time = ceil($text_num/400);
            $content = '<div class="read-time">预计阅读时间 <span>' . $read_time . '</span> 分钟</div>' . $content;
            return $content;
    }
    add_filter ( 'the_content', 'lmsim_read_time');

以上代码中第 4 行的数值 400,是根据百度出来的“一般人的阅读速度平均为(300~500)字/分钟”取中间值,如果你觉得 400 太慢可以自行修改,需要自定义样式的可以对 .read-time 在 css 里自定义样式。

Word 统计的字符数为 290 个

如上图所示,统计的字数为 290 个字符,跟 Word 统计的一样,而不亦乐乎统计的字数($text_num)比实际多 12 个。而且这个预计阅读时间只能出现在文章开头,所以 小编 决定把这两个代码结合在一起优化一下。

三、优化后的预计阅读时间代码

1、将以下代码加到主题的 functions.php 文件最后一个 ?> 的前面。

    //字数和预计阅读时间统计
    function count_words_read_time () {
    global $post;
       $text_num = mb_strlen(preg_replace('/\s/','',html_entity_decode(strip_tags($post->post_content))),'UTF-8');
       $read_time = ceil($text_num/400);
       $output .= '本文共' . $text_num . '个字,预计阅读时间需要' . $read_time  . '分钟。';
       return $output;
    }

其中,以上的 400 为阅读速度,可以更改。如只需要输出阅读时间或文章字数,只需要修改删除第 6 行某些代码即可,具体请自行 DIY 吧。

2、再把调用统计代码添加到 single.php 文件适合的位置即可。

抱歉,隐藏内容须成功 登录 后刷新可见!
四、预计阅读时间代码优化前后对比

经过 小编测试,当字数小于等于 400,也就是阅读时间小于等于 1 分钟时,本文两段统计的预计阅读时间都一样,都是 1 分钟。但是如果超过 400 时,就会有所偏差。比如把上文中的 290 个字符再粘贴 3 次达到 1160 个字符,那么第二点的预计阅读时间将为 4 分钟,而第三点优化后的代码则为 3 分钟。所以从数字上来看,优化后的代码统计的预计阅读时间更为精准。具体如下图所示:

注:以上方法可看本站演示!

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可联系站长QQ,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!!!!
5. 如有链接无法下载、失效或广告,请联系管理员处理!本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7.如遇到加密压缩包,默认解压密码为"www.xiaosonshu.com",如遇到无法解压的请联系管理员!
8.如遇到充值未到账,请联系管理员补发!管理员整天在线,未回复等等待!
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。
守望者软件开发工作室 » 怎么给WordPress文章标题添加字数统计和预计阅读时间?

发表评论

  • 23会员总数(位)
  • 143资源总数(个)
  • 0本周发布(个)
  • 0 今日发布(个)
  • 272稳定运行(天)

小松鼠资源网 XIAOSONSHU.COM 一个高级程序员模板开发平台!

立即查看 了解详情