织梦 CMS 中的关键词替换可以帮助我们为指定关键词添加上链接,比如说我们可以进行替换,当文章中出现中名论坛是自动为其添加上URL地址,即 <a href="www.zm30.com"> 中名论坛 </a> 。
但是织梦内容关键词替换功能存在一个 bug ,如果有两个关键词,中名和中名论坛,进行关键词替换之后链接就变成 <a href="www.zm30.com"><a href="www.zm30.com">中名</a>论坛</a>。 这样无论是对用户体验还是网站优化都不友好。 针对这种情况,我们可以先替换较短的关键词,然后在替换较长的关键词,短关键词添加链接之后,长关键词被分割开来而无法被识别。 找到 include/arc.archives.class.php 文件,搜索如下代码: //高亮专用, 替换多次是可能不能达到最多次 function _highlight($string, $words, $result, $pre) { global $cfg_replace_num; $string = str_replace('"', '"', $string); 在其后添加如下一句代码: uasort($words,create_function('$a, $b','return strlen($a)>strlen($b);')); 这样在进行关键词替换时会先替换短关键词,然后在替换长关键词,也就不会出现链接嵌套的现象了。 希望本文对大家有所帮助,也希望大家能够支持中名论坛。 |
|