帝国cms文章关键字内链被拆分是帝国cms系统在网站内链关键字设置上一直被站长所诟病的地方。具体体现为:
比如网站设置的关键字有:星空、站长网、星空站长网
现在我们想要设置替换的关键字是星空站长网,但是实际情况是替换的关键字是:”星空“这个关键字而已。那么我们如何解决内链关键字被拆分的问题呢?
1、路径:/e/class/functions.php
2、替换下面的找到//替换关键字、其中的if(STR_IREPLACE)判断,关键的是:/i替换为(?!([^<]*>)|([^<]*</a>))/i
这里提供了替换代码
if(STR_IREPLACE)
{
$newstext=empty($public_r[repkeynum])?str_ireplace($r[keyname],\'<a href=\'.$r[keyurl].\' tARget=_blank class=infotextkey>\'.$r[keyname].\'</a>\',$newstext):preg_replace(\'/\'.$r[keyname].\'(?!([^<]*>)|([^<]*</a>))/i\',\'<a href=\'.$r[keyurl].\' target=_blank class=infotextkey>\'.$r[keyname].\'</a>\',$newstext,$public_r[repkeynum]);
}
else
{
$newstext=empty($public_r[repkeynum])?str_replace($r[keyname],\'<a href=\'.$r[keyurl].\' target=_blank class=infotextkey>\'.$r[keyname].\'</a>\',$newstext):preg_replace(\'/\'.$r[keyname].\'(?!([^<]*>)|([^<]*</a>))/i\',\'<a href=\'.$r[keyurl].\' target=_blank class=infotextkey>\'.$r[keyname].\'</a>\',$newstext,$public_r[repkeynum]);
}
}
设置完成,在测试是不是已经完成了关键字被拆分的问题了。
进一步延展:已经修复内链关键词拆分!但是还是有一个问题,就是如果一篇文章,出现多个关键字,如何根据网站关键词长短优先级排序,也就是长的关键字先替换,短的不替换
比如网站关键字有:星空、站长网、星空站长网
文章首段:星空站长网是一个专注分享网站设计,帝国cms模板二次开发的网站
我们如何做到替换的关键字是“星空站长网”,而不是“星空”,但是实际情况是帝国cms内链关键字替换是以谁先出现,替换谁的原则。
这就需要考虑关键词长短优先级排序,站在SEO角度,自然是长的关键字先排序替,短的不替换。
然而帝国cms在内链关键字上,除了关键字拆分,同时在长度排序上也没有做出定义。那么我们如何解决呢?
下一篇我们会探讨《帝国cms关键词自动内链和关键词长短优先级排序问题的解决方法》
1. 资源都是经过站长或作者收集测试修改后发布分享。如若转载请在文内以超链形式注明狐狸库文章出处,谢谢合作!
2. 本站除原创内容,其余所有内容均收集自互联网,仅限用于学习和研究目的,本站不对其内容的合法性承担任何责任。如有版权内容,请通知我们或作者删除,其版权均归原作者所有,本站虽力求保存原有版权信息,但因众多资源经多次转载,已无法确定其真实来源,或已将原有信息丢失,所以敬请原作者谅解!
3. 本站用户所发布的一切资源内容不代表本站立场,并不代表本站赞同其观点和对其真实性负责,若您对本站所载资源作品版权归属存有异议,请留言附说明联系邮箱,我们将在第一时间予以处理 ,同时向您表示歉意!为尊重作者版权,请购买原版作品,支持您喜欢的作者,谢谢!
4. 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客如有发现请立即向站长举报;本站资源文件大多存储在云盘,如发现链接或图片失效,请联系作者或站长及时更新。
请登录后查看评论内容