it-swarm.com.de

Wie kann ich einen absoluten Weg zu einem Thema finden?

Gibt es eine Drupal - Funktion, die den absoluten Themenpfad zurückgibt? Oder gibt es eine kanonische/grundlegende Übungsmethode, um den Themenpfad korrekt zurückzugeben?

Was ich bisher gefunden habe, ist Folgendes:

<?php
// @file template.php
$template_path = DRUPAL_ROOT . drupal_get_path('theme', 'foo');

Ich möchte den Vorlagenpfad in einer template.php-Datei wie folgt benötigen:

<?php
$template_path = DRUPAL_ROOT . drupal_get_path('theme', 'coo');
// ...
// Check file exists etc
require_once $template_path;
6
chrisjlee

Die Funktion base_path() würde das Basisbad der Installation Drupal) zurückgeben

Gibt den Basis-URL-Pfad der Installation Drupal) zurück. Zumindest wird immer standardmäßig/verwendet.

und path_to_theme() gibt den Pfad zum aktuellen Thema zurück.

Kehren Sie zum aktuellen Themenelement zurück.

Es kann auf das aktive Thema oder das Modul verweisen, das eine thematische Implementierung behandelt. Wenn es beispielsweise im Rahmen eines Theming-Aufrufs aufgerufen wird, hängt es davon ab, wo die Theming-Funktion ausgeführt wird. Wenn es von einem Modul implementiert wird, zeigt es auf das Modul. Wenn es aus dem aktiven Thema implementiert wird, zeigt es auf das aktive Thema. Wenn es außerhalb des Bereichs eines Themenaufrufs aufgerufen wird, zeigt es immer auf das aktive Thema.

18

Die Antwort von Mohammed Shameem ist richtig, aber wenn Sie wirklich nach dem richtigen Weg suchen (dem Drupal Weg), um eine benutzerdefinierte Vorlage zu rendern, verwenden Sie nicht include() oder require_once(). Verwenden Sie stattdessen das Themensystem Drupal). Das Ändern der Ausgabe von etwas, das bereits eine Vorlage enthält, ist einfach. Weitere Informationen finden Sie unter Überschreiben der themenbezogenen Ausgabe Wenn es noch keine Vorlage gibt, müssen Sie etwas über hook_theme lernen, Ihre eigenen Vorlagen registrieren und Arrays rendern.

2
marcvangend

Sie können dieses Modul ausprobieren: System Stream Wrapper

Es bietet Wrapper (Beispiele von der Modul-Site):

  • modul: //file/icons/text-plain.png

  • thema: //bartik/screenshot.png

  • thema: //default/screenshot.png

  • profil: //minimal/minimal.info

  • profile: //current/standard.info (profile: // current wird auf das aktive Profil für die Site erweitert)

  • bibliothek: //ckeditor/images/spacer.gif (funktioniert nur, wenn das Bibliotheksmodul aktiviert ist)

0
Paul Nike