我知道有很多不同的自定義模板文件,如page.tpl.php和node.tpl.php等,但有沒有辦法爲特定的節點ID製作自定義模板?這不工作node-3.tpl.php,但有沒有辦法做到這一點?Drupal 6中特定節點的自定義模板?
更新代碼
function phptemplate_preprocess_node(&$vars) {
$vars['template_files'][] = 'node-' . $vars['nid'];
}
我知道有很多不同的自定義模板文件,如page.tpl.php和node.tpl.php等,但有沒有辦法爲特定的節點ID製作自定義模板?這不工作node-3.tpl.php,但有沒有辦法做到這一點?Drupal 6中特定節點的自定義模板?
更新代碼
function phptemplate_preprocess_node(&$vars) {
$vars['template_files'][] = 'node-' . $vars['nid'];
}
爲Drupal 6中,頁面模板是頁面節點-3.tpl.php'和閱讀手冊在http://drupal.org/node/1089642
的Drupal 7,頁 - 節點 - -3.tpl.php:http://drupal.org/node/1089656
Thanks @Clive and @asiby。
這是Drupal的7. Drupal的6手冊在這裏:http://drupal.org/node/1089642,正確的模板文件是'page-node-3.tpl.php' – Clive 2012-08-08 18:47:53
我試過,是的, ,但這是整個頁面。所以我將不得不復制我的頁面模板。所以,現在如果我需要對頁面模板進行調整,我將不得不記住要在兩個或者多個地方爲我做的很多自定義節點模板進行調整。我只想定製給定節點的節點顯示而不是整個頁面。 – 2012-08-08 20:22:09
@ErichH。如果您要覆蓋節點模板,則還需要在主題中包含核心'node.tpl.php'文件的副本。如果你還沒有,複製它,清除緩存,你應該很好去 – Clive 2012-08-08 20:30:01
確保您重建主題註冊表。如果不這樣做,將導致Drupal完全忽略您將添加的node-x.tpl.php文件。
@富有 我需要同樣的東西,我嘗試了你在這裏提到的,但它沒有爲我呈現。如果我沒有錯,我需要在template.php中追加這個函數? – 2016-04-27 14:47:26