[Gelöst] Seitenleiste auf Inhalt prüfen
am 19.02.2009 - 18:27 Uhr in
Hi.
Gibt es eine Möglichkeit, wie ich die z. B. rechte Seitenleiste auf Inhalt prüfen kann?
Ich habe folgendes vor, ich möchte z. B. bei einem Inhalt (inkl. aller Unterpunkte) alle Blöcke ausblenden lassen (das sollte ja ohnehin gehen) nun möchte ich, wenn alles ausgeblendet ist, ein anderes Layout verwenden (passe ich direkt in der page.tpl.php an.
Bsp.
Startseite = 2 Spalten Layout, links Inhalt rechts Blöcke
Inhaltsseite_5 = keine Blöcke, also Abfrage der rechten Seitenleiste ergibt 0 dementsprechend habe ich statt zwei Div-Boxen nur 1 breite.
Hoffe, das ist verständlich, hehe.
Benötige somit nur einen Tipp, wie ich das Abfragen, damit ich mit dem Wert arbeiten kann.
Danke und Gruß
- Anmelden oder Registrieren um Kommentare zu schreiben
Keine eine Ahnung
am 21.02.2009 - 23:14 Uhr
wie ich prüfen kann ob eine Seitenleiste nen Block enthält oder wie ich das anders umsetzen kann (ohne das Template zu wechseln wie mir das vorgeschlagen wurde)?
Gruß
Wenn die rechte Sidebar in
am 27.02.2009 - 17:26 Uhr
Wenn die rechte Sidebar in deiner page.tpl.php via $sidebar_right ausgegeben wird, diese Variable einfach auf Inhalt prüfen...
P.S.:
Im Zweifelsfall: Behalte den Euro und spende ihn UNICEF. ;-)
$left und $right?
am 27.02.2009 - 17:26 Uhr
Wenn nicht dann habe ich was mißverstanden.
<?php if ($right != "") { ?>
<div id="right">
<?php print $right ?>
</div>
<?php } ?>
Oh man, oh man
am 27.02.2009 - 17:52 Uhr
das ist mir jetzt aber mehr als peinlich.
Erst einmal danke für eure Lösungsvorschläge, aber ich merke gerade so wie ich mir das gedacht habe geht es gar nicht O_o.
Auf www.fahrzeuge.net habe ich ja links und rechts eine Spalte, jetzt wollte ich das so machen, dass ich im Quelltext abfrage: Wenn keine Blöcke in der rechten Seitenleiste, dann 2 ansonsten 1 große box.
Dann müsste ich ja immer bei jedem Block den ich reinsetze die Seiten ergänzen, dass der da und da nicht angezeigt werden soll (soll ja nicht nur auf einer Seite so sein).
Gibt es eine alternative Abfragemöglichkeit, wie ich das je Seite machen kann (Bsp ich lege eine neue Seite an und sage Rückgabewert = 2, somit weiß ich im Code muss ich nur schauen ob der Rückgabewert 2 ist). Ansonsten würde ich jetzt sogar über den Titel gehen und folgende Abfrage erstellen
if ($title ="Marktplatz") {
print "<div box x 1";
} else {
print "<div box x 2";
}
Wobei ich dann jede Seite in die If-Abfrage mit reinnehmen muss, oder ich mach ne Switch und lass mir da nen Rückgabewert geben, hmm *-*.
Also gibt es für das Problem eine Lösung (Modul) oder muss man sich halt was zurecht frickeln oder stell ich die Frage so dumm, das man das Problem nicht so recht versteht :-D.
Gruß und thx
PS.
Das mit der Spende an Unicef muss ich mir überlegen, die mussten ganz schön an Vertrauen einbüßen ;), aber es gibt ja noch Alternativen, hehe.
So, der Drops ist gelutscht,
am 01.03.2009 - 01:03 Uhr
So, der Drops ist gelutscht, sag ich immer so schön.
Habe jetzt eine Möglichkeit gefunden, ob es die Optimale ist mag ich anzweifeln, aber es geht. Ich habe es nun wie folgt umgesetzt (für alle die es interessiert):
In die template.php folgende function reingepackt:
<?php
function test_tall_page() {
switch(menu_get_active_title()) {
case "1spalte":
return "1";
break;
default:
return "0";
}
?>
und in der page.tpl.php dann halt entsprechend die Abfrage:
<?php if (test_tall_page() != 1) { ?><div id="maincontent"><?php } else { ?><div id="maincontentwidth"><?php } ?>
so gehts, hehe. Muss halt nur in der template.php immer die weiteren Seiten ergänzen, auch wenn ich mir dafür noch ne bessere Alternative suchen werde.
Gruß