关于SEO这点,网站内部有大量的外链会影响网站的权重,不利于SEO。

什么是“nofollow”?

​ “nofollow” 标签是Google、Yahoo和微软公司前几年一起提出的一个标签,链接加上这个标签后就不会被计算权值,搜索引擎支持nofollow属性,在很大程度上抑制博客或论坛的垃圾留言。对站长来说是一件大好事。

​ nofollow是HTML元标签(meta)的content属性和链接标签(a)的rel属性的一个值,告诉机器(爬虫)无需追踪目标页,为了对抗blogspam(博客垃圾留言信息),Google推荐使用nofollow,告诉搜索引擎爬虫无需抓取目标页,同时告诉搜索引擎无需将的当前页的Pagerank传递到目标页。但是如果你是通过sitemap直接提交该页面,爬虫还是会爬取,这里的nofollow只是当前页对目标页的一种态度,并不代表其他页对目标页的态度。

什么是“_blank”?

​ 为文章内的a标签添加target=“_blank”属性时,用户点击链接就会在浏览器的新一个窗口打开,这样可以防止浏览的流失,延长用户访问时间。

步骤

打开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,'//siteurl.com') == false ) {    //url后的内容替换为自己的域名
return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\" rel=\"nofollow\">{$escaped}</a>");
} else {
return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\">{$escaped}</a>");
}

修改之后的成品:

 // 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>");
                if (strstr($url,'//kaygb.top') == false ) {
                    return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\" rel=\"nofollow\">{$escaped}</a>");
                    } else {
                    return $self->makeHolder("<a href=\"{$url}\" target=\"_blank\">{$escaped}</a>");
                    }
            },
            $text
        );

然后可以新建文章测试一下。

最后修改:2020 年 01 月 05 日 11 : 51 AM
如果觉得我的文章对你有用,请随意赞赏