2012-11-07 204 views
6

首先,一個警告......我是Stash的全新品牌。我聽說過很多,但這是我第一次真正玩這個遊戲。我明白這個概念,但我很難把這件事情弄清楚。隱藏:有條件內容

我有一個主要的「包裝」文件,該包裝中的所有內容都保持不變。不過,我希望這個選項能夠在需要時打開和關閉邊欄。

我不覺得我需要一個完全獨立的佈局包裝我會嗎?

有沒有辦法在藏匿區內使用布爾變量? (例如2col = TRUE)還是我想錯了?

在此先感謝您的幫助!

回答

3

我通常爲每個模板使用一個包裝。它將包含一個{exp:stash:get name="content"}標記,就像你的標記,其中包含唯一的變量內容。

在我個人的模板中,我在開始時使用常規EE嵌入ie嵌入了包裝器。 {embed="includes/wrapper"}
然後,我使用{exp:stash:set name="content"}標籤隱藏了要插入到包裝中的內容。
這似乎就像你在做什麼。

如果我想有條件地顯示一個側邊欄,我可能只是將一個變量傳遞給嵌入。
例如。 {embed="includes/wrapper" show_sidebar="yes"}

在我的包裝我這樣做:

{if embed:show_sidebar} 
    Sidebar stuff. 
{/if} 
+0

我喜歡這樣的解決方案。從未想過在嵌入的包裝中使用嵌入變量。天才。 –

+1

這個相同的概念可以用開發分支中的Stash嵌入來完成。我不再使用任何EE嵌入,以利於嵌入嵌入。他們非常棒 - 只需抓住Stash的開發部門。 –

+0

謝謝賈斯汀。我還沒有熟悉隱藏嵌入。如果他們能夠執行相同的任務,那麼這將是更好的解決方案。 –

4

一般我在這裏要做的是設置多個Stash在包裝內獲取。然後在您的個人模板中,您可以設置側邊欄和主要內容區域。對於您可能重複內容的部分,例如側邊欄的開始和結束div,您可以隨時在存儲空間中放置一些片段。

您還可以使用exp:stash:not_empty[docs]環繞包裝內側邊欄的div或容器。