帝国cms关键词长短优先级排序先替换较长的词解决方法

帝国cms内容关键字替换对于绝大多数没有php相关经验的站长朋友就是一个大坑,为什么这么说呢?

主要原因有两点:

1、文章内链关键字被拆分

具体实例和解决办法看文章:帝国cms文章内链关键字被拆分的解决方案

2、内链关键字谁短谁先出现,就先替换谁的原则

比如网站关键字有:星空、站长网、星空站长网

文章首段:星空站长网是一个专注分享网站设计,帝国cms模板二次开发的个人博客网站

看到这里,我相信绝大多数网站都会想以:”星空站长网“作为这篇文章的内链锚文本关键字,但是帝国cms程序优先级以“星空”作为内链锚文本展示

那么,我们如何根据关键词长短优先级排序,也就是说,以星空站长网、站长网、星空这样的顺序进行排序,这里需要修改functions.php中的参数

3、内链关键字长度优先级的解决办法

找到路径:e/class/functions.php,搜索//替换关键字,找到

$where=" where cid='".$class_r[$classid]['keycid']."'";

替换

$where=" where cid='".$class_r[$classid]['keycid']."' ORDER BY L DESC";    

查找

$sql=$empire->query("select keyname,keyurl from {$dbtbpre}enewskey".$where);

替换

$sql=$empire->query("select keyname,keyurl,CHAR_LENGTH(keyname) AS L from {$dbtbpre}enewskey".$where);

解释说明一下:ORDER BY L DESC,根据关键字长短降序,而CHAR_LENGTH(keyname),则是mysql获取关键字字符串长度函数(CHAR_LENGTH)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索