J!-Gästebuch, Teil 1: Der Aufbau von Joomla! 1.5 Komponenten

Nun zum Teil 1 meiner kleinen Serie. Beim Aufbau von Joomla! 1.5 Komponenten orientiere ich mich an den Dateien des vierten “Hello World”-Beispiels. Hier die Struktur, die in der ZIP-Datei enthalten ist:

admin/controllers/hello.php
admin/models/hello.php
admin/models/hellos.php
admin/tables/hello.php
admin/views/hello/tmpl/form.php
admin/views/hello/view.html.php
admin/views/hellos/tmpl/default.php
admin/views/hellos/view.html.php
admin/admin.hello.php
admin/controller.php
admin/install.sql
admin/uninstall.sql
site/models/hello.php
site/views/hello/tmpl/default.php
site/views/hello/view.html.php
site/controller.php
site/hello.php
hello.xml

Das sind schonmal sehr viele Dateien, oder? Die ganzen leeren index.html-Dateien habe ich nicht eingetragen. In jedem Verzeichnis sollte aus Sicherheitsgründen immer eine leere index.html-Datei sein, damit sichergestellt ist, dass das Verzeichnis nicht durchsucht werden kann.

Die Komponente ist grundsätzlich mal in zwei Verzeichnisse aufgeteilt: site und admin. Man könnte auch Frontend und Backend sagen. Das Verzeichnis site enthält die Dateien, welche für die Website benötigt werden. Unter admin befinden sich alle Dateien, die zur Verwaltung im Administrator verwendet werden. Wichtig ist, dass z.B. Bilder, die in der Website und im Administrator verwendet werden im site Verzeichnis liegen, da das administrator-Verzeichnis aus Sicherheitsgründen durch ein zusätzliche Webserver Authentication (siehe .htaccess) geschützt sein sollte.

site/hello.php
im site-Verzeichnis finden wir eine hello.php. Diese Datei ist der Einstieg für Joomla! in die Komponente. Wenn die Komponente gaestebuch heißt, dann muß diese Datei dementsprechend gaestebuch.php genannt werden. Der Dateiname setzt sich immer aus dem Namen der Komponente und der Erweiterung .php zusammen: <Komponente>.php.

site/controller.php
Im gleichen Verzeichnis befindet sich noch unserer Haupt-Controller (controller.php). Diese Datei bearbeitet die Benutzereingaben (Bei Websites die Anfragen an den Webserver), ändert die Daten im Model und gibt das Ergebnis an das Ausgabescript (View) weiter.

site/models/hello.php
Zusätzlich gibt es noch den Unterordner models, indem sich die Datenmodelle befinden. Im “Hello World”-Beispiel gibt es nur ein Datenmodell.

site/views/hello/view.html.php
Das Verzeichnis views enthält zusätzlich für jede Ansichtsmöglichkeit ein Unterverzeichnis. Im admin-Verzeichnis gibt es beispielsweise eine Übersicht alles “hellos” und die Detailansicht “hello”. Die Datei view.html.php erhält die notwendigen Daten vom Controller und gibt diese an das Template weiter.

site/views/hello/tmpl/default.php
Das Template enthält den HTML-Code und gibt die Daten aus. Dort befindet sich auch die Darstellungslogik (z.B. for-Schleifen um mehrere Datensätze auszugeben).

admin/admin.hello.php
Das admin-Verzeichnis hat fast die gleiche Struktur. Nur die Einstiegsdatei heißt in diesem Fall admin.hello.php. Beim Gästebuch heißt die Datei admin.gaestebuch.php. Der Aufbau des Dateinamen sieht daher wie folgt aus: admin.<Komponente>.php.

admin/install.sql und admin/uninstall.sql
Zusätzlich befinden sich noch die SQL-Dateien im Admin-Verzeichnis. Diese Dateien enthalten (wie die Erweiterung .sql schon vermuten läßt) den SQL-Code zum erzeugen bzw. zum Löschen von Tabellen in der Datenbank.

hello.xml
Zu guter Letzt haben wir noch die XML-Datei. Der Dateiname setzt sich ebenfalls wieder aus dem Namen der Komponente und der Erweiterung .xml zusammen: <Komponente>.xml. Dort sind Meta-Informationen und auch die Installations bzw. Deinstallations-Anweisungen für Joomla! enthalten.

Im nächsten Teil werde ich mich mit der Datenstruktur und des Models beschäftigen.

Inhaltsübersicht:

Teil 1: Der Aufbau von Joomla! 1.5 Komponenten
Teil 2: Datenstruktur und Funktionen des Gästebuchs
Teil 3: Die Einträge ausgeben
Teil 4: Neue Einträge eintragen
Teil 5: Die Administration der Einträge
Teil 6: Die Sicherheit überprüfen

Dieser Beitrag wurde unter Joomla! abgelegt und mit , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Eine Antwort auf J!-Gästebuch, Teil 1: Der Aufbau von Joomla! 1.5 Komponenten

  1. Georg sagt:

    Wann oder wo finde ich die anderen Tutorials?

Hinterlasse eine Antwort

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

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>