您现在的位置是:首页 > cms教程 > DedeCMS教程DedeCMS教程
织梦dedecms模板中怎么实现按照自定义字段搜索
梁胤鸣2023-11-13DedeCMS教程已有人查阅
导读有很多使用dedecms做的站朋友都想要自定义字段搜索功能,官方又不给出,而作者自己也正需要自定义字段搜索,于是就花了半天时间研究了下DEDE模板中的搜索代码
有很多使用dedecms做的站朋友都想要自定义字段搜索功能,官方又不给出,而作者自己也正需要自定义字段搜索,于是就花了半天时间研究了下DEDE模板中的搜索代码,终于研究出来了,现在分享给大家
好了,废话不多说了,具体操作如下
一:打开你的数据库,找到dede_full_search这个表,在里面把你自定义的字段添加进表,这里以我的网站为例,我添加了myskill,myexchange,mygoods,myexgoods,这4个字段
二:打开/member/article_add_action.php,找到"//更新全站搜索索引",在下面的一段代码中插入刚才添加的4个字段,例:
三:打开/include/inc_arcsearch_view.php,搜索titlekeyword,找到如下代码
四:修改搜索框代码,代码在哪我就不说了吧,大家都知道在哪,搜索框原代码为
五:还是打开/include/inc_arcsearch_view.php,找到//处理一些特殊字段,把你之前的自定义的字段添加进去,这里还是以我的为例子
在先面添加
六:之后一步了,打开templets/default/search.htm,这里就是搜索页调用的模版,这里要调用只要[field:你自定义的字段/],还是以我的网站为例[field:myskill/],这样调用就OK,但是要注意一点,假如你2个字段放一起调用中间较好加个空格或者其他符号,假如[field:myskill/][field:mygoods/]这样连在一起是显示不出来的
好了,写的这么详细,相信大家应该看的懂吧,虽然有点复杂,不过有总比没有好,呵呵
好了,废话不多说了,具体操作如下
一:打开你的数据库,找到dede_full_search这个表,在里面把你自定义的字段添加进表,这里以我的网站为例,我添加了myskill,myexchange,mygoods,myexgoods,这4个字段
二:打开/member/article_add_action.php,找到"//更新全站搜索索引",在下面的一段代码中插入刚才添加的4个字段,例:
“’myskill’=>$myskill,’myexchange’=>$myexchange,’mygoods’=>$mygoods,’myexgoods’=>$myexgoods”
这里说明一下,前面的’myskill’为你发布文章时添加的自定义字段,后面的为刚才在表dede_full_search中添加的字段(建议在表中添加字段的时候写成跟你之前字定义的字段一样)这里较好写成一样,可以省去很多麻烦三:打开/include/inc_arcsearch_view.php,搜索titlekeyword,找到如下代码
if($this->SearchType != "titlekeyword"){
$kwsqlarr[] = " ying_full_search.title like ‘%$k%’ ";
}else{
$kwsqlarr[] = " ying_full_search.title like ‘%$k%’ ";
$kwsqlarr[] = " ying_full_search.addinfos like ‘%$k%’ ";
$kwsqlarr[] = " ying_full_search.keywords like ‘%$k%’ ";
}
分析下代码SearchType != "titlekeyword,搜索类型为titilekeyword,即前台搜索下拉框中的智能模糊搜索,$kwsqlarr[] = " ying_full_search.title like ‘%$k%’ ";为搜索full_search表中的title字段,好了,知道了这段代码的作用,我们就知道该如何添加自己的搜索了下面把我的代码作为例子
if($this->SearchType != "skill"){
$kwsqlarr[] = " ying_full_search.myskill like ‘%$k%’ ";
$kwsqlarr[] = " ying_full_search.myexchange like ‘%$k%’ ";
}else{
$kwsqlarr[] = " ying_full_search.myexchange like ‘%$k%’ ";
$kwsqlarr[] = " ying_full_search.myskill like ‘%$k%’ ";
}
if($this->SearchType != "goods"){
$kwsqlarr[] = " ying_full_search.mygoods like ‘%$k%’ ";
$kwsqlarr[] = " ying_full_search.myexchange like ‘%$k%’ ";
}else{
$kwsqlarr[] = " ying_full_search.myexchange like ‘%$k%’ ";
$kwsqlarr[] = " ying_full_search.mygoods like ‘%$k%’ ";
}
因为我的myskill和myexchange2个字段是一起的,而mygoods和myexgoods是一起的,所以我用了2个if else语句四:修改搜索框代码,代码在哪我就不说了吧,大家都知道在哪,搜索框原代码为
<select name="searchtype" id="searchtype">
<option value="titlekeyword" selected>智能模糊搜索</option>
<option value="title">仅搜索标题</option>
</select>
这里只需修改上面的代码,修改后的代码为
<select name="searchtype" id="searchtype">
<option value="skill" selected>搜技能</option>
<option value="goods">搜物品</option>
</select>
value="",这填的是第三步中添加的SearchType后面的,即搜索类型,这个你自己定义五:还是打开/include/inc_arcsearch_view.php,找到//处理一些特殊字段,把你之前的自定义的字段添加进去,这里还是以我的为例子
在先面添加
$row["myskill"] = $this->GetRedKeyWord(cn_substr($row["myskill"],$infolen));
$row["myexchange"] = $this->GetRedKeyWord(cn_substr($row["myexchange"],$infolen));
$row["mygoods"] = $this->GetRedKeyWord(cn_substr($row["mygoods"],$infolen));
$row["myexgoods"] = $this->GetRedKeyWord(cn_substr($row["myexgoods"],$infolen));
其实只要添加 $row["myskill"] = $row["myskill"];(另外3个我就不写了,类似)就够了,但是我为什么要这样写呢,这样写的作用就是让你在搜索结果页调用的时候显示关键子为红色六:之后一步了,打开templets/default/search.htm,这里就是搜索页调用的模版,这里要调用只要[field:你自定义的字段/],还是以我的网站为例[field:myskill/],这样调用就OK,但是要注意一点,假如你2个字段放一起调用中间较好加个空格或者其他符号,假如[field:myskill/][field:mygoods/]这样连在一起是显示不出来的
好了,写的这么详细,相信大家应该看的懂吧,虽然有点复杂,不过有总比没有好,呵呵
本文标签:
很赞哦! ()
相关教程
- 织梦dedecms模板制作常见问题归类
- 织梦dedecms模板怎么防盗被扒模板
- dedecms模板中怎么调用wordpress文章
- 织梦dedecms模板建造中常用的几个判定语句写法
- dedecms模板中调用wordpress的文章的实现方法
- dedecms模板标签代码booklist标记功能和使用说明
- 织梦dedecms模板安装后创建栏目的详细介绍
- dedecms模板实现{dede:sql=""}分页功能分解
- dedecms模板中下载链接改成讯雷链接的方法及说明
- dedecms模板安装调试过程中遇到的问题解答
- dedecms模板在首页调用单页的内容的代码示例
- dedecms模板标签代码Fieldlist标记语法使用说明
图文教程
dedecms织梦日期时间格式写法调用大全整理
在我们做文章的时候常用一些函数修改来实现自己的页面效果,例如,时间的自定义格式 我们常常需要乃至的,搜集了些有关时间格式的CODE,作大家为参考,希望对大家有些帮助
织梦dedecms友情链接的a标签显示title的方法
打开/include/taglib/flink.lib.php文件找到$link = "
织梦dedecms添加控制是否允许新会员注册
我们在用织梦dedecms时候,如果因为业务需要,想要关闭新用户注册,而又要保证老用户可以登录。如果直接在后台关闭会员功能,老用户也将无法登录,那么我们要怎么操作呢?
织梦后台SEO优化以及怎么修改关键字的教程
织梦后台SEO优化和如何修改关键字,只是简单的优化,大家也可以增加友链、在网站上部署关键字密度。1、找到自己的网站,登陆织梦后台。这个大家都会吧2、进入后
相关源码
-
(自适应)餐饮小吃火锅加盟pbootcms模板源码下载本模板基于PbootCMS系统开发,为火锅餐饮、小吃加盟等餐饮企业打造。采用响应式设计,适配各类移动设备,帮助餐饮企业展示特色菜品、加盟政策和服务优势。查看源码 -
深蓝色风景摄影机构网站(自适应多端)pbootcms模板该模板基于PbootCMS内核开发,专为风景摄影机构、户外摄影企业设计,采用深蓝色主题传递专业与艺术感,全栈响应式架构确保PC、平板、手机端无缝适配PHP程序结合轻量级SQLite数据库也可以更换MySQL数据库查看源码 -
(PC模板)工商公司注册会计财务记账pbootcms模板源码下载基于PbootCMS的工商财税行业网站系统,手工编写前端代码确保执行效率,双端自适应设计,支持后台实时更新服务价格和政策文件。查看源码 -
(自适应)平面设计网络工作室个人作品展示网站模板免费下载基于PbootCMS内核开发的响应式网站模板,为设计工作室、创意机构打造的作品展示解决方案。通过模块化布局与极简交互设计,呈现设计作品的视觉细节,支持作品分类、案例解析等多维度展示方式。查看源码 -
帝国cms7.5大型游戏资讯门户网站源码免费下载本模板基于帝国CMS7.5内核开发,为大型游戏资讯门户网站设计。模板自带响应式手机版,适配多种终端设备。内容架构针对游戏行业特点优化,支持游戏资讯、评测、攻略等内容类型的发布与管理。查看源码 -
(自适应)调节阀门气动球阀控制阀网站模板源码下载为调节阀门、气动球阀等工业设备企业打造的响应式网站模板,基于PbootCMS系统开发。突出产品参数展示与技术文档管理功能,通过专业化的布局设计有效呈现工业设备特性,适配各类终端访问需求。查看源码
| 分享笔记 (共有 篇笔记) |
