Typecho让超链接默认新窗口打开


博文中添加链接如果没有写入"_blank"的话,链接是默认在当前窗口打开的,这样子你要继续看博文的话只能回退页面,非常不方便,此问题我遇上了,因此找了一些大佬分享的方法,谨此记录下来。

方法一:修改Typecho文件

在 varCommonMarkHtmlRenderer.php 的104行,是处理超级链接部分的代码,我们只要添加一行$attrs['target'] = '_blank';即可:

case CommonMark_Element_InlineElement::TYPE_LINK:
            $attrs['href'] = $this->escape($inline->getAttribute('destination'), true);
            if ($title = $inline->getAttribute('title')) {
                $attrs['title'] = $this->escape($title, true);
            }
    $attrs['target'] = '_blank'; #添加这一行代码
            return $this->inTags('a', $attrs, $this->renderInlines($inline->getAttribute('label')));

方法二:修改主题文件

在当前主题模板下Hrader.PHP文件的<head>标签中添加<base target="_blank"/>代码即可,如下图:

小结

以上方法可使超链接在新窗口打开,不过方法二每次更换主题模板的话,就需要去修改一次Header.php文件,而方法一只需要修改一次即可一劳永逸。

文 / 官仁 2019/01/12

声明:官仁有话说|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - Typecho让超链接默认新窗口打开


从来没有这样去喜欢一个女孩子,即便她说现在或将来都不会喜欢我,而我也不会这样放弃 —— 2019 在成都遇见了她