行云海CMS(XYHCMS)循环调用多级子栏目-如顶级栏目下二级、三级栏目

行云海CMS调用多级子栏目的可以使用栏目标签catlist或导航标签navlist, 栏目标签catlist 和 navlist用法相似,catlist更灵活(本身包含了navlist功能)。

调用顶级(一级)栏目列表的写法

1)catlist方法

<yang:catlist typeid='0' flag='1'>
  <li><a href="{$catlist.url}">{$catlist.name}</a><li>
</yang:catlist>

2)navlist方法

<yang:navlist typeid='0'>
  <li><a href="{$navlist.url}">{$navlist.name}</a><li>
</yang:navlist>

调用循环调出子栏目(二级栏目、三级栏目...N级栏目)的写法

注:循环调用,要配置循环标签volist 或 foreach 使用

1)catlist配合volist方法(navlist类似)

<yang:catlist typeid='0' flag='1'>
  顶级栏目:<a href="{$catlist.url}">{$catlist.name}</a>
  <!--二级栏目开始 -->
  <volist name='catlist["child"]' id='v'>
    二级栏目:<a href="{$v|get_url}">{$v.name}</a>
	
		<!-- 三级栏目开始 -->
		<volist name='v["child"]' id='v2'>
			三级栏目:<a href="{$v2|get_url}">{$v2.name}</a>
		</volist>
		<!-- 三级栏目结束 -->
	
  </volist>
  <!--二级栏目结束 -->
</yang:catlist>

 

2)catlist配合foreach方法(navlist类似)

<yang:catlist typeid='0' flag='1'>
  顶级栏目:<a href="{$catlist.url}">{$catlist.name}</a><br/>
  <!--二级栏目开始 -->
  <foreach name='catlist["child"]' item='v'>
    二级栏目:<a href="{$v|get_url}">{$v.name}</a><br/>
	
		<!-- 三级栏目开始 -->
		<foreach name='v["child"]' item='v2'>
			三级栏目:<a href="{$v2|get_url}">{$v2.name}</a><br/>
		</foreach>
		<!-- 三级栏目结束 -->
	
  </foreach>
  <!--二级栏目结束 -->
</yang:catlist>

注: 使用foreach 的时候,最好使用if标签判断子栏目是否存在
注: 使用循环调出的子级栏目url为空,请使用{xxx|get_url}调出url

注:XYCHMS1.x和XYHCMS2.x请使用getUrl代替get_url


有没有解决你的问题?!! 遇到问题,在线社区提问