2016-04-27 3 views
0

Ich habe 3 Knoten in meinen Websites.So fügen Sie verschiedene Vorlage für verschiedene Knoten in Drupal 6

  1. node/1 - Login
  2. Knoten/2 - Kontakt
  3. Knoten/3 - Registrieren

I andere Vorlage für verschiedene Knoten haben wollen. Wenn ich als page-node-1.tpl.php mache, page-node-2-tpl.php, ist es für die gesamte Seite, ich möchte nicht, dass, ich möchte speziell für Knoten Inhalt überschreiben.

Ich habe bereits versucht, die folgenden Links: -

Ich bin mit Drupal 6

+0

Ayesh hat Recht. Vergessen Sie nicht, den Cache zu löschen, nachdem Sie eine neue Vorlagendatei hinzugefügt haben! – MilanG

Antwort

0

ich nicht Drupal 6 in ein verwendet haben während, aber von dem, was ich realisierte, Drupal 6's Standard Knoten Vorlagen nicht einen Node-ID-basierten Vorlagenvorschlag haben.

Das bedeutet nicht, dass Sie es nicht von einem benutzerdefinierten Thema aus tun können.

<?php 

function THEMENAME_preprocess_node(&$vars) { 
    $vars['template_files'][] = 'node-' . $vars['nid']; 
} 

?> 

In Ihrem template.php ist das Thema, fügen Sie den obigen Code, den Titelnamen zu ersetzen (oder die Funktion Inhalte zusammenführen, wenn Sie bereits diese Funktion haben). Dies bewirkt, dass Drupal nach der Datei node-123.tpl.php (123, die eine Beispiel-Node-ID ist) prüft und sie anstelle von verwendet.

Da Sie erwähnt haben, dass Sie node/1 oder einen beliebigen Knoten Inhalt verwenden, um ein Login-Formular einzubetten, lassen Sie mich Ihnen sagen, dass dies nicht eine gute Idee ist. Das Login-Formular muss zugänglich sein, wenn sich die Site im Wartungsmodus befindet, und es kann schwierig sein, sie später in verschiedenen Bereitstellungsumgebungen zu verwalten. Dieser Teil ist jedoch für die Frage völlig irrelevant.

+0

Welchen obigen Code sprechen Sie? –

+0

Es war ein PHP-Code und ich hatte vergessen, dafür das richtige Markup zu verwenden. Jetzt behoben. –

+0

Thema Name ist 100Bags, wenn ich versuche, diesen Thema Namen in die Funktion zu setzen, bekomme ich einen Fehler. Ich sollte diese Funktion in template.php setzen, oder? –

Verwandte Themen