Rumah > Tutorial CMS > WordTekan > teks badan

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

藏色散人
Lepaskan: 2019-10-21 11:32:51
ke hadapan
2290 orang telah melayarinya

显示文章字数和阅读时间,这功能有什么用呢,我也不知道,不过有用户说人家有我们能不能也加一个,那就加吧。下面由WordPress教程栏目给大家介绍为WordPress主题添加文章字数和阅读时间的方法。

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

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

具体代码这里也分享一下:

文章字数统计

// 字数统计
function zm_count_words ($text) {
global $post;
if ( '' == $text ) {
$text = $post->post_content;
if (mb_strlen($output, &#39;UTF-8&#39;) < mb_strlen($text, &#39;UTF-8&#39;)) $output .= &#39;<span class="word-count">共&#39; . mb_strlen(preg_replace(&#39;/\s/&#39;,&#39;&#39;,html_entity_decode(strip_tags($post->post_content))),&#39;UTF-8&#39;) .&#39;字</span>&#39;;
return $output;
}
}
Salin selepas log masuk

代码添加到当前主题函数模板 functions.php 中。

文章阅读时间

// 阅读时间
function zm_get_reading_time($content) {
$zm_format = &#39;<span class="reading-time">阅读时间%min%分%sec%秒</span>&#39;;
$zm_chars_per_minute = 300; // 估算1分种阅读字数
 
$zm_format = str_replace(&#39;%num%&#39;, $zm_chars_per_minute, $zm_format);
$words = mb_strlen(preg_replace(&#39;/\s/&#39;,&#39;&#39;,html_entity_decode(strip_tags($content))),&#39;UTF-8&#39;);
 
$minutes = floor($words / $zm_chars_per_minute);
$seconds = floor($words % $zm_chars_per_minute / ($zm_chars_per_minute / 60));
return str_replace(&#39;%sec%&#39;, $seconds, str_replace(&#39;%min%&#39;, $minutes, $zm_format));
}
 
function zm_reading_time() {
echo zm_get_reading_time(get_the_content());
}
Salin selepas log masuk

代码添加到当前主题函数模板 functions.php 中。

调用文章字数和阅读时间代码

显示文章字数代码:

<?php echo zm_count_words($text); ?>
Salin selepas log masuk

显示阅读时间代码:

<?php zm_reading_time(); ?>
Salin selepas log masuk

将上述调用代码加到当前主题正文模板的适当位置即可。

不过字数统计和阅读时间不是很精确,特别是阅读时间,更是扯淡,默认是按CCTV广播员语速定的。

写完这篇文章,发现网上有更简洁的代码,区别是上面的代码精确到秒,下面的代码只估算到分。

function count_words_read_time () {
global $post;
$text_num = mb_strlen(preg_replace(&#39;/\s/&#39;,&#39;&#39;,html_entity_decode(strip_tags($post->post_content))),&#39;UTF-8&#39;);
$read_time = ceil($text_num/300); // 修改数字300调整时间
$output .= &#39;本文共计&#39; . $text_num . &#39;个字,预计阅读时长&#39; . $read_time  . &#39;分钟。&#39;;
return $output;
}
Salin selepas log masuk

调用代码:

<?php echo count_words_read_time(); ?>
Salin selepas log masuk

Atas ialah kandungan terperinci 为WordPress主题添加文章字数和阅读时间. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:zmingcx.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!