Erweitern bestehender Seiten
Oft sollen nur zusätzliche Einblendungen in bestehenden Seiten gemacht werden und der Rest der Seite kann unverändert ins Kundenprojekt übernommen werden. In diesem Fall sollte unbedingt zuerst geprüft werden, ob an der gewünschten Stelle nicht bereits eine Zone eingebaut ist. Die Zonen bieten die Möglichkeit an, über das CMS bestehende Seiten durch Hinzuzfügen von CMS Modulen zu erweitern. Diese Möglichkeit hat den Vorteil, das die Weiterentwicklung der Seite durch neue Referenzimplementierungen nicht gehindert ist.
Sie erkennen Zonen in der View am Aufruf von
@Html.Raw(Centauri.Shop.Pages.Zone.Find("IDderZone").HTML)
Der in der Zeile angegebene IDderZone kann nun in der Admin benutzt werden, um die Erweiterungen einzupflegen.
In der obenstehenden Implementierung muss die Zone unbedingt in der Shop-Datenbank angelegt sein, damit die Abfrage mit Find() keine Nullreferenz zurückliefert und der Zugriff mit .HTML dann eine Exception liefert.
In der Praxis wird die Minimalimplementierung oben in dieser Form verwendet, damit ein Standard-Inhalt vorgesehen werden kann.
@if( Centauri.Shop.Pages.Zone.Find("IDderZone") != null )
{
@Html.Raw(Centauri.Shop.Pages.Zone.Find("IDderZone").HTML)
}
else
{
<h1>Willkommen</h1>
<p>Klicken Sie hier, um die Funktion zu <button id="funcSample">Starten</button></p>
}