Typecho 文章外链设置跳转页面在新窗口打开

Typecho系统使用Markdown进行文字渲染输出,在Markdown语法下,是没有链接新窗口打开这个选项的,这里提供修改Typecho系统文件的方式实现文章外链在新窗口打开。

打开Typecho目录下的/var/HyperDown.php文件,找到相应的代码。

Typecho 链接代码

将第386行对应内容修改为:

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

也就是增加target=\"_blank\" rel=\"nofollow\"字段,这样外链就会自动在新窗口打开和添加nofollow标签了。

我们还可以优化一下,将外站的链接新窗口打开,本站链接不做处理,这样方便用户进行阅读,可以将上述代码修改成:

if (strstr($url,'//work.zilv.life') == false ) {
                return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\" 
                rel=\"nofollow\">{$escaped}</a>");
            } else {
                return $self->makeHolder("<a href=\"{$url}\">{$escaped}</a>");
}

这样就可以达成我们想要的效果了,如果还想优化一下跳转页面,可以在代码里面加上go跳转,将对应代码修改成:

return $self->makeHolder("<a href=\"/go/?url={$url}\" target=\"_blank\" 

然后在网站根目录新建一个go目录,里面建立index.php文件,具体的跳转代码网上很多,大家可以找自己喜欢的样式进行使用。