我们在使用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}");

替换成:
if (strstr($url,'//www.itbulu.com') == false ) {
return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\" rel=\"nofollow\">{$escaped}");
} else {
return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\">{$escaped}");
}

看到代码没有,我们更换成nofollow,以及_blank新窗口打开。
参考地址:https://www.moewah.com/archives/1954.html


扫描二维码,在手机上阅读!