文章内链的实现方法

飘逸的风14年前 (2012-11-19)程序6481

在很多的时候,我在浏览其他的网站发现文章中一写关键词都被加上了链接链向对应的页面,我就在想他们是怎么实现这个功能的?为什么这么做,这么做有什么好处?

 

当然有什么好处一看便知,无论是从访问者来说还是从网站放来说都是有益而无害的。对应访问者这样增加关联性阅读的便利,无需去找相关内容的入口,从网站方来说,这不仅增加了网站与访问者之间的粘性,同时也增加了站内的优化,百度等爬虫可以通过这些链接信息知道各个页面间的关联性及关系,在SEO上能得到有益于网站的好处。既然对应网站有好处何乐而不为呢?

 

很多页面都有几个关联链接,难道是网站编辑手动添加的链接吗?当然有的是编辑加的链接,但大部分是通过程序自动加的链接。

 

说了一堆的废话,下面说说要实现的效果:

1、同一篇文章中同一关键词出现多次的时候只给第一次出现的加链接。

2、一个关键词包含在另一个关键词中时,则只在包含的关键词加加链接,原因很简单,不能让一个链接包含在另一个链接中对吧

 

下面说说我初步实现的方法:

1、用程序批量生成关键词和链接对应的库或手动添加关键词和链接库(库可以用数组的格式以文件的形式存储)

2、在view页面输出内容时执行查找替换的操作。上代码吧

01 <?php
02 header("Content-Type:text/html; charset=utf-8");
03 $arr = array(
04     "私募基金" => "https://www.licai.so/Simu/",
05     "私募" => "https://www.licai.so/Simu/",
06     "信托" => "https://www.licai.so/Trust",
07     "信托产品" => "https://www.licai.so/Trust/product",
08     "私募产品" => "https://www.licai.so/Simu/productlist/",
09     "理财搜" => "https://www.licai.so/"
10 );
11 ksort($arr);  //对关键词排序,短词排在前面
12 $str = "这是我写一个关于私募基金和信托的测试字符串,我要从这个字符串中给相关的关键词产品、私募、信托加链接";
13 echo "原始字符串:" . $str . "<br/><br/>";
14 //遍历关键词库
15 foreach ($arr as $k => $v) {
16     //查找第一次出现的关键词并替换加上对应的链接
17     $str= preg_replace('/'.$k.'/','<a href="'.$v.'" target="_blank">' . $k . '</a>',$str,1);
18 }
19 echo $str;
20 ?>
原始字符串是:

1 这是我写一个关于私募基金和信托的测试字符串,我要从这个字符串中给相关的关键词产品、私募、信托加链接
替换完后是:
1 这是我写一个关于<a href="https://www.licai.so/Simu/" target="_blank">私募</a>基金和<a href="https://www.licai.so/Trust"target="_blank">信托</a>的测试字符串,我要从这个字符串中给相关的关键词产品、私募、信托加链接
文章来源:https://blog.51edm.org/post/72

相关文章

curl的一些玩意

最近在想是否可以打通各家微博,显然,新浪的没有什么难度,三下五除二就能够用curl撂倒。而腾讯就不太好做,各个登录入口都有图片验证,图片识别可就难度大了,可看某篇文章,看似也就是md5的问题,不需要图...

Javascript 正则表达式使用手册

一.正则表达式匹配常用语法 “+”字符:规定表达式字符出现一次或多次。 “*”字符:规定表达式字符出现零次或多次。 “?”字符:规定表达式字符出现零次或一次。 ^ 匹配的是字符的开头 ,匹配的...

emlog百度分享插件[提供下载]

emlog百度分享插件[提供下载]

emlog百度分享插件下载地址:bdshare.zip 百度分享概况: 引入社会化流量 用户浏览网站内容时产生的分享行为可以增加网站内容在腾讯空间、新浪微博和人人网等社会化网站的曝光机会...

Emlog常用日志列表页的判断

  Emlog 用得久了,emer 们就难免会折腾一下自己的模板,谁让 Emlog 这么简单实用呢?除了折腾外观及各种特效,当然还有实用的功能,日志列表页的判断应该就属于此类。我们可以根据日志列表页面...

ECShop设置模板的原理以及一些模板设置函数说明(个人观点)

ECShop设置模板的原理以及一些模板设置函数说明(个人观点) admin/includes/lib_template.php 一些函数及变量说明 $template_files...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。