2012-07-02 170 views
9

我看過一些帖子說你只能通過文字字符串以哲基爾的前面的問題包括語句,像這樣:動態包括

{% include mypage.ext %} 

不過,我有以下的HTML佈局幾乎每一頁:

<section id="feature"> 
     <div class="container_12"> 
      <div class="grid_12 alpha omega"> 
       {% include myfile.ext %} 
      </div> 
     </div> 
    </section> 

    <section id="main"> 
     <div class="container_12"> 
      <div class="grid_12 alpha omega"> 
       {{ content }} 
      </div> 
     </div> 
    </section> 

這將是痛苦的,必須包括在每一個頁面,以實現我正在尋找的佈局。包含的文件將與當前頁面相關,所以我希望有人知道某種方式來做到這一點。當然這是沿線的東西:

{% include {{page.file}} %} 

我見過一些其他帖子說這只是不能發生雖然。

所以,我只是想能夠動態加載包括在Jekyll中。

編輯:https://github.com/mojombo/jekyll/issues/176

+2

你的包裝是否有一些反覆使用的變化或每個頁面都有獨特的包含?我有一個類似的設置,並用簡單的邏輯測試使用「when」情況下的參數,這樣當設置了前置條件「a」時,它包含了文件「matched-for-a.ext」。 – motleydev

+2

例如: '{%情況下模板%} {%時 '索引' %} 歡迎 { '產品' 時%%} {{product.vendor | link_to_vendor}}/{{product.title}} {%else%} {{page_title}} {%endcase%}' – motleydev

回答

4

這是目前有意不可能的,因爲傑奇的維護者不希望項目得到動態。您可以閱讀this comment & thread瞭解一些背景知識。 qrush(維護者)給出的建議是使用rails或sinatra。可能不是你正在尋找的答案,但這是目前的狀態。

如果你想使用插件,有一個可以讓你做到這一點here

+2

是的,我一直在看拉請求和評論。製造商真的不希望它在那裏。大恥辱。 – Kezzer