首先我们先记录404的链接。
$ua = $_SERVER['HTTP_USER_AGENT'];
//WordPress 实现自动记录死链地址(防重复)
if(is_404() && strpos($ua, 'Baiduspider')!== false
||strpos($ua, 'Sogou') !== false
||strpos($ua, 'YisouSpider') !== false
||strpos($ua, 'Bytespider') !== false
||strpos($ua, 'bingbot') !== false
||strpos($ua, '360Spider')!== false
||strpos($ua, 'Googlebot')!== false ){
$file = @file("deadlinks.txt");//deadlinks.txt
$check = true;
if(is_array($file) && !empty($file))
foreach($file as &$f){
if($f == home_url($_SERVER['REQUEST_URI'])."\n")
$check = false;
}
if($check){
$fp = fopen("deadlinks.txt","a");//deadlinks.txt 就是在网站根目录的记录死链的文件
flock ($fp, LOCK_EX) ;
fwrite ($fp, home_url($_SERVER['REQUEST_URI'])."\n");
flock ($fp, LOCK_UN);
fclose ($fp);
}
}
找到当前主题的404.php文件,把文本添加进去即可。
wordpress中文标签分类404
解决这个问题需要修改源文件,请大家在修改前先备份(简单说就是复制一份放在那里在修改!),其实很简单只要注释掉一行代码就行!
1.FTP登录到网站目录找到wp-include文件夹并打开,找到class-wp.php文件,下载到本地修改或者在线编辑都行;
2.对class-wp.php文件进行如下修改即可完美解决。
153 行:
$pathinfo = isset( $_SERVER['PATH_INFO'] ) ? $_SERVER['PATH_INFO'] : '';
修改为:
$pathinfo
= isset(
$_SERVER
[
'PATH_INFO'
] ) ? mb_convert_encoding(
$_SERVER
[
'PATH_INFO'
],
'utf-8'
,
'GBK'
) :
''
;
157 行:
list( $req_uri ) =
explode
(
'?'
,
$_SERVER
[
'REQUEST_URI'
] );
修改为:
list( $req_uri ) =
explode
(
'?'
, mb_convert_encoding(
$_SERVER
[
'REQUEST_URI'
],
'utf-8'
,
'GBK'
) );
再罗嗦一句,大家在修改代码的时候一定要做好标记,方便你想改回去的时候不用再四处查找咯!
3、至此整个修改完成,保存文件或者是上传覆盖!
评论前必须登录!
注册