Magento – Einen statischen Block auf bestimmten Seiten aber auf bestimmten Seite nicht

Bild

Wir benötigten zuletzt eine Lösung, um einen kleinen Banner mit einer Kundeninformation auf allen Seiten anzeigen zu lassen aber NICHT im Checkout. Im Warenkorb hingegen sollte er auftauchen.

Einen Beitrag mit einem ähnlichen Thema (Info nur auf der Homepage auftauchen lassen aber auf keiner anderen Seite LINK) hatten wir schon, dieser Ansatz ist aber ein anderer.

Wir wollen hier einen Streifen oben am Rand des Bildschirms haben, dessen Inhalt aus einem Statischen Block kommt. Er soll frei editierbar sein und das ohne auf CSS-Dateien zugreifen zu müssen. Die Anzeige ist ähnlich wie der Demo-Store-Hinweis von Magento. Wir arbeiten hierfür mit verschiedenen Dateien.

  1. Erstellen die Datei
    app/design/frontend/[Eigenes Theme]/[ebenso]/template/page/html/site-info.phtml
  2. app/design/frontend/[Eigenes Theme]/[ebenso]/template/page/html/header.phtml
  3. app/design/frontend/rwd/default/layout/page.xml
  4. app/design/frontend/rwd/default/layout/checkout.xml

Die erste Datei legen wir neu an und schreiben folgenden Inhalt rein:

Die zweite Datei öffnen wir und schreiben

an eine uns beliebige Stelle (an der der Block auftauchen soll). Wir haben sie ganz oben vor

eschrieben. Dies lädt die erstgenannte Daten – aber erst nach der nächsten Änderung.

In der dritten Datei suchen wir nach

und fügen dort folgende Zeile darunter ein

Dies sorgt dafür, dass der HTML-Block geladen wird. Nun würde dieser Block auf jeder Seite geladen werden. Da wir aber wollen, dass er nicht im Checkout geladen wird, müssen wir noch

die vierte Datei anpassen. Hier wird dann nach

gesucht und dieser Code eingefügt

Wir haben dies nach

gemacht.

Hierdurch sagen wir dem Shop, dass er im One Page Checkout diesen Block nicht laden soll. Somit erfolgt auch keine Ausgabe. Die beiden letzten Änderungen könnten übrigens auch in der eigenen local.xml gemacht werden. Und selbstverständlich kann der genannte Code auch an jeder anderen beliebigen Stelle eingebaut werden.

Nun fehlt nur noch der Statische Block. Wir erstellen nun einen solchen mit dem Code „site-header-info“. Hier kann man nun alles reinschreiben was man will. Da wir keine CSS-Datei ändern wollen, sondern alle Änderungen aus dem Statischen Block vornehmen wollen, könnte ein möglicher HTML-Code für den Block so aussehen

Sobald man den Block aktiviert, wird der Block im Shop angezeigt. Deaktiviert man ihn wieder, ist der Block komplett unsichtbar.

Genutzt in Magento Version 1.9 Kommentare? Ergänzungen? Hinweise? Gerne!

Facebooktwitterredditpinterestlinkedinmailby feather
Dieser Beitrag wurde unter Magento Design veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.