# 语法核心 ##基本语法 ``` #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"))) //文章相对路径 .... //填充到结构里面,就是对含有文字描述的结构进行填充
  • $title $title
  • #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")))
  • $title $title
  • #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")))
  • #end ``` ## 判断语句 ``` #if(...) ... #elseif ... #end ``` 同样需要注意的也是不要忘记写`#end`, **一个if就对应一个end**