admin 发表于 2014-5-6 14:28:20

帝国CMS搜索结果关键字高亮

帝国CMS搜索结果关键字高亮。
本文关键词:帝国CMS高亮,搜索高亮,关键字高亮

很简单修改e/search/result/index.php

找到
while($r=$empire->fetch($sql))
{
    //替换列表变量

加上这句代码: $listtext=str_replace($search_r,"<font color='red'>$search_r</font>",$listtext);

一定要放在 下面所示的位置,否则关键字不会变 高亮的!

实例位置:
while($r=$empire->fetch($sql))
{
    //替换列表变量
$repvar=ReplaceListVars($no,$listvar,$subnews,$subtitle,$formatdate,$url,$have_class,$r,$ret_r,$docode);
    $listtext=str_replace("<!--list.var".$changerow."-->",$repvar,$listtext);
    $listtext=str_replace($search_r,"<font color='red'>$search_r</font>",$listtext);//关键字加红(高亮)
    $changerow+=1;
这里的关键字是红色高亮,<font color='red'>里面的颜色修改成需要的就行了!
注意:搜索页面模板调用不要使用title alt等标签来调用标题或者简介内容等!!!


admin 发表于 2021-1-20 21:59:42

多个关键词为空格分开的课使用以下函数解决高亮:// 关键字都加高亮
function keyboardHighlight($keyboard, $listtext){
                $arr = explode(' ', $keyboard);
                $newArr = array_map(function ($item){
                        return '<em>' . $item . '</em>';
                }, $arr);
                return str_replace($arr, $newArr, $listtext);
}搜索$changerow+=1;在这一句的上面加入:$listtext = keyboardHighlight($search_r['keyboard'], $listtext); // 搜索关键词高亮
页: [1]
查看完整版本: 帝国CMS搜索结果关键字高亮