Login Check für CMS-Seiten Magento

Wie kann man CMS-Seiten abhängig davon gestalten, ob ein User eingeloggt ist oder nicht? Im Grunde relativ einfach: Man erstellt eine phtml-Datei, die man dann in der CMS-Seite einbindet. In dieser Datei kann man dann die Funktion isLoggedIn verwenden, die zurückgibt, ob der User eingeloggt ist oder nicht und so verschiedene Ausgaben erzeugen, z.B. verschiedene statische Blöcke Aufrufen.

 

Ein beispielhaftes Vorgehen: Die phtml-Datei erstellt man z.B. als 

 

\app\design\frontend\econcess\default\template\page\html\service_sidebar.phtml

 

mit dem Inhalt (hier noch Unterscheidung nach Storeview / Sprache):

 

 

$store_code = Mage::app()->getStore()->getCode();

if ($store_code == 'de') {

                if (Mage::getSingleton('customer/session')->isLoggedIn()) {

                               echo $this->getLayout()->createBlock('cms/block')->setBlockId('service_submenu')->toHtml();

                } else {

                               echo $this->getLayout()->createBlock('cms/block')->setBlockId('service_submenu_logged_out')->toHtml();

                }

} else {

                if (Mage::getSingleton('customer/session')->isLoggedIn()) {

                               echo $this->getLayout()->createBlock('cms/block')->setBlockId('service_submenu_eng')->toHtml();

                } else {

                               echo $this->getLayout()->createBlock('cms/block')->setBlockId('service_submenu_eng_logged_out')->toHtml();

                }             

}

 

 

Wir können so nun abhängig von Sprache und Login-Zustand verschiedene statische Blöcke einbinden (service_submenu, service_submenu_logged_out, service_submenu_eng, service_submenu_eng_logged_out).

 

Die Datei service_sidebar.phtml binden wir nun noch ein im Layout-Update der gewünschten Seite mit 

 

 

<reference name="left_first">

               <block type="core/template" name="service_sidebar" template="page/html/service_sidebar.phtml"/>

</reference>

 

 

Das war's! Getestet in Magento CE 1.9.1.0.

AUSGEZEICHNET

Ein von uns entwickeltes Webportal wurde mit dem Humboldt-Preis für Nachhaltigkeit ausgezeichnet.

PROJEKT

Nachhaltige Sportveranstaltungen in Deutschland

AUSZEICHNUNG

Wissenschaftliche Auszeichnung
in Kooperation mit der Deutschen Sporthochschule Köln

Projekt Webportal Mockup