代理加盟

2023全新代理计划,一站式模板建站,铜牌代理低至699元送终身VIP,独立代理后台,自营贴牌。

您现在的位置: 麦站网 > 站长学院 > 建站教程 >

PHP统计文章内容字符数

来源:本站原创 发布时间:2019-03-30 00:00:00热度:我要评论(1

        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>

转载请注明来源网址:https://www.mubanyun.com/news/1317.html

    发表评论

    评论列表(条)

       
      QQ在线咨询
      VIP限时特惠