文章的字数统计和预计阅读时间,这两个小数据还是比较人性化的,可以用读者用户在阅读前就大概知道这篇文章的长度及预计花费的时间,那么如何为 WordPress 添加文章字数统计和预计阅读时间。
添加文章字数统计和预计阅读时间
将以下代码加到主题的 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 吧。
文章调用代码
把以下的调用统计代码添加到 single.php 文件适合的位置即可。
<?php echo count_words_read_time(); ?>
拓展阅读(ceil() 函数)
ceil() 函数向上舍入为最接近的整数。意思就是说返回不小于 x 的下一个整数,x 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。
例子:
- ceil(0.60),输出 1;
- ceil(0.4) ,输出 1;
- ceil(5),输出 5;
- ceil(5.1),输出 6;
- ceil (-5.1),输出 -5;
- ceil(-5.9),输出 -5;
统计阅读文章时间博客网站文章适用
给访客查看文章时自动开始统计阅读文章多少分多少秒的一个小功能。
将以下代码加入到WordPress主题目录中的“文章页:single.php”文件合适的位置。
Emlog应该是主题目录下的:echo_log.php文件合适位置
您阅读这篇文章共花了:</span> <span class="tingliu3" id="stime"></span></div>
<script language="JavaScript">var ss=0,mm=0,hh=0;function TimeGo(){ss++;if(ss>=60){mm+=1;ss=0}if(mm>=60){hh+=1;mm=0}ss_str=(ss<10?"0"+ss:ss);mm_str=(mm<10?"0"+mm:mm);tMsg=""+hh+"小时"+mm_str+"分"+ss_str+"秒";document.getElementById("stime").innerHTML=tMsg;setTimeout("TimeGo()",1000)}TimeGo();</script>
WordPress新
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);
//每分钟阅读400字
$img_arr = explode('<img',$post->post_content);
$imgcou = count($img_arr) == 0 ? count($img_arr) : (count($img_arr)-1);
$img_read_time = ceil($imgcou/40);
$output .= '本文共'.$imgcou.'张图片、' . $text_num . '个字,预计阅读时间需要' . ($read_time+$img_read_time) . '分钟';
return $output;
}
声明:本站文章原创有部分资源来源于网络,如无特殊说明或标注。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系 admin@liitk.com 进行删除处理!。
评论(0)