2010-12-21 48 views
0

我試圖用Radiant CMS設置一個簡單的博客,並且存在「存檔月指數」的問題。 我按照weblog的描述進行了設置,但我無法使其工作。輻射:「存檔月指數」

該代碼與視頻中使用的人相同。它是:

<r:archive:children:each> 
    <div class="blog-post"> 
    <h3><r:link /></h3> 
    <p> 
     <r:content /> 
    </p> 
    </div> 
</r:archive:children:each> 

...爲存檔索引。

然而,當我去到柱子/ 2010/12個網站(或任何其他日期)我得到驚人的

StandardTags::TagError in SiteController#show_page 
Recursion error: already rendering the `body' part. 

...而不是索引頁的月份。我無法想象我是如何兩次渲染身體部位的。

回答

0

我有完全相同的問題。 Radiant安裝程序創建的默認博客設置也一樣。

在輻射的博客網頁看起來是這樣的:在文章頁面下

+ Articles (Archive) 
    | 
    +- %B %Y Archives (Archive Month Index) 
    | 
    +- First Post 
    | 
    +- Second Post 
    | 
    +- Third Post 

似乎一切都包含在<r:archive:children:each></r:archive:children:each>返回的結果。

這意味着如果索引頁和第一篇文章是在2011年2月2日創建的,那麼URL/articles/2011/02 /將拋出此異常,因爲正在處理索引頁以生成包含2011年2月的文章將遞歸嘗試處理自己。

我使用的解決方案是<r:unless_self></r:unless_self>標籤,用於從<r:archive:children:each></r:archive:children:each>的結果中剔除正在處理的頁面(即索引頁)。

一個例子非崩潰的索引頁會是這個樣子body頁部分:

<r:archive:children:each order="desc"> 
    <r:unless_self> 
    <div class="entry"> 
     <h3><r:link /></h3> 
     <r:content /> 
    </div> 
    </r:unless_self> 
</r:archive:children:each>