|
admin 发表于:2017/8/17 16:35:15
楼主
|
标签功能 infolist标签 | 功能 | 循环输出频道里的信息(文章、图片、下载等) | 闭合 | 非闭合标签 | 属性 | id(必须):当前循环对象变量名称,格式:{$变量名.属性名} channelid:指定输出哪个频道ID的文章列表,支持模板变量 specialid:专题ID,支持模板变量 top:输出前几条信息 orderby:表示指定字段排序(默认是按InfoOrder字段升序排列)输出,支持多个字段同时排序,注意:字段前一定要加上表的别名a。如: [1]按信息点击排行榜(即点击次数降序排序),orderby=“a.InfoHit Desc” [2]随机排序可以设置为:orderby="rand()" [3]多字段排序,orderby=“a.InfoHit Desc,a.InfoTime desc” timeformat:时间格式 titlelen:信息标题长度,截取后的标题使用InfoSTitle调用。InfoSTitle = titlelen>0 ? left(InfoTitle,titlelen) : InfoTitle labelid:属性标记(1:热门,2:置顶,3:推荐),不同的频道模型可以在后台设置不同的属性标记 nowpage:页 keywords:关键词,可以用于实现检索功能,能检索信息标题InfoTitle或Tag字段(按Tag字段检索是7.0版新增功能)包含关键词的文章列表 suffix:设置titlelen后有效,设置截取标题前titlelen字后增加的后缀,默认为"..." field:设置调用的字段(这是7.0版本增加的功能),主要用于性能优化,可以提高数据获取速度,减少mysql数据库传输数据量。如果不设置,标签将关联2个表,调用信息info表的所有字段和频道channel表的4个字段ChannelName,ChannelModelID,Html,LinkUrl。 在使用infolist标签的时候,大部分情况下是不需要调用频道表的数据,如果设置了field="InfoID",那么标签将不关联频道channel表,只从信息info表调用数据,这样就会大大提高速度。如果网站数据比较大,建议设置field属性,可大大提高页面打开速度。 字段设置规则: InfoID,ChannelID,InfoTitle,InfoPrice,InfoTime,Html,LinkUrl,InfoPicture,InfoAttachment,InfoHit是信息表的必填字段,如果field设置的字段包含信息表的必填字段,最终的字段等于field设置的字段和必填字段做并集,这样更方便使用。如:field="InfoID"和field="InfoTitle"最终的结果都是一样的; ChannelName,ChannelModelID,Html,LinkUrl,ChannelPicture,ChannelIcon,Parent,HasChild,ChannelTarget是频道表的必填字段,如果field设置的字段包含频道表的必填字段,最终的字段等于field设置的字段和必填字段做并集,如:field="ChannelName"和field="ChannelName,ChannelModelID"最终的结果都是一样的。换句话说,就是必填字段只要设置一个,所有的必填字段都会输出。
offset:要输出数据的offset length:输出数据的长度,必须同时设置offset key:循环的key变量,默认值为i mod:对key值取模,默认为2 empty:如果数据为空显示的字符串,支持html,但是其中的特殊字符 < 、 > 、 '(单引号)、"(双引号)必须使用对应的字符 [ 、 ] 、 ^ 、 ^^ 替换 | 备注 | 数据调用来源:内容管理->信息管理,数据表为info |
2.信息属性 属性名称 | 说明 | 基本信息 | InfoID | 信息ID | InfoTitle | 信息标题 | ChannelID | 当前信息所属频道ID | ChannelName | 当前信息所属频道名称 | SpecialID | 当前信息所属专题ID | InfoPicture | 缩略图 | InfoSContent | 信息简短内容 | InfoContent | 信息内容 | InfoAttachment | 信息附件 | LinkUrl | 转向链接 | InfoTime | 信息时间 | InfoAuthor | 作者 | InfoHit | 点击次数 | InfoFrom | 信息来源 | Html | 信息页面Url静态名称 | InfoAlbum | 信息相册数据,格式:相册标题1###图片1###描述1@@@相册标题2###图片2###描述2,字段以###隔开,多个相册以@@@隔开。一般用这个字段来判断相册是否为空,然后调用相册标签infoalbumlist | InfoRelation | 相关信息ID,多个相关信息以逗号隔开,如:12,13,35。一般用这个字段来判断相关信息是否为空,然后调用信息相关标签inforelationlist | Tag | 多个标签以英文逗号隔开,一般设置2到5个。TAG标签是一种由您自己定义的,比分类更准确、更具体,可以概括文章主要内容的关键词,能使文章更容易被搜索到 | InfoPrice | 商品价格 | 自定义属性 | f1 | 扩展字段1 | f2 | 扩展字段2 | f3 | 扩展字段3 | f4 | 扩展字段4 | f5 | 扩展字段5 | 扩展属性 | InfoUrl | 当前信息的Url地址 | InfoSTitle | 信息截取后的标题,设置titlelen属性有效,其值为InfoTitle的前titlelen字符。InfoSTitle = titlelen>0 ? left(InfoTitle,titlelen) : InfoTitle | 频道表属性 | ChannelName | 频道名称 | ChannelHtml | 频道Url静态文件名 | ChannelLinkUrl | 频道转向链接 |
3.实例说明 实例1:输出频道ID为13的前10条信息图片[size=1em][tr=none] [size=1em]01
[size=1em]02
[size=1em]03
[size=1em]04
[size=1em]05
[size=1em]06
[size=1em]07
[size=1em]08
| [size=1em][size=1em]<infolist channelid="13" id="f" timeformat="Y-m-d" titlelen="20" top="10"> [size=1em] <li> [size=1em] <a href="{$f.InfoUrl}"> [size=1em] <img alt="{$f.InfoTitle}" src="{$f.InfoPicture}" title="{$f.InfoTitle}" /> [size=1em] </a> [size=1em] <a href="{$f.InfoUrl}" title="{$f.InfoTitle}">{$f.InfoSTitle}</a> [size=1em] </li> [size=1em]</infolist>
| 实例2: 显示指定频道前8条推荐信息[size=1em][tr=none] [size=1em]01
[size=1em]02
[size=1em]03
[size=1em]04
[size=1em]05
[size=1em]06
| [size=1em][size=1em]<!--labelid:属性标记(1:热门,2:置顶,3:推荐)--> [size=1em]<infolist channelid="$ChannelID" empty="暂无信息!" id="f" labelid="3" timeformat="Y-m-d" titlelen="20" top="8"> [size=1em] <li> [size=1em] <a href="{$f.InfoUrl}" title="{$f.InfoTitle}">{$f.InfoSTitle}</a> [size=1em] </li> [size=1em]</infolist>
| 实例3: 信息分页[size=1em][tr=none] [size=1em]01
[size=1em]02
[size=1em]03
[size=1em]04
[size=1em]05
[size=1em]06
[size=1em]07
[size=1em]08
[size=1em]09
[size=1em]10
| [size=1em][size=1em]<!--$NowPage:表示当前页变量--> [size=1em]<infolist channelid="$ChannelID" empty="暂无信息!" id="f" nowpage="$NowPage" timeformat="Y-m-d" titlelen="20"> [size=1em] <li> [size=1em] <span class="float_right">{$f.InfoTime}</span> [size=1em] [<a href="{$f.ChannelUrl}">{$f.ChannelName}</a>] [size=1em] <a href="{$f.InfoUrl}" title="{$f.InfoTitle}">{$f.InfoSTitle}</a> [size=1em] </li> [size=1em] <!--输出分页条--> [size=1em] <li>{$Page}</li> [size=1em]</infolist>
| 实例4: 随机显示指定频道的前8条信息(即随机排序)[size=1em][tr=none] [size=1em]01
[size=1em]02
[size=1em]03
[size=1em]04
[size=1em]05
[size=1em]06
| [size=1em][size=1em]<!--orderby="a.InfoID desc" 表示按信息ID降序排列,orderby="rand()"表示随机排序--> [size=1em]<infolist channelid="$ChannelID" top="8" id="f" timeformat="Y-m-d" orderby="rand()"> [size=1em] <li> [size=1em] <a href="{$f.InfoUrl}" title="{$f.InfoTitle}">{$f.InfoTitle}</a> [size=1em] </li> [size=1em]</infolist>
|
|