全方位解决搜索上篇--“全站搜索按标题”狂改
一、前言:
事先说明,此内容面向对动易系统搜索有一定基础人员观看,如果你是小白,你摸清系统后再看会收获颇多!
记得哥N年前写过一个“打败搜索之:全站按模型搜索”,当时分析了默认搜索的弊端,并提出了改进思路和实施方案,但感觉还是不能完全满足需求。在这基础上哥再进行了改进,加入了节点筛选功能,并提供例子详解。还,还,还,还,还分上下2篇文章详尽地说明从前台表单提交到模板、标签使用,彻底全方位攻陷搜索。
这是上篇,先讲解标签使用。
下个月写下篇,标题暂定“全方位解决搜索下篇 -- 表单提交/JS下拉及讲解等”。敬请期待。
二、“全站搜索按标题”经过哥n次修改后,已面目全非,参数如下:
参数 | 默认值 | 说明 |
---|---|---|
titleLength | 50 | 标题长度,一个汉字占两个字节 |
nodes | 0 | 节点id,0为全站;可以传多个节点,例如:1,32,45 |
outputQty | 20 | 每页显示条数 |
searchModel | notIn | 是否搜索模型,结合models使用。可选in/notIn |
models | 0 | 搜索的模型id,用逗号隔开,例如 1,33 |
这里主要说 searchModel和models的联动使用
searchModel="notIn"代表不搜索那些模型
searchModel="in"代表只搜索那些模型
于是有:
searchModel="notIn" models="0" 全站搜索
searchModel="notIn" models="1,2" 不搜索模型1和2
searchModel="in" models="1,2" 只搜索模型1和2
什么时候需要用到“不搜索某些模型呢?”
有时候全站搜索会把“友情链接”、“留言”、“评论”等模型的信息都搜索出来,而这些通常来说不是用户的需要,所以此时我们可以通过 searchModel="notIn" models="xx,xx" 来排除某些不需要搜索的模型。
三、实际例子:
1、全站搜索:
/search.aspx?searchModel=notIn&models=0&nodes=0&Keyword=关键词
2、指定搜索 模型1:
/search.aspx?searchModel=in&models=1&nodes=0&Keyword=关键词
3、指定搜索 模型1和模型2:
/search.aspx?searchModel=in&models=1,2&nodes=0&Keyword=关键词
4、指定搜索 节点1和节点34:
/search.aspx?searchModel=notIn&models=0&nodes=1,34&Keyword=关键词
5、指定搜索 模型1和模型2 并且 指定节点1和34:
/search.aspx?searchModel=in&models=1,2&nodes=1,34&Keyword=关键词
6、不搜索 模型4和模型7:
/search.aspx?searchModel=notIn&models=4,7&nodes=0&Keyword=关键词
四、使用和下载:
文件下载后分别放置如下:
标签库搜索类全站搜索按标题.config
标签库样色类全站搜索按标题_普通式.config
模板其他模板搜索页模板.html
根目录/Config/QueryStrings.config找到
并添加允许参数:
>>文件下载
四、结语:
我相信日后大部分情况下只需用这个标签就能满足客户需求。
当前此标签也有缺点,就是只能搜标题。这无办法,系统数据库限制了。
希望能帮到大家。
用户登录
还没有账号?
立即注册