Drupal 7 Logo mit Theming

Moshe Weitzman sprach über die komfortableren Möglichkeiten beim Theming mit Drupal 7 und rief damit große Begeisterung hervor. Dies betrifft das Einfügen von Content ins Seiten-Template, die klarere Verwendung von Blöcken und neue Caching-Möglichkeiten.

Content

Content ist ein render-barer Array. Will man die Default-Ausgabe des Contents ändern, braucht man nicht mehr sämtliche Teile der Ausgabe selbst zu themen (mit all den Fehleranfälligkeiten für die Behandlung von Eingabefiltern). Mit neuen Funktionen besteht so die Möglichkeit, einzelne Teile auszublenden oder die Reihenfolge zu ändern. Direkt in node.tpl.php verwendet man folgende Funktionen:

hide($content['links']);
hide($content['comments']);
print render($content);
print render($content['comments']);
print render($content['links']);

Das Beispiel beschreibt also, wie Links am Ende des Contents – noch unterhalb der Kommentare! – ausgegeben werden.

Caching

Durch den Array besteht auch die Möglichkeit, nur spezielle Teile von Webseiten zu cachen. Cache-Id ist interessanter Weise die DB-Query, damit das Chaching auch über verschiedene Quellen hinweg funktioniert.

Blöcke und Regionen

Verschiedene Fragmente von Webseiten werden nun als Blöcke organisiert, so z.B. Fuß und Header. um diese geeignet positionieren zu können, wurden noch mehr Regionen zur PLatzierung der Blöcke hinzugefügt.

Tipps

Moshe gibt ferner folgende Tipps für des Arbeiten mit den Neuerungen:
- „Return render() array. not a string“
- „Alter at the earliest possible moment to have all the magic thats works on that“