石家庄做网站,石家庄网站优化,石家庄网络推广,石家庄网络公司
当前位置:主页 > 新闻资讯 > 技术笔记 >

为WordPress主题添加文章字数和阅读时间

发表日期:2020-03-01 15:59文章编辑:WordPress教程浏览次数: 标签: WordPress|技术笔记|    

显示文章字数和阅读时间,这功能有什么用呢,我也不知道,不过有用户说人家有我们能不能也加一个,那就加呗,就有这篇为WordPress主题添加文章字数和阅读时间。
 
 
具体代码这里也分享一下:
文章字数统计
// 字数统计
function zm_count_words ($text) {
global $post;
if ( '' == $text ) {
$text = $post->post_content;
if (mb_strlen($output, 'UTF-8') < mb_strlen($text, 'UTF-8')) $output .= '<span class="word-count">共' . mb_strlen(preg_replace('/\s/','',html_entity_decode(strip_tags($post->post_content))),'UTF-8') .'字</span>';
return $output;
}
}
代码添加到当前主题函数模板 functions.php 中。
 
文章阅读时间
// 阅读时间
function zm_get_reading_time($content) {
$zm_format = '<span class="reading-time">阅读时间%min%分%sec%秒</span>';
$zm_chars_per_minute = 300; // 估算1分种阅读字数
 
$zm_format = str_replace('%num%', $zm_chars_per_minute, $zm_format);
$words = mb_strlen(preg_replace('/\s/','',html_entity_decode(strip_tags($content))),'UTF-8');
 
$minutes = floor($words / $zm_chars_per_minute);
$seconds = floor($words % $zm_chars_per_minute / ($zm_chars_per_minute / 60));
return str_replace('%sec%', $seconds, str_replace('%min%', $minutes, $zm_format));
}
 
function zm_reading_time() {
echo zm_get_reading_time(get_the_content());
}
代码添加到当前主题函数模板 functions.php 中。
 
调用文章字数和阅读时间代码
显示文章字数代码:
 
<?php echo zm_count_words($text); ?>
显示阅读时间代码:
 
<?php zm_reading_time(); ?>
将上述调用代码加到当前主题正文模板的适当位置即可。
 
不过字数统计和阅读时间不是很精确,特别是阅读时间,更是扯淡,默认是按CCTV广播员语速定的。
 
写完这篇文章,发现网上有更简洁的代码,区别是上面的代码精确到秒,下面的代码只估算到分。
 
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/300); // 修改数字300调整时间
$output .= '本文共计' . $text_num . '个字,预计阅读时长' . $read_time  . '分钟。';
return $output;
}
调用代码:
 
<?php echo count_words_read_time(); ?>
源代码不知出处。

如没特殊注明,文章均来自网络!转载请注明来自:https://www.yousouke.com/News/jsbj/11371.html

网站设计案例推荐

热门新闻

DEDECMS提示Fatal error错误

Nginx的Gzip压缩配置

织梦DedeCMS定时自动生成首页HTML的实现方法

IIS7下js文件启用Gzip后却不压缩的解决方法

dede织梦教程:列表页、文章页调用所有顶级栏目文章的方法

WordPress 集成百度 Sitemap 实时推送代码

织梦DedeCMS定时自动生成首页HTML的实现方法

WORDPRESS文章中微信打赏功能的2种实现方法

相关新闻

WordPress多站点不支持timthumb.php解决方法

Dedecms如何显示文章数量的方法

dede出现search.php on line 44 search.php报错

dedecms大量删除文章后,列表页显示错误修复办法

DedeCMS最新文章、相关文章、推荐文章、热点文章、头条

织梦Dedecms tag标签长度限制的修改

推荐新闻

织梦CMS文章模型整合下载功能,可判断点数,会员组等下载权限

帝国cms怎么实现页面自动生成html

帝国cms如何在tags列表页获取当前tag的ID方法

织梦DEDECMS教程:添加RSS订阅功能

dede简略标题调用标签

正确配置 WordPress 邮件SMTP

织梦DedeCMS实现{dede:channel}标签增加数字序号的方法

IIS7下js文件启用Gzip后却不压缩的解决方法

帝国cms灵动标签调用字母所属的信息