我们在使用Typecho程序建站过程中,在编辑文章的时候如果希望引导外部的文章地址,那我们肯定是需要用到nofollow标签,这样不至于将本网站的权重被带跑。当然有些朋友做网站不介意这样的那就无所谓的,我们正常的更新网站就可以。不过我们在使用Typecho的时候默认的还是在当前窗口打开的,我们很多时候希望新窗口打开,那就需要手工设置。
有没有不需要每次手动设置Typecho 实现外部地址自动nofollow,以及新窗口打开的方法呢?省的每次有些时候会忘记掉,这里找到网上的一个办法,如果我们还有需要的话可以参考使用到。
找到 var/HyperDown.php
377-389行代码。
// 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.itbulu.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>");
}
看到代码没有,我们更换成nofollow,以及_blank新窗口打开。
参考地址:https://www.moewah.com/archives/1954.html