正务库

Emlog自动给文章内站外超链接添加rel=

时间:2年前   游览量:325    标签: nbsp    quot    39    添加    链接   

SEOer一致认为内容中存在站外链接会导致该页面的权重流失,为了保住权重,通常的做法是给超链接添加rel=”nofollow”属性及属性值,对于经常在内容中添加站外链接的博主来说,手动添加rel=”nofollow”显然很不方便,最好的方法就是让网站识别内容里的站外链接,然后自动给其添加rel=”nofollow”,下面是emlog程序的实现方法。

把下面的代码添加到当前使用的主题的module.php文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php function content_nofollow($log_content, $domain){preg_match_all('/href="(.*?)"/', $log_content, $matches);if ($matches) {foreach ($matches[1] as $val) {if (strpos($val, $domain) === false) {$log_content = str_replace('href="' . $val . '"', 'href="' . $val . '" rel="external nofollow" ', $log_content);}}}preg_match_all('/src="(.*?)"/', $log_content, $matches);if ($matches) {foreach ($matches[1] as $val) {if (strpos($val, $domain) === false) {$log_content = str_replace('src="' . $val . '"', 'src="' . $val . '" rel="external nofollow" ', $log_content);}}}return $log_content;}?>

提示:不知道添加到哪里的,直接在module.php文件的最底部的 ?> 下一行添加。

在当前使用主题的echo_log.php文件中,找到代码:

1
<?php echo $log_content; ?>

替换为:

1
<?php echo content_nofollow($log_content,BLOG_URL);?>

保存文件即可。

PS:在emlog 5.3.x中测试成功。