> 백엔드 개발 > PHP 튜토리얼 > 给wordpress 增加干扰码防采集_PHP教程

给wordpress 增加干扰码防采集_PHP教程

WBOY
풀어 주다: 2016-07-21 14:57:27
원래의
1988명이 탐색했습니다.

打开 wp-includes下的post-template.php

先将代码加到 post-template.php 第一行

以下为引用的内容:
function RndString($body)
{
//最大间隔距离(如果在检测不到p标记的情况下,加入混淆字串的最大间隔距离)
$maxpos = 1024;
//font 的字体颜色
$fontColor = “#FFFFFF”;
//div span p 标记的随机样式
$st1 = chr(mt_rand(ord(”A”),ord(”Z”))).chr(mt_rand(ord(”a”),ord(”z”))).chr(mt_rand(ord(”a”),ord(”z”))).mt_rand(100,999);
$st2 = chr(mt_rand(ord(”A”),ord(”Z”))).chr(mt_rand(ord(”a”),ord(”z”))).chr(mt_rand(ord(”a”),ord(”z”))).mt_rand(100,999);
$st3 = chr(mt_rand(ord(”A”),ord(”Z”))).chr(mt_rand(ord(”a”),ord(”z”))).chr(mt_rand(ord(”a”),ord(”z”))).mt_rand(100,999);
$st4 = chr(mt_rand(ord(”A”),ord(”Z”))).chr(mt_rand(ord(”a”),ord(”z”))).chr(mt_rand(ord(”a”),ord(”z”))).mt_rand(100,999);
$rndstyle[1]["value"] = “.{$st1} { display:none; }”;
$rndstyle[1]["name"] = $st1;
$rndstyle[2]["value"] = “.{$st2} { display:none; }”;
$rndstyle[2]["name"] = $st2;
$rndstyle[3]["value"] = “.{$st3} { display:none; }”;
$rndstyle[3]["name"] = $st3;
$rndstyle[4]["value"] = “.{$st4} { display:none; }”;
$rndstyle[4]["name"] = $st4;
$mdd = mt_rand(1,4);
//以后内容如果你不懂其含义,请不要改动
//—————————————————
$rndstyleValue = $rndstyle[$mdd]["value"];
$rndstyleName = $rndstyle[$mdd]["name"];
$reString = “ “;
//附机标记
$rndem[1] = “font”;
$rndem[2] = “div”;
$rndem[3] = “span”;
$rndem[4] = “p”;
//读取字符串数据
$fp = fopen(dirname(__FILE__).”/RndString.php”,”r”);
$start = 0;
$totalitem = 0;
while(!feof($fp)){
$v = trim(fgets($fp,128));
if($start==1){
if(ereg(”#end#”,$v)) break;
if($v!=”"{ $totalitem++; $rndstring[$totalitem] = ereg_replace(”#,”,”",$v); }
}
if(ereg(”#start#”,$v)){ $start = 1; }
}
fclose($fp);
//处理要防采集的字段
$bodylen = strlen($body) - 1;
$prepos = 0;
for($i=0;$iif($i+2 >= $bodylen || $ielse{
@$ntag = strtolower($body[$i].$body[$i+1].$body[$i+2]);
if($ntag==”” || ($ntag==”
$maxpos) ){
$dd = mt_rand(1,4);
$emname = $rndem[$dd];
$dd = mt_rand(1,$totalitem);
$rnstr = $rndstring[$dd];
if($emname!=”font”) $rnstr = ” $rnstr$emname> “;
else $rnstr = ” $rnstr “;
$reString .= $rnstr.$body[$i];
$prepos = $i;
}
else $reString .= $body[$i];
}
}
unset($body);
return $reString;
}//函数结束


查找


以下为引用的内容:
function the_content(



将这段代码


以下为引用的内容:
function the_content($more_link_text = “(more…)”, $stripteaser = 0, $more_file = “”) {
$content = get_the_content($more_link_text, $stripteaser, $more_file);
$content = apply_filters(”the_content”, $content);
$content = str_replace(”]]>”, “]]>”, $content);
echo $content;
}



改成


以下为引用的内容:
function the_content($more_link_text = “(more…)”, $stripteaser = 0, $more_file = “”) {
$content = get_the_content($more_link_text, $stripteaser, $more_file);
$content = apply_filters(”the_content”, $content);
$content = str_replace(”]]>”, “]]>”, $content);
$content = RndString($content);
echo $content;
}


注意,就多了行 $content = RndString($content);

上传附件中的RndString.php 文件到wp-includes/下


附件: 点这里下载

原文地址:http://www.mylb.net.cn/2008/08/608.html

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/364026.htmlTechArticle打开 wp-includes下的post-template.php 先将代码加到 post-template.php 第一行 以下为引用的内容: function RndString($body) { //最大间隔距离(如果在检测不...
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿