>[info]RGCMS的搜索form采用get/post方式提交,为确保数据安全,请尽量使用post
1、如果需要对结果分页,推荐使用get方法,**常用于栏目模型内容的搜索**
2、如果忽略分页且确保数据安全,推荐使用post,**常用于功能模型的内容搜索,比如开发产品防伪查询、人员信息查询等功能**
>[danger]RGCMS的搜索,可自定义需要搜索的模型(栏目模型或者功能模型)极大方便了系统开发和功能的需求,并根据搜索的模型不同可展现不同的搜索模板,见下面的栗子
## **HTML代码**
```
前台模板的分配
如果在搜索字段中定义了model = news,那么搜索结果模板默认为search_news.html
以此类推,如果model = product,那么默认搜索结果模板为search_product.html
如果当前模型默认搜索模板不存在,则最终自动选择search_index.html 作为搜索结果模板
```
```
前台html页面搜索代码
<form action="{$url_search}" method="post">
<input type="text" name="该模型自定义的字段名,如title">
<input type="hidden" name="model" value="news">
<input type="submit" name="" value="">
</form>
说明:
1. model字段为搜索的模型标识,如news或product等
2. 你可以在此基础上进行选择性搜索开发
```
## **搜索结果页标签调用**
搜索结果页标签:`{rg:search 参数名称="参数值"}{/rg:search}`
**参数列表**
|参数(?为可选参数)|默认值|使用示例|解释|
|---|---|---|---|
|?field|title|field="title:like,work:eq"|指定搜索结果中显示的字段名称以及搜索方法:like为模糊搜索,eq为精确搜索|
|?empty|未搜索到相关内容!|empty="无内容!"|无结果时提示的文本|
|?where||where="id > 10"|根据条件进行筛选|
|?order|create_time desc|order="create_time asc"|排序规则|
|?key|i|key="y"|循环体内的计数变量,如{$i}从1开始计数|
|?limit|不限|limit="10"|调用数量|
|?site|当前站点ID|site="1"|站点ID|
>[danger] **如果模型为栏目模型,调用栏目信息为 {$search.navlist.\*} \*为栏目信息字段**
>[success]童鞋们举栗子了:
```
前台搜索结果页代码
面包屑可以为:您现在的位置:{rg:location msg="结果"/} > {$searchdata['title']}
结果列表:
<ul>
{rg:search field="title:like,work:eq" limit="9"}
<li><a href="{$search.url}">{$search.title}</a></li>
{/rg:search}
</ul>
{$page|raw}
说明:
1.{$search.*} *代表模型字段
2.{$page|raw} 搜索分页
```