stl:search 标签用法
搜索结果
<stl:search channelIds="栏目Id列表" channelIndex="栏目索引" channelName="栏目名称" dateAttribute="搜索时间字段" dateFrom="搜索开始时间" dateTo="搜索结束时间" isDefaultDisplay="是否默认显示" isHighlight="是否关键字高亮" pageNum="每页显示的内容数目" since="搜索时间段" siteDir="站点文件夹" siteIds="站点Id列表" siteName="站点名称" type="搜索类型" word="搜索关键词" ></stl:search>
用于显示搜索结果。
属性列表
下表显示所有属于此标签的属性列表。
属性 | 可能的取值 | 默认值 | 简介 |
---|---|---|---|
siteName | 站点名称,设置后系统将只搜索对应站点的内容 | ||
siteDir | 站点文件夹,设置后系统将只搜索对应站点的内容 | ||
siteIds | 站点Id列表,多个站点Id以“,”分割,设置后系统将只搜索对应站点集合的内容 | ||
channelIndex | 栏目索引,设置后系统将只搜索对应栏目及其下级栏目的内容 | ||
channelName | 栏目名称,设置后系统将只搜索对应栏目及其下级栏目的内容 | ||
channelIds | 栏目Id列表,多个栏目Id以“,”分割,设置后系统将只搜索对应栏目集合及其下级栏目的内容 | ||
type | title | 定义搜索字段,默认为title ,可以定义多个搜索字段,如:title,content |
|
word | 定义搜索关键词,通常不设置在模板中,系统从地址栏参数中获取 | ||
dateAttribute | AddDate | 日期搜索字段,定义dateFrom、dateTo或者since日期过滤条件的对应日期字段 | |
dateFrom | 搜索日期开始时间 | ||
dateTo | 搜索日期结束时间 | ||
since | 搜索时间段,格式为"数字+日期符号",日期符号有"y"、"m"、"d"及"h",分别代表年、月、天及小时。 | ||
pageNum | 22 | 每页显示多少条内容 | |
isHighlight | 是否关键字高亮显示 | ||
true | 高亮显示 | ||
false | 正常显示 | ||
isDefaultDisplay | 当搜索条件为空时是否显示全部内容 | ||
true | 显示 | ||
false | 不显示 |
页面参数
上表对应的属性均可作为页面参数传递给<stl:search>
标签,系统将首选页面参数值,如果未传参数,系统再从<stl:search>
属性取值。
示例:/utils/search.html?word=中国&type=title&pageNum=10
将优先于<stl:search type="title,content" pageNum="20">
。
子标签
下表显示此标签所有的子标签。
子标签 | 简介 |
---|---|
stl:loading | 正在搜索时的显示模板,可以省略 |
stl:yes | 搜索出内容时的显示模板,可以省略 |
stl:no | 未搜索出内容时的显示模板,可以省略 |
如果需要根据是否搜索成功显示不同的结果,需要使用子标签 <stl:yes> 和 <stl:no> ,有搜索结果时将显示 <stl:yes> 中的内容,无搜索结果时将显示 <stl:no> 中的内容。
如果只定义搜索结果模板,可以省略<stl:yes>,直接将模板放到<stl:search> 中。
自定义搜索提交表单需要在 <stl:search> 中嵌入显示搜索结果的标签,必须包含的标签有 <stl:pageContents> 和 <stl:pageitems> 及 <stl:pageItem> 标签,分别用于显示搜索结果分页列表和搜索结果翻页项。
- <stl:search> 内必须包含一个 <stl:pageContents> 标签,用于显示搜索结果内容列表,详情请参考 <stl:pageContents> 标签。
- <stl:search> 内必须包含一个 <stl:pageitems> 标签和多个 <stl:pageItem> 标签,用于显示翻页项,详情请参考 <stl:pageItems> 标签及 <stl:pageItem> 标签。
- <stl:search> 中除以上标签外可以添加任意 Html 标签或 STL 标签,用于组织显示样式。
注意
stl:search 标签有默认显示方式和自定义显示方式两种表现形式。如果 <stl:search> 不包含子标签则采用默认显示方式显示搜索提交表单、如果 <stl:search> 包含子标签则采用自定义的内容显示搜索提交表单。
<stl:search>
标签对应的实体为{stl:search}
。