Nodevariablen im Block verfügbar machen
am 06.04.2009 - 11:13 Uhr in
Hallo!
Ich habe eine zweisprachige Drupalseite (Drupal 6). Bei dieser Seite gibt es natürlich auch Übersetzungen. Ich möchte die Sichtbarkeit des Sprachumschalters abhängig davon machen, ob eine Translation da ist, oder nicht.
Nun steht ja innerhalb des Blockes das Node-objekt nicht zur Verfügung, allerdings kann man über diesen Umweg die gewünschten Informationen erhalten:
if (arg(0) == 'node' && is_numeric(arg(1))) {
$nid = arg(1);
$node = node_load(array('nid' => $nid));Dummerweise sind lesbare URL's aktiviert, weswegen ich nicht an die Node-ID herankomme, ich hab auch schon versucht, an den Path-Alias aus der URL heranzukommen und diesen dann über die url_alias Tabelle in der Datenbank die Node-Id zu erhalten, das finde ich aber etwas umständlich und kann mir auch vorstellen, dass da einiges schief gehen kann.
Gibt es da eventuell noch andere Möglichkeiten?
- Anmelden oder Registrieren um Kommentare zu schreiben

Dein Code liefert doch
am 06.04.2009 - 11:35 Uhr
Dein Code liefert doch bereits im Block die nid einer Node. Was ist nun noch das Problem?
Apropos Dein Code.
<?phpif (arg(0) == 'node' && is_numeric(arg(1)) && arg(2) == '') {
$node = node_load(array('nid' => arg(1));
}
?>
Dummerweise sind lesbare URL's aktiviert, weswegen ich nicht an die Node-ID herankomme
Auch wenn lesbare URL's nicht aktiviert sind aendert sich die Situation nicht.
------------------------
Quiptime Group
oder einfach <?phpif ($node
am 07.04.2009 - 13:46 Uhr
oder einfach
<?phpif ($node = menu_get_object()) {
print 'blubber';
}
?>
verwenden
--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.de
SirFiChi ist auch dein Halbgott.