Typecho实现外部链接自动添加nofollow标签

从SEO角度考虑,我们会在外部的链接设置nofollow标签来降低权重的传递分离。这里,我们在typecho程序中如何实现呢?

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

$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.laozuo.org') == false ) {
return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\" rel=\"nofollow\">{$escaped}</a>");
} else {
return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\">{$escaped}</a>");
}

 


【AD】丽萨主机英国VPS推荐 英国原生IP双ISP家宅主机

【AD】美国洛杉矶/香港/日本VPS推荐,回程电信CN2 GIA线路,延迟低、稳定性高、免费备份_搬瓦工