鹿泽鹿泽  2024-06-17 13:40:54 鹿泽笔记 隐藏边栏  0 

众所周知,给文章的外链添加nofollow 属性,可以有效防止垃圾链接对本站权重的传递。在网上找了许多给 typecho 文章添加nofollow和新窗口打开的方法,99%都是typecho 1.0版本之前的方法。对于1.1版本的typecho并不适用。于是乎自己动手改了点代码,问题解决了。

什么是nofollow?

nofollow标签是由谷歌领头创新的一个 “反垃圾链接” 的标签,并被百度等各大搜索引擎广泛支持,引用nofollow标签的目的是:用于指示搜索引擎不要追踪(即抓取)网页上的带有nofollow属性的任何出站链接,以减少垃圾链接的分散网站权重。

新窗口打开有什么好处?

当外链使用_blank 属性(即新窗口打开)时,并不会关闭自己网站的标签,这样可以有效防止流量的流失,并且延长用户在网站的停留时间,对网站seo优化大有好处。

具体步骤:

打开typecho跟目录下的var/HyperDown.php文件,找到第386行,如以下代码:

// link
$text = preg_replace_callback("/\[((?:[^\]]|\\\\\]|\\\\\[)+?)\]\(((?:[^\)]|\\\\\)|\\\\\()+?)\)/",
function ($matches) use ($self) {
$escaped = $self->parseInline(
$self->escapeBracket($matches[1]),  '',  false, false);
$url = $self->escapeBracket($matches[2]);
$url = $self->cleanUrl($url);
return $self->makeHolder("<a href=\"{$url}\">{$escaped}</a>");
},
$text
);

将代码中的:

return $self->makeHolder("<a href=\"{$url}\">{$escaped}</a>");

替换为:

if (strstr($url,'//www.bailuze.com') == false ) {
return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\" rel=\"nofollow\">{$escaped}</a>");
} else {
return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\">{$escaped}</a>");
}
1、文章版权归作者所有,未经允许请勿转载。
2、本站所有文章,如无特殊说明或标注,均为本站原创发布。任何在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们邮箱:526009505@qq.com进行处理。
3、咨询请联系QQ:526009505