织梦搜索时因关键词标红而导致页面样式错乱的解决方法


使用织梦默认的搜索功能时,发现搜索某一关键词时,搜索展示页面样式错乱了。经过排查,确定是关键词标红引起的。   出现此问题的原因: 织梦搜索页面会将搜索关键词进行标红(字体颜色改为红色)处理。在代码中体现出来就是将关键词文字替换为套上font标签的文字。 如关键词为“织梦58”,在搜索页中会将“织梦58”替换为“<font color=’red’>织梦58</font>” 在标题中标红关键词时没有问题的,但是内容描述中标红就容易出错了。 内容描述通常是限定字数的。 若关键词正处于描述的结尾部分,在标红处理的时候,font标签也会占用字数,所以会造成font标签显示不全。 font标签不闭合,后面的代码都会显示错误。所以会出现样式错乱。
去掉关键词标红的处理方式 : 打开
include/arc.searchview.class.php 文件, 找到代码:

  1. $fstr = str_ireplace($k, “<font color=’red’>$k</font>”, $fstr);

在352行左右。然后将其注释掉。