page-content-type.tpl.php separates Template für Inhaltstyp
Wahrscheinlich haben Sie schon mehrmals separate Templates für Ihre Nodes erstellt, indem Sie diese als node-content-type.tpl.php überschrieben haben.
Manchmal reicht das aus, aber manchmal muss man für einen bestimmten Inhaltstyp ein spezielles Template festlegen. Leider ist das in Drupal 6 ohne zusätzlichen Code nicht möglich. Um unsere neuen Templates für Inhaltstypen wie page-content-type.tpl.php zum Laufen zu bringen, müssen Sie den folgenden Code in die Datei template.php einfügen:
function phptemplate_preprocess_page(&$vars) { if (isset($vars['node'])) { $vars['template_files'][] = 'page-'. str_replace('_', '-', $vars['node']->type); } }
Nun können Sie ein eigenes Template für den Inhaltstyp erstellen, zum Beispiel page-news.tpl.php (wobei news der Maschinenname des Inhaltstyps „Nachrichten“ ist).
Außerdem ist es in Drupal möglich, Templates für Taxonomiebegriffe zu überschreiben, indem man diese Funktion in template.php hinzufügt:
Danach können Sie das Template node-taxonomy.tpl.php im Ordner des aktuellen Themes überschreiben.
function phptemplate_preprocess_node(&$vars) { if (arg(0) == 'taxonomy') { $suggestions = array( 'node-taxonomy' ); $vars['template_files'] = array_merge($vars['template_files'], $suggestions); } }