有些朋友想控制防采集混淆字符串添加的次数,织梦后台没提供这个功能,但是可以手工把这个控制功能加上。
修改方法:
修改文件include/downmix.inc.php 第60行开始
替换为:
//处理要防采集的字段
$bodylen = strlen($body) - 1;
$prepos = 0;
$rndtime = 1;//添加混淆字符串的次数 by mditu.com
$rndtimei = 0;
for($i=0;$i<=$bodylen;$i++)
{
if($i+2 >= $bodylen || $i<50 && $rndtimei < $rndtime)
{
$reString .= $body[$i];
}
else
{
$ntag = @strtolower($body[$i].$body[$i+1].$body[$i+2]);
if($ntag=='</p' || ($ntag=='<br' && $i-$prepos>$maxpos) )
{
if($rndtimei < $rndtime){ //次数控制 by mditu.com
$rndtimei++;
$dd = mt_rand(1,4);
$emname = $rndem[$dd];
$dd = mt_rand(1,$totalitem);
$rnstr = $rndstring[$dd];
if($emname!='font')
{
$rnstr = " <$emname class='$rndstyleName'>$rnstr</$emname> ";
}
else
{
$rnstr = " <font color='$fontColor'>$rnstr</font> ";
}
$reString .= $rnstr.$body[$i];
$prepos = $i;
}else
{
$reString .= $body[$i];
}
}
else
{
$reString .= $body[$i];
}
}
}
return $reString;
只加了几行代码。
为懒于动手的朋友准备了这个文件下载,拿去覆盖就可以了。(注意,此修改方法只在DEDE5.5中测试通过,5.6以其它版本未测试,估计应该能用)