我正在製作一個 Full width 的網站 有幾個不同的 content type. 例如 gallery 會全寬。project 會全長 本來想用不同的 html.tpl.php 來輸出不同的 body class 但是 html.tpl.php 好像只有一個 有什麼作法是可以類似 html--gallery.tpl.php,html--project.tpl.php 或是重寫到node去控制比較完整 :p 版型/Themesbodytpl.php7.x 發表回應前,請先登入或註冊 Re: tpl.php 如何控制 body 這個比較特殊,因為如果是 content type ($node->type) ,原生的 template engine 只能與 node.tpl.php 對應。 有幾個解法, 直接利用 page.tpl.php 在 page-wrapper 的部分加上class 填入 node type 的變數, 我找到一篇可以將 page.tpl.php 的檔名,具有判斷 $node->type 的能力, http://highrockmedia.com/blog/creating-custom-content-type-page-template... 我沒有試過,如果可行,好像還挺方便的。 我曾經從 template.php 下手寫 [THEME]_preprocess_html ,塞值到 class array 裡頭去,可參考: http://drupal.org/node/1072806#comment-5679628 這是我將 term id 實作到 body class 的參考,你可以直接塞 $node->type 進去也行。 如果不寫 tpl,我會利用 context 模組,判斷 content type ,設定 Theme HTML 的內容,可以加上一組 body class 這個是最為無痛的解法,而且 context 是個應用性很高的模組。 給你參考看看 發表回應前,請先登入或註冊 Re: tpl.php 如何控制 body context 也太強了,完全佩服。 發表回應前,請先登入或註冊
Re: tpl.php 如何控制 body 這個比較特殊,因為如果是 content type ($node->type) ,原生的 template engine 只能與 node.tpl.php 對應。 有幾個解法, 直接利用 page.tpl.php 在 page-wrapper 的部分加上class 填入 node type 的變數, 我找到一篇可以將 page.tpl.php 的檔名,具有判斷 $node->type 的能力, http://highrockmedia.com/blog/creating-custom-content-type-page-template... 我沒有試過,如果可行,好像還挺方便的。 我曾經從 template.php 下手寫 [THEME]_preprocess_html ,塞值到 class array 裡頭去,可參考: http://drupal.org/node/1072806#comment-5679628 這是我將 term id 實作到 body class 的參考,你可以直接塞 $node->type 進去也行。 如果不寫 tpl,我會利用 context 模組,判斷 content type ,設定 Theme HTML 的內容,可以加上一組 body class 這個是最為無痛的解法,而且 context 是個應用性很高的模組。 給你參考看看 發表回應前,請先登入或註冊
Re: tpl.php 如何控制 body
這個比較特殊,因為如果是 content type ($node->type) ,原生的 template engine 只能與 node.tpl.php 對應。
有幾個解法,
我沒有試過,如果可行,好像還挺方便的。
這是我將 term id 實作到 body class 的參考,你可以直接塞 $node->type 進去也行。
這個是最為無痛的解法,而且 context 是個應用性很高的模組。
給你參考看看
Re: tpl.php 如何控制 body
context 也太強了,完全佩服。