织梦dedecms实现文章字数统计

织梦dedecms实现文章字数统计

织梦系统默认是没有文章字数统计功能的,但最近本屌的一个范文站出现很多带XX字的搜索词(eg:实习报告范文5000字),就想着在标题下方加个文章字数显示,下面来看看如何实现。

找到文件夹include/helpers/中的extent.helper.php文件,把下面代码扔到文件最下方(不用修改utf8编码)

// 统计文章字数
function strlen_gbk($str) {
    $i = 0;
    $count = 0;
    $str = Html2text($str);
    $len = strlen($str);
    while ($i < $len) {
        $chr = ord($str[$i]);
        $count++;
        $i++;
        if ($i >= $len) {
            break;
        }
        if ($chr & 0x80) {
            $chr <<= 1;
            while ($chr & 0x80) {
                $i++;
                $chr <<= 1;
            }
        }
    }
    return $count;
}

最后在文章模板中用以下代码输出

<!-- 输出代码 -->
{dede:field.body function='strlen_utf8(@me)'/}

<!-- 实例应用 -->
<span> 字数:{dede:field.body function='strlen_utf8(@me)'/} 字 </span>

最后效果

织梦dedecms文章字数统计
PS:在统计字符的时候可能把空格之类的也统计进去了,字数会偏多一点,不影响使用~

最后修改:
赞赏支持
最大的开心,莫过于你请我吃辣条

已有 9 条评论

  1. skying skying 32天前

    写入extend.helper.php后台栏目管理就成空白,没有文章列表,前台文章是正常显示字数的,有什么办法解决不

    1. SEOGO运营狗 SEOGO运营狗勃主 16天前

      把上面代码的utf8改成gbk,应该可以解决

  2. 老王 老王 36天前

    老版本的可以正显示统计,响应式认gbk,html5就不买账了都,都折腾大半个月了,找不到原因

    1. SEOGO运营狗 SEOGO运营狗勃主 35天前

      程序是不是做个二次开发,我自己用是没出现问题的

      1. skying skying 32天前

        是没问题,但有个小问题,就是// 统计文章字数
        function strlen_utf8($str) {
        $i = 0;
        $count = 0;
        $str = Html2text($str);
        $len = strlen($str);
        while ($i < $len) {
        $chr = ord($str[$i]);
        $count++;
        $i++;
        if ($i >= $len) {
        break;
        }
        if ($chr & 0x80) {
        $chr

  3. 老王 老王 36天前

    文章内容模板添加了那句话就(500)无法访问

    1. SEOGO运营狗 SEOGO运营狗勃主 16天前

      把上面代码的utf8改成gbk,应该可以解决

  4. Molerose Molerose 141天前

    我转啦~ 哈哈

    1. SEOGO运营狗 SEOGO运营狗勃主 141天前

      欢迎拖走