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

知更鸟
知更鸟
知更鸟
1655
文章
6940
评论
2019年10月19日22:52:49172.1K5

显示文章字数和阅读时间,这功能有什么用呢,我也不知道,不过有用户说人家有我们能不能也加一个,那就加呗,就有这篇为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(); ?>

源代码不知出处。

很早的一篇相关文章:为WordPress添加文章字数统计 | 知更鸟

 

 

weinxin
版权声明
本站原创文章转载请注明文章出处
为WordPress上下篇文章链接添加缩略图 WordPress

为WordPress上下篇文章链接添加缩略图

大部分WordPress主题都会在正文下面添加上下篇文章的链接,可以通过下面的代码给这个链接再加个缩略图,让其更醒目。 为WordPress上下篇文章链接添加缩略图 将下面代码添加到正文模板文件的适当...
无需输入密码的WordPress登录表单 WordPress

无需输入密码的WordPress登录表单

如果想在WordPress主题中添加一个不需要输入密码,仅输入用户名或电子邮件即可登录的表单,可以用下面的方法实现。 无需输入密码的WordPress登录表单 复制以下代码,粘贴到要显示表单的位置 &...
WordPress面包屑导航代码 WordPress

WordPress面包屑导航代码

转载分享一段WordPress面包屑导航代码,支持自定义帖子类型、自定义分类,但貌似在分类归档页面不能显示父子分类层级有点遗憾。 WordPress面包屑导航代码 将代码添加到当前主题函数模板func...
在 WordPress 文章正文开头和末尾分别添加固定内容 WordPress

在 WordPress 文章正文开头和末尾分别添加固定内容

在不修改主题正文模板文件的情况下,想在正文开头和末尾添加固定内容,或者在已发表的文章中添加固定内容又不想重新编辑文章,可以通过下面的代码实现。 在正文开头和末尾分别添加固定内容 会用到过滤器钩子add...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论:17   其中:访客  17   博主  0
    • 诗梦 诗梦 2

      哈哈哈哈哈啊

      • rex rex 0

        ”不过有用户说人家有我们能不能也加一个“,看完笑出声 :mrgreen:

        • 仙踪小栈 仙踪小栈 3

          鸟哥也有皮的时候 :mrgreen:

          • 励志语录网 励志语录网 6

            感觉没啥用

              • 123 123 4

                @ 励志语录网 某种程度上还是有用的,比如有些人要看,看完需要十几分钟,直接不看了

                  • 励志语录网 励志语录网 6

                    @ 123 额,那有时间看那些,找资料,直接切入主题,没有直接X :evil:

                • MAY的SEO博客 MAY的SEO博客 3

                  什么都难不倒鸟叔 :mrgreen:

                  • 枫行者 枫行者 2

                    这个功能挺好的啊,整合到主题里吧,等下次主题更新

                    • maqingxi maqingxi 5

                      如果是长篇的文章可能有个作用,像技术类文章一眼望到底的,就免了吧。

                      • 八爪鱼 八爪鱼 5

                        这种加了也没啥用,影响性能 :roll:

                        • 腾蛙 腾蛙 4

                          大神就是厉害