众所周知,给文章的外链添加nofollow属性,可以有效防止垃圾链接对本站权重的稀释和伤害。在网上找了许多给typecho文章添加nofollow和新窗口打开的方法,99%都是typecho 1.0版本之前的方法。对于1.1版本的typecho并不适用。于是乎自己动手改了点代码,问题解决了。

typecho-auto-nofollow.jpg

本教程特点:针对外链,会有nofollow属性和新窗口打开,但是针对本站内链仅有新窗口打开。这样既可以防止外链稀释本站权重,又可以通过内链优化页面排名。

什么是nofollow?

nofollow标签是由谷歌领头创新的一个“反垃圾链接”的标签,并被百度、yahoo等各大搜索引擎广泛支持,引用nofollow标签的目的是:用于指示搜索引擎不要追踪(即抓取)网页上的带有nofollow属性的任何出站链接,以减少垃圾链接的分散网站权重。

新窗口打开有什么好处?

当外链使用_blank属性(即新窗口打开)时,并不会关闭自己网站的标签,这样可以有效防止流量的流失,并且延长用户在网站的停留时间,对网站seo优化大有好处!

具体步骤

打开typecho跟目录下的 var/HyperDown.php 文件,找到第386行,如以下代码:

  // 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.moewah.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>");
}

搞定。

新建文章测试一下,看看是不是有效果!


相关推荐

  1. Typecho 启用 Service Workers 浏览器缓存加速首屏访问
  2. TpCache:为 Typecho 配置 Redis 缓存加速(支持密码登录)
  3. 文章页面关键词布局的五大要点仍然有效!
  4. 网站配置 Vary:User-Agent 标头方法介绍
  5. 移动端适配方案解析,轻松提升手机页面排名!
  6. 减少网页相似度提升排名的网站SEO优化技巧
文章作者:喵斯基部落
原文地址:https://www.moewah.com/archives/1954.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。非商业转载及引用请注明出处(作者、原文链接),商业转载请联系作者获得授权。