做网站的都或多或少动那么一点SEO的知识,在发文章的时候对于站外链接都想加上一个nofollow的属性,以防止本站的权重不流失,手动给每个链接增加nofollow有些费事,于是乎就想到了用PHP代码自动把非本站网址的链接加上nofollow属性,今天分享的这个PHP代码就是这个用处,你只需要把下面代码复制粘贴到指定位置后,你就不用担心每次都手动给文章内容里的站外链接添加nofollow属性了;链接添加nofollow属性不易过多,适当才好,这个还是站长自己把握吧,有需要的就从下方把代码复制去吧。 将下面代码复制到module.php文件里去
<?php
function sl_wl($log_content,$domain){
preg_match_all('/href="(.*?)"/', $log_content, $matches);
if ($matches) {
foreach ($matches[1] as $val) {
if (strpos($val, $_SERVER['HTTP_HOST']) === false) {
$log_content = str_replace('href="'.$val.'"', 'href="'.$val.'" rel="external nofollow" ', $log_content);
}else{return $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;
}?>
将<?php echo sl_wl($log_content,BLOG_URL);?>下面代码复制到echo_log.php、page.php里替换<?php echo $log_content; ?>
也可以把外链本地化(ps:如果不懂,请直接使用上面的方法即可,本方法为本人自己使用)
第二步:把上面的代码稍稍修改一下,具体如下
<?php
function sl_wl($log_content,$domain){
preg_match_all('/href="(.*?)"/', $log_content, $matches);
if ($matches) {
foreach ($matches[1] as $val) {
if (strpos($val,$_SERVER['HTTP_HOST']) === false) {
$log_content = str_replace('href="'.$val.'"', 'href="'.BLOG_URL.'go/?url='.$val.'"', $log_content);
}else{return $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="'.BLOG_URL.'go/?url='.$val.'"', $log_content);
}}}
return $log_content;
}?>
历史资源提醒--必看
该页面资源/教程来自原魔趣吧历史资源转移,因发布历史久远,部分资源/教程可能已失效或无法在最新版程序中安装使用!DZ资源建议在Discuz3.4及以下版本使用,PHP版本建议5.6。资源仅提供做代码研究学习使用!
因改版,部分贴内链接将无法正常跳转,如链接失效或未正常跳转,请利用站内搜索功能搜索资源名称获取对应资源!