位置:首页 > PHP > 干货整理 >

PHP实现文章自动添加内链功能

字号+ 作者:micloud 来源:www.seoalphas.com 2020-01-11 21:47 浏览量:2913

无论从用户体验或者网站优化的角度来考虑,网站文章实现自动加内链功能都是一件很爽的事。这里要加的内链,是指我们搜集好一些用户关注度比较高并且阅读体验良好的内容,自动加上链接引导过去,通常这一步需要编辑收到操作,如果能够实现自动化管理就事半功倍了。


1、简单粗暴的方式

一篇文章从设定好的关键词中按照记录好的优先顺序,依次添加三个,超过三个则自动停止操作。

$times = 3;     //最多只替换三个关键词   每次替换做上标记,达到三次后,替换结束
    $keywords =   一系列获得关键词的操作;
    $num = 0;        
    foreach ($keywords as $key=>$val){
        //$val['title']   //关键词
        if($num < $times){
            if(strpos($content,$val['title'])){ //先判断是否匹配到  如果匹配到进行添加超链接操作 同事替换次数+1
                $num++;var_dump($num);
                //进行替换操作
                $content = str_replace($val['title'],'<a href="'.$val['url'].'" target="_blank">'.$val['title'].'</a>',$content);
            }
        }
    }

上面的代码执行后,替换后的结果如图所示:

001.png

上述代码只是简单的做了当有多个待添加超链接的关键词满足条件的时候,现在个数为3,也就是说只给一篇文章中三个满足条件的关键词加上超链接,但是却没有限制满足条件的关键词要添加的次数,就出现了一个关键词超链接反复出现多次的情况。

if($num < $times){
   $pos = strpos($content,$val['title']);
   if($pos){ //先判断是否匹配到  如果匹配到进行添加超链接操作 同事替换次数+1
      $num++;
      //进行替换操作
      //$content = str_replace($val['title'],'<a href="'.$val['url'].'" target="_blank">'.$val['title'].'</a>',$content);
      $content = substr_replace($content, '<a href="'.$val['url'].'" target="_blank">'.$val['title'].'</a>', $pos, strlen($val['title']));
  }
}

对上面的代码稍加改进,满足条件的关键词超链接只能替换一次,效果如下图:

001.jpg

原来多次出现的关键词“白茶”超链接只出现了一次。

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • pc端常用电脑屏幕 ((响应式PC端媒体查询)电脑屏幕分辨率尺寸大全)

    pc端常用电脑屏幕 ((响应式PC端媒体查询)电脑屏幕分辨率尺寸大全)

    浏览次数:6171

  • PHPstorm  could not list the contents of folder 的解决方案

    PHPstorm could not list the contents of folder 的解决方案

    浏览次数:5813

  • PHP Header跳转并传递Post数据

    PHP Header跳转并传递Post数据

    浏览次数:5051

  • 阿里云云短信开发文档整理

    阿里云云短信开发文档整理

    浏览次数:4774

网友点评
评论区域