帝国论坛帝国网站管理系统交流区模板/标签/插件共享交流搜索结果显示自定义字段,且筛选只包含搜索关键字的值,并高亮显示 【本版专题贴子】  
主题:搜索结果显示自定义字段,且筛选只包含搜索关键字的值,并高亮显示 [加入收藏夹]   

tao000000
用户头衔:书生

精华贴   :0
发贴数   :8
经验值   :135
注册时间:2016-08-29
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
搜索结果显示自定义字段,且筛选只包含搜索关键字的值,并高亮显示
e/search/result/index.php  下找到
//取得列表模板
...
while($r=$empire->fetch($sql))
{

添加

  $keyb = explode(',',$r['keyds']);  //$r['keyds']为自定义字段,这里我设置的字段值是用","隔开的,导成数组形式

  foreach($keyb as $k=>$v){  
        if(strpos($v,$search_r['keyboard'])===false){  
            unset($keyb[$k]);    //这里判断数组里该键的值是否含有查询的关键字,如果没有就删除该键
        }  
    }
    $r['keyds'] = implode(",",$keyb);
    $r['keyds']=str_replace($search_r['keyboard'],"<span style='color:#ff0000;'>{$search_r['keyboard']}</span>",$r['keyds']); //这里是高亮显示

搜索列表内容页
<li><a href="[!--titleurl--]">[!--title--]</a>&nbsp&nbsp|&nbsp&nbsp所属类别:<a href="[!--this.classlink--]">[!--this.classname--]</a></li><p>[!--keyds--]</p>

搜索form表单添加
<input type="hidden" name="show" value="keyds">

这里只是把我自己用的代码复制上来,具体情况具体修改,大概思路就是这样。

[该贴被修改 1 次,最后修改时间 2018-04-30 12:58:13 ]



2018-04-30 12:53:48 已设置保密 顶部 回复 引用 报告 编辑 删除

懂事的猫
用户头衔:进士

精华贴   :0
发贴数   :1848
经验值   :5640
注册时间:2011-03-04
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

支持




2018-04-30 19:23:48 已设置保密 顶部 回复 引用 报告 编辑 删除

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1