前两天,WordPress优化链接规范的客户都出现了问题,因为WordPress本身的固定链接全部由伪静态处理,会导致文章页面后面添加斜杠“/”和任意数字,仍然返回200状态和正常文章内容,可能会导致一些重复收录或者恶意使用,导致网站出现问题或者搜索引擎降级。
因为是WordPress本身就存在的问题,但不是很大的问题,所以可能大家都不太重视,因为我们在正常的WordPress网站搭建和应用推广过程中,基本上不可能手动给WordPress生成的URL链接添加任意数组或参数,所以对于网站优化来说,搜索引擎也不可能自动给链接添加斜线和参数,最多只是一些无效的动态参数。
无论从WordPress优化、网站安全、网站优化的角度来看,网站的URL都应该是唯一的,对于其他一些需要屏蔽的参数,代码如下:
//判断链接是否规范
$current_url = home_url(add_query_arg(array()));
$pid = url_to_postid($current_url);
$link = get_permalink($pid);
if($current_url!=$link){
global $wp_query;
$wp_query->set_404();
status_header(404);
nocache_headers();
include( get_query_template( '404' ) );
die();
}