且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

SEO优化技术:防止权重流失,对本站外部跳转链接的优化方案

更新时间:2021-10-25 17:19:20


在SEO优化过程中,网站权重通常被看作是我们网站在搜索引擎中的轻重地位,所以我们在网站优化过程中要尽可能的防止权重的流失,像文章中出现外部链接或锚文本,评论或留言中带超级链接或锚文本等等这些超级链接会直接造成网站权重的外流,那么今天的主题就是对这些超级链接或锚文本进行优化,防止权重向外流。

SEO优化技术:防止权重流失,对本站外部跳转链接的优化方案

我们经常在别人的博客或网站上看到一些类似http://www.XXXXXX.com/go.php?http://www.XXXXXX.com这样的链接形式,而这样的链接形式我们称之为外链跳转,其作用是保护我们网站权重的流失。实现这种跳转有两种方法:

第一种方法:

新建一个go.php文件,放置或上传至网站根目录下,go.php文件内容如下:

<?php header("location:".$_GET["url"]);?>

然后保存,外链跳转形式如:{本站地址}/go.php?url={外链地址},我们来测试一下,如:百度站长平台(注意看锚文本的链接形式),可以跳转到百度站长平台,那么第一个方法测试成功。

第二种方法:

同样,新建一个go.php文件,放置或上传至网站根目录下,go.php文件内容如下:

<?php header("location:".$_SERVER['QUERY_STRING']);?>

然后保存,外链跳转形式如:{本站地址}/go.php?url={外链地址},在添加外链的时候,只要给外链加上统一的外链前缀:http://网站地址/go.php? 即可。

以上方法都是需要手动在外链上添加跳转前缀,如:http://www.youhuabiji.com/go.php?http://baidu.com,像这样手动添加起来非常不方便,我们可以在当前主题根目录下的functions.php里强行重写外链链接格式,当然这些功能anylink插件可以轻松搞定,不喜欢麻烦的小伙伴们可以直接下载anylink插件使用,不过过多插件会直接影响网站访问速度,实现自动给外链添加跳转形式,可在functions.php文件中插入以下代码:

//给外部链接加上跳转

add_filter('the_content','the_content_nofollow',999);

function the_content_nofollow($content)

{

preg_match_all('//',$content,$matches);

if($matches && !is_page('about')){

foreach($matches[2] as $val){

if(strpos($val,'://')!==false && strpos($val,home_url())===false && !preg_match('/\.(jpg|jepg|png|ico|bmp|gif|tiff)/i',$val)){

$content=str_replace("href=\"$val\"", "href=\"".home_url()."/go.php?url=$val\" ",$content);

}

}

}

return $content;

}

有些小伙伴们会说这个外链跳转形式的跳转过程太简单了,有没有对go.php进行美化啊,下面分享go.php文件美化后的代码:

$t_url = preg_replace('/^url=(.*)$/i','$1',$_SERVER["QUERY_STRING"]); //这个支持

if(!empty($t_url)) {

preg_match('/(http|https):\/\//',$t_url,$matches);

if($matches){

$url=$t_url;

$title='页面加载中,请稍候...';

} else {

preg_match('/\./i',$t_url,$matche);

if($matche){

$url='http://'.$t_url;

$title='页面加载中,请稍候...';

} else {

$url='https://www.dianputg.com/';//换成自己的网址

$title='参数错误,正在返回首页...';

}

}

} else {

$title='参数缺失,正在返回首页...';

$url='https://www.dianputg.com/';//换成自己的网址

}

?>

页面加载中,请稍候...

当然,如果不喜欢这些跳转形式,可以把go.php文件保存为index.php,然后把index.php这个文件放在go文件夹里(如果网站根目录没有go这个文件夹,可自行新建一个),那么就可以实现如下跳转形式:http://www.dianputg.com/go/?url=http://www.dianputg.com。

如果想要让评论者链接也弄成这种跳转形式,只要在WordPress主题目录下functions.php中插入如下代码即可:

//评论者链接重定向

add_filter('get_comment_author_link', 'add_redirect_comment_link', 5);

add_filter('comment_text', 'add_redirect_comment_link', 99);

function add_redirect_comment_link($text = ''){

$text=str_replace('href="', 'href="'.get_option('home').'/go/?url=', $text);

return $text;

}