语法核心
基本语法
#set ($list=$data.getPicList("杂谈",60,255,0,10))//调用tag,以及确定好数量,具体语法会在下面有说明
#foreach($one in $list)//获取每一条tag数据
这里写你喜欢调用的东西 例如:
#set ($title=$one.getString("title"))//标题
#set ($picurl=$one.getString("picurl"))//图片路径
#set ($thislink=$data.getRelatedUrl($one.getString("articleid"))) //文章相对路径
....
//填充到结构里面,就是对含有文字描述的结构进行填充
<li>
<a href="$thislink" class="mod-vedioList__link">
<img src="$picurl" alt="$title">
<em class="mod-vedioList__tit">$title</em>
</a>
</li>
#end //结束循环
完整代码
#set ($list=$data.getPicList("杂谈",60,255,0,10))
#foreach($one in $list)
#set ($title=$one.getString("title"))
#set ($picurl=$one.getString("picurl"))
#set ($thislink=$data.getRelatedUrl($one.getString("articleid")))
<li>
<a href="$thislink" class="mod-vedioList__link">
<img src="$picurl" alt="$title">
<em class="mod-vedioList__tit">$title</em>
</a>
</li>
#end
所以说发布器模板(非最终文章页)最常用的语法核心就是循环调用
#foreach($one in $list)
循环体
#end
特别值得注意的是, 发布器的语法分析器,会根据
#end
来判断语法是否结束,所以新手使用发布器语法的时候, 很容易漏掉, 需加倍小心
跨专区调用
本专区调用
$data.getPicList(...)
$data.getList(...)
跨专区调用
$data.getPicListOther(频道id/频道中文名,...)
$data.getListOther(频道id/频道中文名,...)
特别需要注意的是,跨专区调用的时候,读取的新闻列表地址,不能用相对地址,要用绝对地址
相对地址
#set ($thislink=$data.getRelatedUrl($articleid))
绝对地址
#set ($reallink=$data.getUrl($channelid,$articleid))
跨专区调用完整例子
#set ($list=$data.getPicListOther("首页","试玩解说",60,255,4))
#set ($channel='首页')
#foreach($one in $list)
#set ($reallink=$data.getUrl($channel,$one.getString("articleid")))
<li>
<a href="$reallink"></a>
</li>
#end
判断语句
#if(...)
...
#elseif
...
#end
同样需要注意的也是不要忘记写#end
, 一个if就对应一个end