Bislang musste bei der Arbeit mit Containern die zur Darstellung genutzte Vorlage immer als eigenständige Datei im Dateisystem angelegt werden. D.h. wenn innerhalb eines Artikels z.B. die News aus einer bestimmten Kategorie angezeigt werden sollten, so musste dafür eine neue Vorlage angelegt werden, in der die Darstellung dieser Newsauflistung festgelegt wurde. Wenn sehr intensiv mit den Containern gearbeitet wird und viele Elemente eine unterschiedliche Darstellung verwenden, dann konnte es also schnell eine größere Anzahl an Vorlagen geben, die u.U. nur an einer einzigen Stelle zum Einsatz kommen.
Dies ist mit den neuen "Inline Templates" nun Vergangenheit, denn die Inline Templates erlauben erstmalig die Definition einer Vorlage direkt an der Stelle, von der aus der jeweilige Container aufgerufen wird.
Auf der Startseite der Webseite sollen die neuesten 5 Artikel aus der Artikelkategorie mit der ID "6" angezeigt werden. Dies könnten z.B. die neuesten 5 Pressemeldungen eines Unternehmens sein.
Bisher musste dafür stets der folgende Containeraufruf verwendet werden, wobei im Parameter "template" die zur Darstellung zu nutzende Vorlage angegeben wurde:
Dann musste die Vorlage "/themes/standard/pressemeldungen.html" angelegt und mit Inhalten gefüllt werden. Die Inline Templates erlauben nun zukünftig auch folgendes:
Hier wird zwar weiterhin der gleiche Container aufgerufen, allerdings wird dem System mit dem Zeichen "#" am Anfang des Parameters "template" mitgeteilt, dass ein Inline Template geladen werden soll. D.h. die zu verwendende Vorlage wird direkt oberhalb des Containers definiert. Als Name wurde dabei "pressemeldungen" gewählt.
Das System sucht dann nach einem Inline Template mit dem Namen "pressemeldungen", liest den zwischen "{cp:template id="pressemeldungen"}" und "{/cp:template id="pressemeldungen"}" enthaltenen HTML-Quellcode ein und verarbeitet diesen wie bei einer normalen Vorlage.
Durch dieses Inline Template ist dann zukünftig bei der Bearbeitung der Startseite stets sichtbar, welche Vorlage für diesen Container genutzt wird und es muss keine zusätzliche Vorlage als Datei im Ordner "/themes/[NAME DES VORLAGENSETS]/" abgelegt werden, wenn diese Vorlage nur auf der Startseite genutzt wird.
Parameter wie "cache" (zum Zwischenspeichern der Inhalte) oder "ajax" (zum Nachladen von Inhalten) können auch bei der Nutzung der Inline Templates weiterhin im Containeraufruf verwendet werden.