2015-12-21 86 views
2

我想在.ss模板中進行簡單的算術運算。模板中的SilverStripe算術

<% loop $Images %> 
    <img src="$Link" alt=""/> 
    <% $Pos == 4 %> 
     and {$TotalItems - 4} more foto's 
     $Break 
    <% end_if %> 
<% end_loop %> 

比如我想輸出

和10多個照片的

但我能得到最好的是

和14 - 4更多照片的

我知道我可以做一個函數,現在可以工作,但我可以在模板中進行算術運算嗎?

+0

那麼它的工作,但那不是真正的算術。因此贊成解決方法。 @csy_dot_io –

回答

4

你可以這樣做。

首先,您將圖像限制爲您希望顯示的數量。之後,你用x(4)的偏移量遍歷相同的集合,並檢查是否還有更多。如果是,請輸出剩餘圖像的數量。

<% loop $Images.Limit(4,0) %> 
    <img src="$Link" alt=""/> 
<% end_loop %> 
<% if $Images.Limit(9999,4) %> 
    and $Images.Limit(9999,4).Count more foto's 
<% end_if %> 

該代碼是未經測試,但應該工作。

編輯

我認爲 「真正的」 算術是不可能的默認。您需要編寫一個自定義函數來執行此操作。