我需要从Alfresco Space开始构建一个无序列表:
我找到了这个工作模板:
<#macro recurse_macro node depth>
<#if node.isContainer>
<tr>
<td align='left'>(${depth})
<#if (depth>0) >
<#list 1..depth as i>.</#list>
</#if>
<img src="/alfresco${node.icon16}"> <a href="/alfresco${node.url}">${node.properties.name}</a>
</td>
</tr>
<#list node.children as child>
<#if child.isContainer && node.children?size != 0 >
<@recurse_macro node=child depth=depth+1/>
</#if>
</#list>
</#if>
</#macro>
<b>Recursive Listing of Spaces:</b>
<table border="1" celpadding="1" cellspacing="1">
<tr><th> Name Space </th></tr>
<@recurse_macro node=companyhome depth=0/>
</table>
我需要修改此模板以将空间内容呈现为无序列表:
<ul id="0" >
<li id="1">Content_one
<ul>
<li id="2">Content_two
<ul>
<li id="3">Content_three</li>
<li id="4">Content_four</li>
</ul>
</li>
<li id="5">Content_five</li>
</ul>
</li>
</ul>
任何帮助将不胜感激。
由于
答案 0 :(得分:0)
好吧,你需要添加一个&lt;李&GT;标记节点的每个地方的标记,例如: 首先用&lt;替换表标签。 ul id = 0&gt;和&lt; / UL&GT;
然后,在#macro中 - 您需要列出内容名称但不包含&lt; TD&GT;部分。所以删除&lt; TD&GT;和&lt; / TD&GT;标签。此外,您不需要点,因此删除&lt; #if(深度&gt; 0)&gt;块。
你需要一个柜台。所以有一个&lt; #assign counter = 0 /&gt;就在您第一次输入递归宏之前。每次输入宏时都会递增计数器(所以在宏的第二行:&lt; #assign counter = counter + 1 /&gt;
你还需要&lt;李&GT;您的实际文档名称所在的行周围的标记。 所以附上&lt; img /&gt;和&lt;一个&GT; &LT; / A&GT; &lt;块&gt; li id =“$ {counter}”&gt;并用&lt;关闭它/立GT;
现在,您还需要一组新的&lt; UL&GT;你做一个递归的标签。 要做到这一点,你需要改变 &LT;
#if child.isContainer && node.children?size != 0 >
<@recurse_macro node=child depth=depth+1/>
</#if>
块。用你的&lt;包含标签。 UL&GT;和&lt; / UL&GT;标签
应该这样做。