PHP统计文章内容字符数

作者: 本站原创  发布时间:  浏览:

        DedeCMS用编辑器编辑文章的时候,需要统计文章的功能。如果文章字数过少,容易被判断为低质量页面。建议各位写文章字数不低于500个中文字符,或1000个英文字符。绝大多数网站如本SEO博客都是中英文字符混合,所以需要单独计算中文和英文。

        蜘蛛抓取的是中文、英文、梳子字符,对HTML代码是过滤的。

模拟蜘蛛抓取

↑用站长工具的模拟蜘蛛抓取功能

        实现方法其实比较简单,稍微懂点PHP都能看得懂。先看看下面这个例子:

PHP统计字符

<?php
//字节统计函数
function countWords($str){
  echo (mb_strlen($str, 'utf8') + strlen($str))/2;
}
//使用方法:
$strdemo1='秀站网博客';
$strdemo2='http://www.vi86.com';
$strdemo3='秀站网博客http://www.vi86.com';
countWords($strdemo1);
echo "<br/>";
countWords($strdemo2);
echo "<br/>";
countWords($strdemo3);
?>

        运行结果:

8    //8个字节,也就是4个中文,每个中文占用两个字节
19   //19个字节,19个英文字符
27   //包括19个英文和4个中文

        这里注意到,模板里面会有许多HTML标签,这些标签会占用字符,但百度是不抓取HTML的。

PHP去除HTML

<?php
$str='<a href="http://www.vi586.com/">秀站网博客</a>';
$str=strip_tags($str);
echo $str;
?>

        运行结果:

秀站网博客

        看完这个例子,这样就明白应该怎么统计了。

DedeCMS统计文章字符功能

        打开/include/extend.func.php,在最后面增加代码如下

//字符数统计-by秀站网
function countWords($str){
  $str=strip_tags($str);
  $str=str_replace('&nbsp;','',$str);//过滤空格
  $str=(mb_strlen($str, 'utf8') + strlen($str))/2;
  return $str;
}

        一般统计的是文章body里面的文字,在对应的模板添加如下代码

<p>共{dede:field name='body' function='countWords(@me)'/}个字节</p>

上一篇:网站被复制被仿怎么办,如何向百度反馈?

下一篇:CKEditor去除HTML元素自动换行代码

相关文章

做一个企业网站大概需要多少钱

制作一个城市分站系统网站需要多少钱

国内网站需要备案吗

没有备案的网站能打开吗

没有备案的网站不能解析吗?

添加微信
添加微信,免费咨询

15205695834

新手指南支付购买售后服务关于我们版权合规
合肥秀站网络科技有限公司
Copyright 2002-2022 麦站 版权所有
皖ICP备12018676号 网站地图