doyo系统自动根据设置关键字添加链接
2019-12-01 Umming doyocms 评论(0) 浏览(1784)
大家都知道现在cms对于seo来说有一个功能很重要就是在文章内容自动添加指定关键字链接,来达到文章内外链的效果,doyocms默认是没有这个功能的,下面我们就来告诉大家方法。
1.建立表dy_keywords
2.在系统类里面创建keywords的类 c_keywords
3.在后台系统的文件里面添加文档关键词的菜单
$this->leftmenu.= '<li><a href="?c=a_keywords" target="main">文档关键词管理</a><li>';
4.在后台系统的文件中创建a_keywords的控制器(目前只做了增删改查)
5.在后台系统的模板文件中创建keywords.html
更改前台控制器article.php
1.更改文章内容body
$a=keywordss(stripslashes($this->article['body']));
$this->article = array_merge($this->article,array('body'=>$a));
这两行代码可以放到 article.php的index方法里面 不知道放在哪里的话可以直接放在display上方
2.在functions.php中创建公共方法
function keywordss($str){ $key_array=syDB('keywords')->findAll('isshow=1'); $array_first = $key_array; $array_last = array(); foreach($array_first as $key=>$value){ $array_last[$key] = array('TFXS00' . $key, $value['name'], '<a target="_blank" href="' . $value['url'] . '" title="' . $value['name'] . '">' . $value['name'] . '</a>'); } $count = count($array_last); for($i=0;$i<$count;$i++){ for($j=$count-1;$j>$i;$j--){ //如果后一个元素长度大于前一个则调换位置 if(strlen($array_last[$j][1]) > strlen($array_last[$j-1][1])){ $tmp = $array_last[$j]; $array_last[$j] = $array_last[$j-1]; $array_last[$j-1] = $tmp; } } } $keys = $array_last; foreach($keys as $nkeys){ $str = str_ireplace($nkeys[1], $nkeys[0], $str); } foreach($keys as $nkeys){ $str = str_ireplace($nkeys[0], $nkeys[2], $str); } return $str; }
随便放在哪一行就行 注意不要放在别的方法中了
标签: doyocms
上一篇: doyocms自定义分页样式
下一篇: doyocms后台利用id添加相关产品
本文链接:https://www.umming.com/doyocms/177.html 百度已收录
声明:本站信息由网友自行发布或来源于网络,真实性、合法性由发布人负责,请仔细甄别!本站只为传递信息,我们不做任何双方证明,也不承担任何法律责任。文章内容若侵犯你的权益,请联系本站删除!
发表评论: