有些朋友想控制防采集混淆字符串添加的次數,
dedeCMS後台沒提供這個功能,但是可以手工把這個控制功能加上。
修改方法:
修改文件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;
只加了幾行代碼。
為懶於動手的朋友准備了這個文件下載,拿去覆蓋就可以了,該內容只在5.7的版本測試了
*