2014-02-08 22 views
3

我試圖讓循環只運行3次,不管它有多少次。SilverStripe Children Of,循環只有3次

<% loop $ChildrenOf(Sponsors) %> 
     <li> 
      <a href="$TargetURL" target="_blank"> 
       <img src="$Logo.Link" alt="image" /> 
      </a> 
     </li> 
    <% end_loop %> 

我想過做的聲明計數器變量,如果它命中3分通話休息,但是當我這樣做:

<% $counter = 0 %> 

分頁符,它不拋出任何錯誤,但之後的任何代碼行都不會被渲染。

運行3次後我會如何讓循環中斷?

回答

7

這包含在SilverStripe Templates文檔中。這應該工作:

<% loop $ChildrenOf(Sponsors).Limit(3) %> 
    <li> 
     <a href="$TargetURL" target="_blank"> 
      <img src="$Logo.Link" alt="image" /> 
     </a> 
    </li> 
<% end_loop %> 
+0

謝謝!,有沒有辦法讓我來檢查循環是第一次還是第二次迭代? – Bojan

+0

是的,您可以使用我的答案中的鏈接中記錄的位置指示符之一(例如$ Pos)。 –