Software-Engineering
Wer auf der Suche nach einer “straight-forward” Einführung in Joomla und die möglichen Anpassungen ist, ohne dauernd darauf hingewiesen zu werden, dass “schon ein paar HTML-Kenntnisse notwendig sind” und nicht für jede Kopier-Aktion einen Screenshot braucht, ist hier richtig. Der Artikel gibt einen schnellen aber dennoch umfassenden Einstieg in die Anpassungenmöglichkeiten von Joomla.
Eine gute Grundlage für diesen Abschnitt gibt z.B. www.dosonaro.com/joomla-temlate-erstellen/. Im Schnelldurchgang:
Um ein Template anzupassen, ist die Datei <templateDir>/index.php zu bearbeiten. Hier kann das HTML wie gewohnt bearbeitet werden.
Neben den HTML-Anpassungen möchte man natürlich auch dynamische Inhalte bzw. Joomla-Funktionalitäten in das Template einbinden. Joomla stellt dafür unter dem eigenen Namensraum jdoc einige Operationen zur Verfügung. Dabei ist die wichtigste Operation wohl das “include”:
Diese Zeile bindet ein Modul bzw. mehrere Module ein (Warum das Attribut “name” heißt, ist wahrscheinlich historisch begründet). Hier kommt die oben erstelle Liste mit positions ins Spiel (jetzt wird auch die Inkonsistenz in der Namensvergabe deutlich): in das Attribut “name” kann man einen der oben definierten Werte angeben. Es werden dann alle Module angezeigt, die diesem Namen bzw. Position bzw. “moduleContainerName” zugewiesen sind.
Die folgende Grafik verdeutlicht den Zusammenhang der Werte:
Ein Modul kann also genau einer gegebenen Position zugewiesen werden. Diese Position kann man wiederum beim include im HTML über das Attribut “name” referenzieren. An der referenzierten Stelle im HTML wird dann das Modul bzw. die Module, die dieser Position zugeordnet sind, angezeigt.
Sind mehrere Module einer Position angezeigt, kann man die Module innerhalb einer Position sortieren. Dies geschieht entweder beim Bearbeiten eines Moduls (Feld “Order”) oder in der Übersicht der Module.
Joomla verfolgt auch bei den Menüs einen eigenen Ansatz, der erst auf den zweiten Blick richtig gut wird: Die Menüstruktur und Inhalte sind bei Joomla getrennt. Dabei geht man nach folgendem Schema vor:
Es ist also möglich, einen Beitrag in mehreren Menüs unter verschiedenen Titeln zu verwenden!
Obwohl in der Administrationsoberfläche “Show Title” aktiviert ist, wird dieser nicht angezeigt. Dies kann dadurch behoben werden, dass man im HTML-Template den jdoc-include-Tag um eine Angabe erweitert:
<jdoc:include type="modules" name="infoBoxes" style="xhtml" />
Durch das zusätzliche Attribut style=”xhtml” wird der Titel des Moduls angezeigt. Warum das so ist: weiß ich auch nicht
Wenn man alle Menüs der Standard-Installation gelöscht hat, beispielsweise um Ordnung zu schaffen, erhält man beim Aufruf der Startseite einen 404. Dies kann man beheben, in dem man in irgendeinem Menü irgendeiner Seite (meistens also im Meta-Menü oder Main-Menü) bei einer Seite das Häckchen für “Startseite” setzt (Menues – Gewünschtes Menü anklicken – Vor Eintrag Checkbox aktivieren – oben rechts auf “Standard”).
Die .htaccess-Datei muss die Rechte 755 haben. Außerdem ist zu beachten, dass bei manchen Hostern die Angabe BaseDir angegeben sein muss. Hier darauf achten, ob Joomla in einem Unterverzeichnis läuft und dieses dort ggf. angeben.
2 Kommentare
Wenn Dir der Artikel gefallen hat, Du Anregungen ergänzen möchtest oder einen Fehler gefunden hast, freue ich mich über Deinen Kommentar!