0

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>

どんな助けでも大歓迎です。

ありがとう

4

1 に答える 1

0

たとえば、ノードをリストするすべての場所に<li>タグを追加する必要があります。まず、テーブルタグを<ul id=0>および</ul>に置き換えます。

次に、#macroで、コンテンツ名をリストする必要がありますが、<td>の部分はありません。したがって、<td>タグと</td>タグを削除します。また、ドットは必要ないので、<#if(depth> 0)>ブロックを削除します。

カウンターが必要です。したがって、再帰マクロを初めて入力する直前に<#assign counter = 0 />を設定し、マクロを入力するたびにカウンターをインクリメントします(したがって、マクロの2行目:<#assign counter = counter + 1 />

また、実際のドキュメント名がある行の前後に<li>タグが必要です。したがって、<img/>ブロックと<a></a>ブロックを<liid = "$ {counter}">で囲み、</li>で閉じます。

これで、再帰を実行するときに、新しい<ul>タグのセットも必要になります。これを行うには、<を変更する必要があります

#if child.isContainer && node.children?size != 0 >
   <@recurse_macro node=child depth=depth+1/>
 </#if>

ブロック。タグを<ul>タグと</ul>タグで囲みます。

それはそれをする必要があります。

于 2010-12-07T14:25:00.190 に答える