Folgende Befehle z.B. rufen eine CMS Seite (hier AGBs) auf:
[{oxifcontent ident=“oxagb” object=“oCont”}]
<a id=“oxagb” href = “[{ $oCont->getLink() }]?plain=1”>LINK zu den AGBs</a>
[{/oxifcontent}]
Durch den zusätzlichen Parameter [B]plain=1[/B] wird die Seite ohne Sidebar, ohne Footer usw. angezeigt:
Ich möchte nun bei einem Aufruf mit Parameter [B]plain=1[/B] zusätzlich noch das Layout (CSS) grundlegend verändern. Denkbar z.B. in der base.tpl zusätzlich einbauen: [{if $plain}] [{oxstyle include=“css/mein.css”}] [{/if}]
Das $plain ist natürlich in dieser Form in diesem Template nicht verfügbar.
Alle Suchen hier im Forum, im Quellcode bzw. mittels [{debug}] haben mir bisher nicht weitergeholfen, da es sehr schwierig ist nach dem Begriff [B]plain[/B] zu suchen.
So habe ich auch noch nicht gefunden, wo dieser Parameter im Quellcode eigentlich eingelesen wird.
Wie kann ich in Templates abfragen, ob eine Seite im Plain-Modus erzeugt wird ?
es gibt ein Template, welches content_plain.tpl heiß, dieses wird dann für die Content Seiten benutzt wenn du sie mit ?plain=1 aufrufst.
Ich würde aber auch mit ?plain=1 aufpassen, da OXID hier und da mal wieder seine eigenen Parameter an die Links anfügt, so dass $oCont->getLink() }]?plain=1 dann nur noch wirres Zeug wie http://www.dein-shop.de/seite/?oxid-parameter=xxxx&oxid-parameter-2=yyyy?plain=1 ergibt und dein ?plain=1 nicht mehr von OXID erfasst wird.
Wird für „plain“-Seiten nicht einfach das Template /out/tpl/layout/popup.tpl aufgerufen? Hier könntest du alles ablegen, was in den halbleeren Seiten erscheinen soll.
Vielen Dank für die schnellen Antworten, alle zusammen brachten die Lösung meines Problems:
[ul]
[li]content_plain.tpl wird auch aufgerufen, wenn der Parameter [B]plain=1[/B] [U]nicht[/U] gesetzt ist - z.B. bei den CMS-Seiten im Footer (Impressum, AGB, Datenschutz usw.)
[/li][li]popup.tpl wird hingegen nur aufgerufen, wenn [B]?plain=1[/B] ist
[/li][li]beim Generieren der URL musste ich nur aufpassen, ob das Popup unter SSL aufgerufen wird - dann ist [B]&plain=1[/B] zu setzen, da zuvor die ?force_sid von Oxid geliefert wird
[/li][/ul]
Vielen Dank nochmals !
Euer Honeypie
[QUOTE=vanilla thunder;73901]
Ich würde aber auch mit ?plain=1 aufpassen, da OXID hier und da mal wieder seine eigenen Parameter an die Links anfügt[/QUOTE]
Habe jetzt eine Lösung gefunden, die so hoffe ich, immer funktioniert: