CMSware搜索调用CMS SEARCH
导航:返回上一页
该调用标签可实现内容列表的搜索调用.
本标签对应的系统调用函数为CMS_SEARCH()。
属性 | 必需 | 默认值 | 描述 |
---|---|---|---|
<CMS action="SEARCH" return="List" NodeID="" Num="" Field="" Keywords="" Separator="" IgnoreContentID="" where="" Orderby="" TableID="" Exact="" Tpl="" Cache="" returnKey="" /> | |||
NodeID | 是 | "" |
调用结点ID
|
Num | 是 | "" |
调用条数
|
Field | 是 | KeyWords |
Field="Keywords" 搜索字段 ,默认为内容模型的Keywords字段 |
Keywords | 是 | - | 搜索关键字,比如Keywords="{$Keywords}" 当前内容的关键词 |
Separator | 是 | - | 关键字分隔符,用于多个关键字间的分隔,比如Separator="," 以 , 为分隔符"cmsware,cms,iwpc"3个关键字 |
IgnoreContentID | 是 | - |
忽略内容ID,比如搜索相关文章的时候,可以忽略掉文章本身。比如IgnoreContentID="{$ContentID}" 忽略当前内容 |
where | 否 | - |
用于附加额外的查询条件 比如where="c.Photo != "实现了只调用Photo字段不为空的内容记录,可以实现图文调用。 注意:mysql5的用户,因为字段里 NULL值的问题,如果要判断某个字段为空值,请用c.field IS NOT NULL |
OrderBy | 否 | - |
排序 一般无需设置
|
TableID | 否 | - |
内容模型ID 一般无需设置,系统根据NodeID的值可以自动获TableID
|
Exact | 否 | - |
用于设置search是否为精确查询
|
Tpl | 否 | - |
指定调用的子模版
|
Cache | 否 | - |
模版中的CMS调用通过使用Cache,可以大幅提升批量更新的效率. 该标签只有门户版可用
|
returnKey | 否 | - |
可以定义内容列表记录返回那些字段,一般列表只需要获得Title即可,而无需返回Content 等字段,使用此属性,可以一定程度上提高更新效能。 该标签只有门户版可用
|
键名 | 类型 | 描述 |
---|---|---|
返回2维数组($List) | ||
NodeID | int | 结点ID |
ContentID | int | 结点归属的内容模型ID |
URL | string | 结点名称 |
IndexID | string | 结点首页URL地址 |
PublishDate | string | 所有子结点的ID串,比如'1%2%8%9%10%11%' |
TypeSort,i.Pink | int | 父结点ID |
Sort | int | 父结点ID |
Pink | int | 父结点ID |
内容模型字段(N) | - | 根据具体的内容模型返回不同的字段值 |
例子 1:相关文章调用(新闻模型,内容页模版)
效果图:
调用代码:
<table cellspacing="1" cellpadding="3" width="95%" bgcolor="#455ca2" border="0"> <tr> <td bgcolor="#455ca2"> <font color="#ffffff">相关文章</font> </td> </tr> <tr> <td bgcolor="#edf0f5"> <!--搜索相关文章: 搜索结点:来自变量$NodeID 搜索字段:新闻模型的Keywords字段 搜索关键字:来自变量$Keywords 返回记录数量:3条 关键字分隔符:“,” 忽略内容ID:来自变量$ContentID --> <CMS action="SEARCH" return="List" NodeID="{$NodeID}" Field="Keywords" Keywords="{$Keywords}" Num="3" Separator="," IgnoreContentID="{$ContentID}" /> <loop name="List" var="var" key="key" > <li> <a href="[$var.URL]"> [$var.Title] </a> </li> </loop> </td> </tr> </table>
例子 2:相关软件调用(下载模型,内容页模版)
调用代码:
<CMS action="SEARCH" return="List" NodeID="{$NodeID}" Field="SoftKeywords" Keywords="{$SoftKeywords}" Num="10" Separator="," IgnoreContentID=" {$ContentID}" /> <loop name="List" var="var" key="key" > <li> <a href="[$var.URL]"> [$var.SoftName] </a> </li> </loop>
例子 3:不同内容模型的相关内容的调用
调用代码:
<CMS action="SEARCH" return="List" NodeID="all-2" Field="Keywords" Keywords="{$Keywords}" Num="5" Separator="," IgnoreContentID="{$ContentID}" TableID="1" /> <loop name="List" var="var" key="key" > <tr> <td background="[$Skin_Images]main_personal_bg2.gif" height=28> <IMG height=9 src="[$Skin_Images]main_personal_button03.gif" width=10> <a class=black href="[$var.URL]">[$var.name]</a></td> </tr> </loop>
说明:比如第一个内容模型是文章,第二个内容模型是下载,上述代码是在下载里边调用该软件的相关文章