让Typecho文章内的超链接新窗口打开

2015-01-25 15:32小小哆PHPDev评论(0)

自从换了Typecho就爱上了Markdown语法,简单的语法让文章排版更简洁。

但最近发现如果在文章里加上超链接,点击链接会直接从当前窗口打开,这样可能导致点击文章中的链接进去查看完内容,又要返回来,很麻烦!

让超链接新窗口打开,其实也就下面这句html代码:

<a href="http://www.xsd.me" target="_blank">极客小哆</a>

也就是多了这段“target="_blank"”。

要想让Typecho的文章中链接加上“_blank”,也有很多种方法,比如通过jQuery在网页搜索<a>标签,为其添加新窗口属性。但个人这样感觉不好。

下面这种方式是直接修改Typecho程序源码,来实现:

\var\CommonMark\HtmlRenderer.php 的104行,有以下一段代码:

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);
}

return $this->inTags('a', $attrs, $this->renderInlines($inline->getAttribute('label')));

在return前加上下面这段代码:

$attrs['target'] = '_blank'; // 给链接增加_blank属性

这样就轻松搞定了!

上一篇 WKWebView的新特性与使用iOS开发中统计Xcode工程的代码行数 下一篇
评论 0
由于之前使用多说插件出现问题,导致以前的评论丢失,在此深表歉意!

站点统计

  • 建站日期:2014-12-06
  • 最后更新:2016-04-26
  • 运行时间:1906 天
  • 文章数量:46 篇