帝国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)

注明:本文为星速云原创版权所有,禁止转载,一经发现将追究版权责任!

(0)
上一篇 2022年7月20日 上午4:25
下一篇 2022年7月20日 上午4:25

相关推荐

发表评论

登录后才能评论
问答社区 QQ客服
微信客服
微信客服
分享本页
返回顶部