Verändern von Komponenten Standard-Layouts

Komponenten Template DesignSehr oft passt das gelieferte Layout von Komponenten nicht unbedingt zu dem Erscheinungbild der Seite selbst, wo diese genutzt werden sollen. Zwar liefern die meisten der Programmierer die .css Dateien und die Source Dateien mit, aber bei dem nächsten Update der Komponente sind diese wieder verschwunden und man muss die Änderungen wiederholt einpflegen und anpassen. Es geht aber auch anders. Das Template Layer Modell von Joomla macht es möglich.

Durch das Template Layer Model seit Joomla 1.5x kann man Anpassungen an Komponenten etc. machen welche auch bei einem Update der Komponenten erhalten bleiben. Dazu muss man die Views der Komponenten nur in den Template Ordner des aktuell genutzten Template verschieben. Nehmen wir als Beispiel die Joomla Standard Komponente com_weblinks.

Die Template Dateien für die Komponenten befinden sich immer in dem Verzeichnis: /JoomlaRoot/components/Komponenten_Verzeichnis/views/xxxx/tmpl/

Als erstes legt man unter dem Ordner /JoomlaRoot/templates/Genutztes_Template/html/ einen neuen Ordner mit dem Namen der Komponente an, in diesem Fall /com_weblinks/. Je nachdem welche View-Modelle mann für diese Komponente verändern will, legen wir darunter dann die jeweiligen View-Ordner an – wir nehmen hier einmal alle 3 Ordner /categories, /category und /weblink. In diese 3 Ordner kopieren wir jetzt die Sourcedateien aus der Komponente, welche für die Darstellung verantwortlich sind. Diese befinden sich in den Ordner:

  • /JoomlaRoot/components/com_weblinks/views/categories/tmpl/
  • /httpdocs/components/com_weblinks/views/category/tmpl/
  • /httpdocs/components/com_weblinks/views/weblink/tmpl/

Wenn wir jetzt diese Dateien, welche wir in den Template Ordner kopiert haben, verändern, so wird das Template für diese Komponente aus unseren modifizierten Ordnern geholt und angezeigt. Selbst bei einem Update des Joomla Systems bleiben diese Veränderungen erhalten udn müssen nicht nachträglich immer wieder eingepflegt werden.

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert