[Gelöst] PHP-Code TRUE für bestimmte Nodes aus einem Array?
Eingetragen von ananda (35)
am 25.05.2010 - 16:53 Uhr in
am 25.05.2010 - 16:53 Uhr in
Hallo,
Ich möchte die Hauptlinks nur für einige Nodes einblenden. Gleichzeitig möchte Ich auch einen bestimmten Inhaltstyp ausblenden, sprich die Option "Nur auf den aufgelisteten Seiten anzeigen." kann Ich in dem Fall nicht verwenden.
Über den folgenden Code habe versucht mit Hilfe eines Arrays nur Node 5 und 3 mit Hauptlinks anzuzeigen, was aber nicht funktioniert:
<?php
//Node bestimmen
if (arg(0) == 'node' && is_numeric(arg(1)) ) {
$nid = arg(1);
}
$array = array(5, 3);
foreach ($array as $arrnod) {
if ($nid == $arrnod)
return TRUE;
}
else {
return FALSE;
}
?>
Wie erreiche Ich, dass mit Hilfe eines Arrays nur bei bestimmten nodes die Hautplinks angezeigt werden?
Im nachfolgendem Code habe Ich es geschafft nur im node/5 die Hauptlinks anzuzeigen. Leider misslingt mir das aber in einem Array wie im oberen Code zu sehen.
<?php
//DIESER CODE FUNKTIONIERT:
if (arg(0) == 'node' && is_numeric(arg(1)) ) {
$nid = arg(1);
}
if ($nid == 5) {
return TRUE;
}
else {
return FALSE;
}
?>
Gruss ananda
- Anmelden oder Registrieren um Kommentare zu schreiben
Der code müsste wie folgt
am 25.05.2010 - 17:07 Uhr
Der code müsste wie folgt lauten:
<?php
//Node bestimmen
if (arg(0) == 'node' && is_numeric(arg(1)) ) {
$nid = arg(1);
}
$array = array(5, 3);
foreach ($array as $key => $arrnod) {
if ($nid == $arrnod)
return TRUE;
}
else {
return FALSE;
}
?>
Beste Grüße,
Niko
Jetzt funktioniert es
am 25.05.2010 - 20:57 Uhr
Danke! Der Code hat zuerst nicht funktioniert, nachdem Ich aber die else Anweisung entfernt/verändert habe, hat es funktioniert.
Hier der Code, der verhindert dass bspw. in Hauptlinks bestimmte nodes und nodes mit dem Inhaltstyp 'product' angezeigt werden:
<?php
//Node bestimmen
if (arg(0) == 'node' && is_numeric(arg(1)) ) {
$nid = arg(1);
$node = node_load(array('nid'=>arg(1)));
}
// Bestimmen wo die Hauptlinks nicht angezeigt werden sollen
$array = array(3, 5);
foreach ($array as $key => $arrnod) {
if (($nid == $arrnod) || ($node->type == 'product'))
return FALSE;
}
return TRUE;
?>