Joomla 1 5 Handbuch

321
Inhaltsverzeichnis Vorwort Zur zweiten Auflage Für wen ist dieses Buch? Was erwartet Sie? Wie kann das Buch gelesen werden? Typographie Danksagung 1 Einleitung 1.1 Content-Management 1.2 Die Geschichte von Joomla! 1.3 Weiterentwicklung zu Version 1.5 1.4 Open Source 1.5 Einige Grundbegriffe 1.6 Die Technik 1.7 Wie entsteht eine Seite? 1.8 Einsatzmöglichkeiten 1.9 Ein Blick über den Tellerrand 1.10 Joomla!-Seiten 1.11 Wichtige Ressourcen im Netz
  • date post

    11-Jan-2015
  • Category

    Technology

  • view

    29.647
  • download

    13

description

 

Transcript of Joomla 1 5 Handbuch

Page 1: Joomla 1 5 Handbuch

Inhaltsverzeichnis

Vorwort

Zur zweiten Auflage

Für wen ist dieses Buch?

Was erwartet Sie?

Wie kann das Buch gelesen werden?

Typographie

Danksagung

1 Einleitung

1.1 Content-Management

1.2 Die Geschichte von Joomla!

1.3 Weiterentwicklung zu Version 1.5

1.4 Open Source

1.5 Einige Grundbegriffe

1.6 Die Technik

1.7 Wie entsteht eine Seite?

1.8 Einsatzmöglichkeiten

1.9 Ein Blick über den Tellerrand

1.10 Joomla!-Seiten

1.11 Wichtige Ressourcen im Netz

2 Installation

Page 2: Joomla 1 5 Handbuch

2.1 Systemvoraussetzungen

2.2 Installation unter Windows

2.2.1 XAMPP

2.2.2 Joomla!-Dateien kopieren

2.3 Installation unter Linux

2.3.1 XAMPP

2.3.2 Joomla!-Dateien kopieren

2.4 Installation unter Mac OS X

2.4.1 XAMPP

2.4.2 Joomla!-Dateien kopieren

2.5 Installationsdialog und Sprachauswahl

2.5.1 Überprüfung der Servereinstellungen

2.5.2 Akzeptieren der Lizenz

2.5.3 Datenbankeinstellungen

2.5.4 Einstellungen für die Datenübertragung

2.5.5 Einstellungen der Seite

2.5.6 Bestätigungsseite

2.6 Ein erster Blick

3 Frontend

3.1 Die Bereiche der Homepage im Überblick

3.1.1 Menüs

3.1.2 Module

3.1.3 Inhalte

3.1.4 Dekoration

3.2 Das Bearbeiten von Inhalten im Frontend

2

Page 3: Joomla 1 5 Handbuch

3.3 Der Editor TinyMCE im Detail

3.3.1 Die Formatiersymbolleisten

3.3.2 Seitenumbruch und Weiterlesen

3.3.3 Links einfügen

3.3.4 Tabellen einfügen

3.3.5 Bilder hochladen und einbinden

3.4 Veröffentlichungsdetails festlegen

3.5 Metadaten

4 Backend

4.1 Der Weg ins Backend

4.2 Eine Übersicht über die Startseite

4.2.1 Kontrollzentrum

4.2.2 Schnellübersicht

4.2.3 Menü

4.2.4 Statusleiste

4.3 Die Bearbeitungsansichten

4.3.1 Die Werkzeugleiste

4.3.2 Listenansicht

4.3.3 Editieransicht

4.3.4 Vorschau

4.4 Organisation der Inhalte

4.5 Hilfe

5 Inhalte erstellen und verändern

3

Page 4: Joomla 1 5 Handbuch

5.1 Neue Inhalte einfügen

5.1.1 Die Beitragsverwaltung

5.1.2 Voreinstellungen treffen

5.1.3 Beitragsspezifische Einstellungen

5.1.4 Ein erster Beitrag auf der Startseite

5.2 Beiträge über das Frontend erstellen

5.3 Bereiche kopieren

5.4 Unterschiedliche Darstellung der Inhalte

5.5 Eigene Bilder einbinden

5.5.1 Hochladen und Einbinden über den WYSIWYG-Editor

5.5.2 Hochladen über die Medienverwaltung

5.6 Statische Inhalte

5.7 Mülltrennung

5.8 Die Joomla!-Installation bereinigen

6 Eine erste Webseite

6.1 Auswahl und Aktivieren des Templates

6.2 Erstellen der Seitenstruktur

6.2.1 Struktur durch Bereiche

6.2.2 Arbeiten mit Kategorien

6.3 Das Menü aufbauen

6.3.1 Die Menü-Verwaltung

6.3.2 Menüeinträge löschen

6.3.3 Einen Menüpunkt erstellen

6.3.4 Arten von Menüpunkten

4

Page 5: Joomla 1 5 Handbuch

7 Das Website-Design

7.1 Warum verwenden wir ein fertiges Template?

7.2 Das Template zurechtbiegen

7.3 Einblick in die Template-Architektur

7.3.1 Die HTML-Struktur

7.3.2 CSS-Formatierung

8 Benutzer und Bereiche

8.1 Benutzer anlegen und verwalten

8.1.1 Neue Benutzer anlegen und bearbeiten

8.2 Neue User im Frontend

8.3 Seitenzugriff

8.3.1 Die Usergruppen

8.3.2 Inhalte schützen

8.4 Das User-Menü

8.5 Einen internen Bereich anlegen

8.6 Nachrichten

9 Module, Plug-ins, Komponenten

9.1 Module

9.1.1 Die Modulverwaltung

9.1.2 Positionen

9.1.3 Die Modul-Detailseite

5

Page 6: Joomla 1 5 Handbuch

9.1.4 Die Menüs

9.1.5 Anmeldung

9.1.6 Feed-Anzeige

9.2 Plug-ins

9.2.1 Plug-in-Verwaltung

9.2.2 Plug-in-Detailseite

9.2.3 Editor – TinyMCE 2.0

9.2.4 Inhalt – Bewertung

9.3 Komponenten

9.3.1 Banner

9.3.2 Kontakte

9.3.3 Newsfeeds

9.3.4 Umfragen

9.3.5 Suchen

9.3.6 Weblinks

9.4 Neue Erweiterungen installieren

9.4.1 Die Phoca Gallery

10 Pflege der Webseite

10.1 Seitenweite Einstellungen

10.1.1 Seite

10.1.2 Suchmaschinenoptimierung und Metainformation

10.1.3 Benutzer

10.2 Länder und Sprachen

10.3 Mail-Versand

10.3.1 Sendmail

6

Page 7: Joomla 1 5 Handbuch

10.3.2 PHP Mail

10.3.3 SMTP

10.4 Technische Vorgaben

10.5 Medien

11 Eine Site aufbauen

11.1 Struktur der Site

11.2 Der Template-Bereich

11.3 Der tiefere Einblick ins Template

11.3.1 Layout und Gestaltung

11.3.2 Strukturierung der Layouts

11.3.3 Dem Entwurf das Leben einhauchen

12 Was macht ein Template aus?

12.1 HTML-Bereich

12.2 Der CSS-Bereich

12.3 Das Drumherum

13 Tools zur Template-Erstellung

13.1 Browsertools

13.1.1 Firebug und Web Developer Toolbar

13.1.2 Developer Toolbar

13.1.3 Chrome

13.2 YAML (Yet Another Multicolumn Layout)

7

Page 8: Joomla 1 5 Handbuch

13.2.1 JYAML – YAML für Joomla!

13.2.2 Framework

13.2.3 YAML-Builder, das Online-Tool

13.3 Dreamweaver Extension

13.4 KompoZer

13.4.1 Die Seite aufbauen

14 Barrierefreiheit

14.1 Bedeutung

14.2 Kodifizierung und gesetzliche Grundlagen

14.3 Das Beez-Template

14.4 Beez HTML

14.5 Beez CSS

14.6 Überschreibungen

14.7 Weitere Hinweise

15 Aus der Trickkiste

15.1 Zugriff für registrierte Benutzer

15.1.1 Einzelne Menüpunkte freigeben

15.1.2 Freigabe von kompletten Menüs oder Modulen

15.1.3 Ausbau der Freigabe-Funktion

15.1.4 Anpassen einer Komponente

15.1.5 Ein eigener Bereich

15.2 Parallelwelten

15.2.1 Untermenüs aufrufen

8

Page 9: Joomla 1 5 Handbuch

16 Joomla! als professionelle Geschäftsplattform

16.1 E-Commerce

16.1.1 Aufgaben

16.1.2 Anforderungen an eine Geschäftsplattform

16.1.3 Rechtliches

16.2 Die Anwendungen

16.2.1 Shop

16.2.2 Galerie

16.2.3 Dokumentenmanagement

16.2.4 Kalender

16.2.5 Formulare

17 Online-Shop: VirtueMart

17.1 Installation

17.1.1 Komponente

17.1.2 Beispieldaten

17.1.3 Module

17.1.4 Sprachdateien

17.2 Ein kurzer Rundgang

17.2.1 Im Backend

17.2.2 Im Frontend

17.3 Den Shop einrichten

17.3.1 Shop-Informationen

17.3.2 Konfiguration

9

Page 10: Joomla 1 5 Handbuch

17.4 Produkte

17.4.1 Kategorien anlegen und verwalten

17.4.2 Produkte anlegen und verwalten

17.4.3 Produktattribute

17.4.4 Preisnachlässe

17.4.5 Produktbewertungen

17.5 Kunden

17.5.1 Kundenverwaltung

17.5.2 Gestaltung der Kundenregistrierung

17.6 Bestellungen

17.6.1 Der Bestellvorgang

17.6.2 Bestellstatustypen

17.7 Lieferanten/Verkäufer

17.7.1 Lieferantenkategorien anlegen

17.7.2 Lieferanten hinzufügen

17.8 Reporte

17.9 Steuern

17.10 Zusätzliche Erweiterungen

18 Formulare: BreezingForms und ChronoForms

18.1 BreezingForms

18.1.1 Installation und Konfiguration

18.1.2 Die BreezingForms in der Übersicht

18.1.3 Entwurf eines Beispielformulars

18.1.4 Die Formularoberfläche

10

Page 11: Joomla 1 5 Handbuch

18.1.5 Funktionen für das Formular und die Elemente

18.1.6 Die Verwaltung der Daten

18.1.7 Formular im Frontend verankern

18.1.8 Formular im Backend-Menü verankern

18.1.9 Formular exportieren/importieren

18.2 ChronoForms

18.2.1 Installation und Überblick

18.2.2 Formular erstellen und übertragen

18.2.3 Einbinden in eine Seite

18.2.4 Formulare sichern und wiederherstellen

18.2.5 E–Mail-Benachrichtigung oder Daten in der Datenbank ablegen

18.2.6 Direkter Zugriff auf Formulare über einen eigenen Backend-Menüeintrag

19 Dokumentenverwaltung: Docman und Attachments

19.1 Dokumentenverwaltung: Docman

19.1.1 Installation

19.1.2 Konfiguration

19.1.3 Eine Kategorie erstellen

19.1.4 Von der Datei zum Dokument

19.1.5 Rechte vergeben

19.1.6 Anbindung an das Frontend

19.1.7 Eigene Templates

19.1.8 Statistik

19.1.9 Zubehör

19.2 Attachments

19.2.1 Installation

11

Page 12: Joomla 1 5 Handbuch

19.2.2 Attachment im Backend anhängen

19.2.3 Attachments im Frontend

19.2.4 Konfiguration

20 Kalender: JEvent und iWebCal

20.1 JEvent

20.1.1 Installation

20.1.2 Einrichten des Kalenders

20.1.3 Der Kalender im Frontend

20.1.4 Die Verwaltung des Kalenders

20.1.5 Die Erweiterungen

20.2 Kalender: iWebCal

20.2.1 Installation und Konfiguration

20.2.2 Hochladen eines Kalenders

20.2.3 Der iWebCal-Kalender im Frontend

20.2.4 Konfiguration des Kalenders

21 Bildergalerien: Zoom Media Gallery und JoomGallery

21.1 Zoom Media Gallery

21.1.1 Installation

21.1.2 Einstellungen

21.1.3 Das Erstellen eines Albums

21.1.4 Das Hochladen von Bildern

21.1.5 Medien verwalten

21.1.6 Die Galerie im Frontend

12

Page 13: Joomla 1 5 Handbuch

21.2 JoomGallery

21.2.1 Installation

21.2.2 Das Control Panel der JoomGallery

21.2.3 Kategorien anlegen

21.2.4 Bilder hochladen

21.2.5 Die Galerie im Frontend

21.2.6 Meine Galerie

21.2.7 Bilder bewerten und kommentieren

21.2.8 Die Galerie konfigurieren

21.2.9 Zubehör

22 Joomla! als Community-Treff

22.1 Online-Kommunikation

22.2 Kommunikations- und Kooperationsbedürfnisse

22.3 Community-Tools

22.3.1 Chat

22.3.2 Gästebuch

22.3.3 Forum

22.3.4 Online Social Network

22.3.5 Blog

22.3.6 Wiki

22.3.7 Podcast

22.4 Social Web

23 Weblogs: IDoBlog und MMS Blog

13

Page 14: Joomla 1 5 Handbuch

23.1 IDoBlog

23.1.1 Installation und Einrichtung

23.1.2 Arbeiten im Blog

23.1.3 Den Blog administrieren

23.2 MMS-Blog

23.2.1 Installation

23.2.2 Das Control Panel

23.2.3 Ein neues Konto anlegen

23.2.4 Einen Beitrag publizieren

23.2.5 Der MMS-Blog im Frontend

23.2.6 Beiträge mit anderen teilen

23.2.7 Einen Beitrag bearbeiten bzw. löschen

23.2.8 Konfiguration

24 Wiki: JoomlaWiki

24.1 Installation

24.2 Die Verwaltung des Wikis

24.2.1 Administration

24.2.2 Konfiguration

24.3 Arbeiten im Wiki

24.3.1 Der Editiervorgang

24.3.2 Die Wiederherstellung einer früheren Version

24.3.3 Eine neue Seite hinzufügen

24.3.4 Andere Seiten finden

24.3.5 Diskutieren

24.3.6 Schützen

14

Page 15: Joomla 1 5 Handbuch

24.3.7 Löschen

24.3.8 Gelöschte Seiten wiederherstellen

24.3.9 Verschieben bzw. umbenennen

24.3.10 Beobachten

24.4 Die Formatierung eines Wiki-Artikels

24.4.1 Zeichenformatierung

24.4.2 Überschriften und Abschnitte

24.4.3 Listen und Linien

24.4.4 Einfache Tabellen

24.4.5 Verlinkung

24.4.6 Bilder einbinden

24.4.7 Benutzerverzeichnis

24.5 Die Benutzerrechtsverwaltung

24.6 Verbindung mit Joomla!

25 Forum: FireBoard

25.1 Installation

25.2 Das Control Panel

25.3 Die Nutzung des Forums

25.3.1 Erste Einstellungen

25.3.2 Ein neues Forum anlegen

25.3.3 Das Forum im Frontend

25.3.4 Benutzer verwalten

25.3.5 Die Moderation des Forums

25.4 Die Verwaltung des Forums

25.5 Zusätzliche Funktionen

15

Page 16: Joomla 1 5 Handbuch

26 Gästebücher

26.1 Phoca Guestbook

26.1.1 Ein kurzer Rundgang

26.1.2 Ein Gästebuch erstellen und verwalten

26.2 EasyBook

26.2.1 Installation und Rundgang

26.2.2 Das Gästebuch aktivieren

27 Noch mehr Kommunikation

27.1 Chat

27.1.1 Inbetriebnahme

27.1.2 Der Chat

27.1.3 ShoutBox

27.2 Podcast

27.2.1 Installation

27.2.2 Konfiguration

27.2.3 Arbeiten mit Podcasts

27.2.4 Feed

28 Installation beim Webhost

28.1 Kriterien zur Webhost-Wahl

28.2 Übertragung zum Webhost

28.2.1 Datenbank einrichten

28.2.2 System einrichten

16

Page 17: Joomla 1 5 Handbuch

28.2.3 Übertragen der Datenbank

28.2.4 Anpassen der Konfiguration

28.3 Zweitinstallation

28.4 Seitenumzug

28.5 Übertragung mit JoomlaPack

29 Backup und Upgrade

29.1 Backup der Daten

29.1.1 Manuelles Backup

29.1.2 Die Backup-Komponente

29.2 Aktualisieren

29.2.1 Update

29.2.2 Upgrade von Joomla! 1.0

29.3 Deinstallation

30 Tools

30.1 Editor: JCE

30.1.1 Installation

30.1.2 Unterschiede zum TinyMCE

30.2 Dateiverwaltung: eXtplorer

30.2.1 Installation

30.2.2 Die Funktionen von eXtplorer

30.3 Übersicht: Xmap

30.3.1 Installation

30.3.2 Die Einstellungen der Sitemap

17

Page 18: Joomla 1 5 Handbuch

30.4 FTP-Client: FileZilla

30.4.1 Installation

30.4.2 Das Programm

30.4.3 Verbindungen verwalten

30.4.4 Dateien transferieren

30.4.5 Rechte vergeben

30.5 Datenbankverwaltung: phpMyAdmin

30.5.1 Die Datenbankverwaltung

30.5.2 Tabellenansicht

30.5.3 Datenbank exportieren und importieren

31 Standard-Erweiterungen

31.1 Module

31.1.1 Banner

31.1.2 Syndication

31.1.3 Statistik

31.1.4 Archiv

31.1.5 Bereiche

31.1.6 Verwandte Beiträge

31.1.7 Wrapper

31.1.8 Umfragen

31.1.9 Wer ist online

31.1.10 Zufallsbild

31.1.11 Schlagzeilen

31.1.12 Neueste Nachrichten und Meist gelesen

31.1.13 Suche

18

Page 19: Joomla 1 5 Handbuch

31.1.14 Fußzeile

31.1.15 Navigationspfad

31.2 Plug-ins

31.2.1 System – Legacy

31.2.2 System – SEF

31.2.3 Inhalt – Code-Hervorhebung (GeSHi)

31.2.4 Inhalt – Modul laden

31.2.5 Inhalt – Seitenumbruch

31.2.6 Editor – Kein Editor

31.2.7 Editor – XStandard Lite 2.0

31.2.8 Editorbutton – Bild, Editorbutton – Seitenumbruch und Editorbutton – Weiterlesen

31.2.9 Suche

31.2.10 Authentifikation

31.2.11 Inhalt – Seitennavigation

31.2.12 System – Debug

31.2.13 System – Cache

31.2.14 System – Protokoll

31.2.15 System – Remember Me

31.2.16 System – Backlink

31.2.17 Benutzer – Joomla!

31.2.18 XML-RPC – Joomla und XML-RPC – Blogger-API

31.3 Backend-Module

31.3.1 Willkommen bei Joomla!

31.3.2 Update nötig?

31.3.3 Angemeldete Benutzer

31.3.4 Beliebt

31.3.5 Neue Beiträge

19

Page 20: Joomla 1 5 Handbuch

31.3.6 Statistiken

31.3.7 Fußzeile

31.3.8 Ungelesene Nachrichten

31.3.9 Benutzer online

31.3.10 Quick-Icons

31.3.11 Anmeldung

31.3.12 Admin-Menü

31.3.13 Benutzerstatus

31.3.14 Admin-Untermenü

31.3.15 Titel

31.3.16 Toolbar

31.3.17 Eigene Module

32 Mehrsprachigkeit

32.1 Joom!Fish einrichten

32.2 Die Sprachauswahl

32.3 Übersetzungen

32.4 Hilfsmittel

33 Suchmaschinenoptimierung

33.1 Suchmaschinenlogik

33.1.1 Keywords

33.1.2 On-Page-Optimierung: Inhalt

33.1.3 On-Page-Optimierung: Technisches

33.1.4 Off-Page-Optimierung

20

Page 21: Joomla 1 5 Handbuch

33.2 SEO in Joomla!

33.3 Die sh404SEF-Komponente

33.3.1 Konfiguration

33.3.2 URLs verwalten

33.3.3 Metadaten

33.4 Verwertungsmodelle – AdSense

33.4.1 Funktionsweise

33.4.2 Anmeldung

33.4.3 Integration von AdSense

34 Statistik

34.1 Joomla!-Funktionen

34.2 Externe Statistik-Tools

34.3 Installation von FireStats

34.4 Die Bedienung von FireStats

35 Performance

35.1 Seitenaufbau

35.2 Joomla! optimieren

35.3 Einstellungen des Servers

35.4 Cache

36 Datentransfer und FTP-Modus

36.1 Migration von Daten nach Joomla!

21

Page 22: Joomla 1 5 Handbuch

36.1.1 Statische Homepage

36.1.2 Einbinden von Seiten mit der StaticXT-Komponente

36.1.3 Konvertierung aus anderen CMS

36.1.4 Office-Dokumente

36.2 Statischer Export

36.3 Datenübertragung per FTP und Safe Mode

37 Sicherheit

37.1 Angriffstypen

37.1.1 SQL Injection

37.1.2 Parametermanipulation

37.1.3 Cross Site Scripting (XSS)

37.1.4 Man in the Middle

37.2 Vorbeugende Maßnahmen

37.3 Spam-Vorbeugung

38 Troubleshooting

38.1 Installation

38.1.1 Apache läuft nicht

38.1.2 MySQL läuft nicht

38.1.3 Mac OS X Apache läuft, findet aber kein Joomla!

38.1.4 Mac OS X vor Version 10.4

38.2 Betrieb

38.2.1 Fehlerhafte Verbindungsparameter zur Datenbank

38.2.2 Falsche Dateizugriffsberechtigungen

22

Page 23: Joomla 1 5 Handbuch

38.2.3 Passwort vergessen

38.2.4 Seiten sind gesperrt

38.2.5 Statt Backend: Ausgabe »Invalid Token«

38.2.6 Upload geht nicht

38.2.7 Menüs werden in einem neuen Template nicht angezeigt

38.2.8 Der PDF-Button funktioniert nicht

38.2.9 Die Seite ist temporär nicht erreichbar

38.3 Sprachen

38.3.1 Deutschsprachiger Hilfeserver

38.3.2 Englische Ausgaben auf der Frontpage

38.3.3 Erweiterungen übernehmen die Spracheinstellung nicht

38.3.4 Die Ausgabe enthält seltsame rautenförmige Zeichen

38.4 Erweiterungen

38.4.1 Eine Erweiterung lässt sich nicht installieren

38.4.2 Ein Modul wurde aktiviert, wird aber nicht angezeigt

38.4.3 Bei SEF führen alle Links zu 404-Fehlern

38.4.4 Die Installation von Komponenten schlägt fehl

38.4.5 Erweiterungen deinstallieren

39 Mein erstes Modul

39.1 Tools

39.2 Hallo Joomla!

39.3 Architektur

39.3.1 Model-View-Controller

39.3.2 Die Beschreibungsdatei

39.3.3 Der Controller

23

Page 24: Joomla 1 5 Handbuch

39.3.4 Der Rahmen

39.3.5 Die View

40 Die Joomla!-API

40.1 Zugriff auf die Interna von Joomla!

40.2 Informationen über den Benutzer

40.3 HTML-Elemente

40.4 URL-Parameter abfragen

40.5 Parametrisieren

40.6 Auf die Datenbank zugreifen

40.7 Internationalisierung

41 Plug-ins erstellen

41.1 Funktionsweise

41.2 Plug-ins für den Inhalt

41.3 Ein passender Button

41.4 Plug-ins für die Suche

42 Eine eigene Komponente

42.1 Die Installationsdateien

42.1.1 Die Komponenten-Beschreibung

42.1.2 Die Datenbank

42.1.3 Zusätzliche Installationsanweisungen

42.2 Die Darstellung im Frontend

24

Page 25: Joomla 1 5 Handbuch

42.2.1 Einstiegsskript und Controller

42.2.2 Das Model

42.2.3 Die Ausgabe

42.3 Die Komponentenverwaltung

42.3.1 Das Grundgerüst

42.3.2 Die Listenansicht

42.3.3 Ändern der Daten

42.3.4 Bearbeitungsmodus

A Parameter der unterschiedlichen Menütypen

A.1 Die Funktionen des TinyMCE

A.2 Die Icons der Symbolleiste

A.3 Die Parameter der Menüeinträge

A.3.1 Standard Bereichsliste Layout

A.3.2 Blog Layout

A.3.3 Kontaktkategorie-Layout

A.3.4 Newsfeed

A.3.5 Suche

A.3.6 Benutzer

A.3.7 Weblinks

A.3.8 Wrapper

A.3.9 Externer Link

A.3.10 Trenner

A.4 Parameter der Beiträge

B Die Joomla!-API

25

Page 26: Joomla 1 5 Handbuch

B.1 Funktionen

B.2 Konstanten

B.3 Objekte

B.4 Details zu einzelnen Objekten

B.4.1 JApplication

B.4.2 JDatabase

B.4.3 JFactory

B.4.4 JHTML

B.4.5 JParameter

B.4.6 JRequest

B.4.7 JToolbarHelper

B.4.8 JUser

C Glossar

26

Page 27: Joomla 1 5 Handbuch

VorwortGute zehn Jahre nach der Entstehung des WWW und eine Erfolgsstory später stellen wir fest, dass sich dieses junge Medium zum ersten Mal wandelt. Wir sind Zeugen einer Entwicklung weg von der Homepage, die reine Informationsvermittlung betreibt, hin zur Community-Plattform, die gemeinschaftliches Arbeiten, Schreiben und Schaffen fördert. Wir, die Autoren, allesamt Informationswissenschaftler, verfolgen diesen Prozess seit geraumer Zeit mit großem Interesse.

Dabei sind wir über das Content-Management-System Joomla! – damals noch Mambo – gestolpert. Die erfrischend peppige Oberfläche und das ansprechende Design der Standardoberfläche ließen vermuten, dass es sich um Software handelt, die nicht nur für Administratoren gedacht ist, sondern auch die Bedürfnisse des normalen Benutzers nicht außer Acht lässt. Dieser Eindruck hat sich an vielen Stellen bestätigt.

Warum also ein Buch schreiben? Bei näherem Hinsehen zeigte sich auch, dass einige Konzepte von Joomla!, wie beispielsweise die Organisation der Inhalte, etwas ungewöhnlich sind – vielleicht auch erklärungsbedürftig. Unser Bestreben ist also, Sie an dem Verständnisprozess teilhaben zu lassen, den wir bei unserer Arbeit mit Joomla! durchlebt haben, um Ihnen einigen Aufwand und die eine oder andere Falle zu ersparen. Daneben produziert die überaus aktive Gemeinde, die sich um Joomla! schart, eine schier unergründliche Fülle von Zusatzprogrammen. Vielleicht gelingt es uns ja, Sie ein wenig durch diesen Basar der Erweiterungen zu leiten und Ihnen die Highlights vorzustellen.

Joomla! ist sehr flexibel, und dementsprechend kann es auch in vielen Bereichen eingesetzt werden. Ob Sie eine private Homepage basteln, eine Vereinsseite betreuen, ob Sie eine Firma darstellen wollen oder eine Community zu einem Thema stricken – kein Problem mit Joomla! Darstellen, informieren, verkaufen, diskutieren, Daten sammeln, kooperieren: All das sind mögliche Anwendungen der Software. Wir haben den Schwerpunkt in diesem Buch auf den gemeinschaftlichen Aspekt gelegt: die Joomla!-Seite als Community-Plattform. Das bedeutet nicht, dass die anderen Bereiche unberücksichtigt bleiben.

Die Software ist natürlich kein Allheilmittel. Auch ist nicht alles, was gewünscht wird, bereits programmiert, und nicht alles, was programmiert wurde, arbeitet ganz fehlerfrei. Dafür ist das Programm frei verfügbar und auch veränderbar: Joomla! ist eine Open-Source-Anwendung. Mit ein wenig Anstrengung können Sie also Ihre Bedürfnisse und Wünsche realisieren, selbst wenn die Entwickler bisher nicht an Ihr konkretes Problem gedacht haben.

27

Page 28: Joomla 1 5 Handbuch

Aus der Geschichte von Joomla! heraus, das sich aus dem Content-Management-System Mambo entwickelt hat, und wegen der Assoziation dieses Namens mit einem Tanz haben wir als roten Faden für die begleitenden Beispiele die Homepage eines Tanzstudios gewählt. Die Anleser beschreiben den geheimnisvollen Joomla!-Tanz.

Zur zweiten Auflage

Wieder sind ein paar Jahre ins Land gegangen, und in der Joomla!-Welt hat sich viel getan. Der lang ersehnte Versionssprung auf 1.5 ist vollzogen, und mittlerweile sind die Software und ihre Erweiterungen auch schon ein wenig gereift. Joomla! hat sich durch den radikalen Umbau unter der Haube zu einem profes-sionellen und flexiblen Websystem gemausert, das alles bietet, was eine moderne Homepage braucht.

Dem haben wir in der Neuauflage Rechnung getragen und das Buch umfassend erweitert. Ein wesentlicher Schwerpunkt liegt dabei auf der individuellen Anpassung des Aussehens und der Funktionalität. Joomla! lebt von seinen Erweiterungen, die fast alles bieten, was das Herz begehrt. Wir stellen Ihnen ein breites Spektrum vor, mit dem Sie Ihre Webseite an spezifische Bedürfnisse anpassen können. Aber auch Profi-Themen wurden weiter ausgearbeitet, so dass Sie hier Hilfestellungen bei allerlei technischen Anforderungen wie Mehrsprachigkeit oder Suchmaschinenoptimierung finden können.

Joomla! hilft Ihnen mit einfachen Oberflächen und Assistenten dabei, sehr komplexe Vorgänge umzusetzen. Bei aller Einfachheit darf jedoch nicht vergessen werden, dass hier Aufgaben bewältigt werden, die noch vor Kurzem einen Vollzeit-Webmaster beschäftigt haben. Bei näherem Hinsehen zeigt sich auch, dass einige Konzepte von Joomla!, wie beispielsweise die Organisation der Inhalte, etwas ungewöhnlich, vielleicht auch erklärungsbedürftig sind.

Aus Rückmeldungen zur ersten Auflage wissen wir, dass man ein wenig Geduld mitbringen muss, um das System in seiner Fülle ausschöpfen zu können. Aber es lohnt sich! Wir wagen zu behaupten, dass Sie einfacher als mit Joomla! keine professionelle Homepage gestalten können. Also lassen Sie sich von kleinen Rückschlägen nicht entmutigen, und bleiben Sie am Ball! Wir hoffen, dass wir Ihnen mit diesem Buch eine handfeste Anleitung mitgeben können, mit der es Spaß macht, das System kennenzulernen, und die Sie auf Ihrer Entdeckungsreise mit dem einen oder anderen guten Rat begleitet.

28

Page 29: Joomla 1 5 Handbuch

1 EinleitungVielleicht waren Sie schon einmal in der Situation, eine Homepage für eine Gruppe von Leuten, einen Verein, einen Betrieb oder eine öffentliche Einrichtung gestalten zu dürfen. Sie erstellen also ein Design, überlegen sich eine Struktur, tragen die Inhalte zusammen und versuchen mithilfe von Webskripten, die nötige Funktionalität zu erreichen. Sie haben noch keine fünf Seiten erstellt, und schon tauchen die ersten Schwierigkeiten auf. Da muss ein Wort in der Fußzeile, die Sie mit Copy & Paste in alle Seiten übernommen haben, ausgetauscht werden. In der Navigation stellt sich heraus, dass der Punkt »Aktivitäten« wichtiger ist als der Punkt »Berichte«. Die Verlinkungsstruktur muss also geändert werden. Eine seitenweite Suchfunktion ist fast nicht zu realisieren, und die Verwaltung des Zugangs zu einem Mitgliederbereich entpuppt sich als aufwendige Angelegenheit. Zu allem Überfluss klingelt jede halbe Stunde das Telefon, weil einer Ihrer Inhaltslieferanten einen Rechtschreibfehler entdeckt hat.

Gefragt sind aktuelle Inhalte, geschützte Bereiche, Beteiligung der Benutzer und vor allem die Möglichkeit, gemeinsam an Texten und Artikeln zu arbeiten. Aus der Homepage wird die Webanwendung, die die Möglichkeiten der Technik ausnutzt, um attraktive Orte im Internet zu schaffen. Nun sind (zum Glück) nicht alle Menschen, die der Öffentlichkeit etwas mitzuteilen haben, Informatiker oder Computerspezialisten, die Spaß daran finden, sich die nötigen Werkzeuge für so eine Seite selbst zusammenzubasteln. Die Frage ist also, wie kommen Sie und ich an die nötige Technik, wie können wir hier »auch mitmachen«?

Zum Glück gibt es Joomla!. Diese Webanwendung ist genau auf Homepages zugeschnitten, die eine hohe Dynamik aufweisen und von mehreren Menschen in unterschiedlichen Rollen betreut werden. Joomla! ist Teil der Entwicklung, die von statischen Webseiten, die vornehmlich Informationen bereitstellen sollen, hin zu dynamischen Homepages führt, die als Kommunikationsbasis für eine Online-Gemeinde dienen. Typisch für solche Homepages sind folgende Merkmale:

29

Page 30: Joomla 1 5 Handbuch

Die Aufgaben bei der Erstellung und Wartung der Seite verteilen sich auf mehrere Personen. Einige Leute liefern nur die Inhalte. Das Layout wird von einem Webdesigner erstellt. Die Funktionalität als ein eigener Bereich wird von einem Administrator betreut.

Die Art der Inhalte ändert sich. Viele Beiträge haben einen aktuellen Bezug und sind nach einer gewissen Zeit nicht mehr so interessant. Andere müssen kategorisiert werden, um schnell auffindbar zu sein.

Ein System der Qualitätssicherung wird benötigt. Die Rolle des Redakteurs, der Beiträge freischalten muss, wird erforderlich. Ratings werden eingeführt, mit deren Hilfe die Leser die Güte eines Artikels bewerten können.

Die Community muss gepflegt werden. Ein interner Bereich ermöglicht es, sich zwanglos über das Netz auszutauschen. Über Foren, Blogs und Wikis werden auch die Besucher der Seite mit eingebunden.

All dies und viel mehr kann in einer Joomla!-gestützten Seite relativ einfach realisiert werden.

Das hat natürlich seinen Preis. Joomla! weist eine gewisse Komplexität auf, so dass Sie mit etwas Einarbeitungsaufwand rechnen müssen. Die Organisation der Inhalte unterscheidet sich von der Art, wie Sie eine normale Homepage aufbauen würden. Viele Rädchen greifen ineinander. Wenn Sie daher eine Änderung vornehmen wollen, müssen Sie wissen, an welcher Stelle diese am besten durchzuführen ist. Die Hard- und Softwareanforderungen sind höher als bei einer statischen HTML-Seite, und die Dynamisierung bringt gewisse Sicherheitsrisiken mit sich, die Sie bei reinem HTML nicht haben. Die Vorteile des Systems wiegen diese Schwierigkeiten jedoch mehr als auf. Unser Buch soll Ihnen helfen, sich schnell und fundiert in Joomla! zurechtzufinden.

1.1 Content-Management

Ein Content-Management-System (CMS) ist eine Software, die eine gemeinschaftliche Arbeit an verschiedenen Inhalten ermöglicht und organisiert. Unter dem Begriff »Inhalt« ist dabei eine in sich geschlossene Einheit zu verstehen. Das kann ein Text oder ein Bild sein, aber auch andere Medientypen (Audio, Video etc.) sind denkbar.

Die Aufgaben eines CMS lassen sich in mehrere Bereiche einteilen.

Die Darstellung der Inhalte wird vom System übernommen. Das bedeutet zum einen, dass das Layout getrennt von den Daten verwaltet wird, damit alle angezeigten Daten einheitliche Formatierungen aufweisen. Zum anderen

30

Page 31: Joomla 1 5 Handbuch

können durch ein gutes CMS Inhalte in verschiedenen Medien wiedergegeben werden, beispielsweise auf dem Bildschirm oder Drucker. Um die Daten zugänglich zu machen, muss die Darstellung eines Beitrags um Hilfsmittel ergänzt werden, die zeigen, wie die Einträge im CMS zu finden sind. Dazu dienen Navigationselemente und Suchfunktionen.

Es werden Möglichkeiten zur Bearbeitung von Inhalten zur Verfügung gestellt. Diese bieten nur die Formatierungs- und Auszeichnungsoptionen an, die erlaubt sind und vom System verarbeitet werden können. Des Weiteren gibt es Mechanismen, die Unstimmigkeiten vermeiden, wenn mehrere Leute gleichzeitig an einem Inhalt arbeiten. Unter Umständen werden verschiedene Versionen des Inhalts aufbewahrt und somit die Änderungen protokolliert, um den Entstehungsprozess transparent zu machen.

Die zentrale Dienstleistung eines CMS ist die Organisation von Inhalten. Diese werden in Kategorien und Bereiche unterteilt und mit Stichwörtern für die Suche versehen. Dokumente unterliegen auch einem Lebenszyklus. Sie haben beispielsweise ein Verfallsdatum, müssen archiviert oder auch gelöscht werden. Dies alles wird teils automatisch erledigt, teils werden den Benutzern die entsprechenden Werkzeuge angeboten.

Arbeiten mehrere Menschen an einem Inhalt, so ist häufig ein Workflow vonnöten. Ein Autor schreibt beispielsweise einen Beitrag, der von einem Redakteur Korrektur gelesen wird. Der Artikel geht zur Überarbeitung zurück an den Autor und dann an den Verantwortlichen der Seite, der den Beitrag freischaltet. Der Weg des Beitrags zu den verschiedenen Personen wird vom CMS organisiert, und das Dokument wird mit einem entsprechenden Status gekennzeichnet.

Je nachdem, welchen Status ein Benutzer im System hat, werden ihm bestimmte Inhalte oder Möglichkeiten der Bearbeitung gewährt oder vor ihm verborgen. Diese Zugriffssteuerung ist ein wichtiger Bestandteil eines jeden CMS und sorgt für die nötige Sicherheit, wenn viele Menschen gemeinsam an einem Projekt arbeiten.

Joomla! gehört zur Gruppe der webbasierten Content-Management-Systeme (WCMS). Diese zeichnen sich dadurch aus, dass das Medium der Darstellung wie auch das Medium für die Verwaltung das WWW ist. Meistens werden WCMS dazu eingesetzt, größere Homepages zu verwalten, die entweder als Wissensbasis oder als Nachrichtendienst einer hohen Dynamik unterliegen. Die Multimedialität der Darstellung ist hier beispielsweise gegeben, wenn zu einem Inhalt eine spezielle Druckversion oder die Ausgabe als PDF-Dokument verfügbar ist. Auch eine Zusammenfassung der Seite in einem RSS-Feed ist hier zu nennen. Design und Navigationsstruktur werden automatisch erzeugt. Die Bearbeitung erfolgt über ein HTML-Formular. Mittlerweile findet sich in jedem State-of-the-art-System auch ein Editor, der das Layout in etwa so darstellen kann, wie es später angezeigt wird (WYSIWYG; What You See Is What You Get). Die Möglichkeit der Querverlinkung zwischen Dokumenten wird ebenfalls vom WCMS bereitgestellt. Eine Besonderheit der inhaltlichen Organisation von Joomla!

31

Page 32: Joomla 1 5 Handbuch

besteht darin, dass neue Beiträge unproblematisch auf der Titelseite ausgegeben werden können. Ähnlichkeiten zu Blogs sind hier unverkennbar. Eine Einteilung der Benutzer in Autoren, Redakteure oder Administratoren ermöglicht eine breite Beteiligung der Allgemeinheit an der Erstellung einer Seite, ohne auf eine gewisse Sicherheit verzichten zu müssen.

Eine Spezialität von WCMS ist die Integration vieler Zusatzdienste, die nicht direkt mit den eigentlichen Inhalten zusammenhängen. So bietet Joomla! beispielsweise die Möglichkeit, Umfragen durchzuführen, Nachrichtenticker zu integrieren, über Foren und Wikis als Kommunikationsplattform zu dienen oder Formulardaten abzufragen.

2 InstallationJoomla! ist eigentlich eine Internetanwendung. Um es kennenzulernen, ist es trotzdem sinnvoll, zunächst eine Testversion auf dem eigenen Rechner zu installieren. Dort haben wir die volle Kontrolle über die Einstellungen, es ist kein Problem, wenn mal etwas schiefgeht, und es sieht uns auch nicht die ganze Welt bei unseren Versuchen mit »Hallo Welt« und anderen Testtexten zu. Hier können wir auch die Homepage vorbereiten, ohne dauerhaft online sein zu müssen. Das fertige System kann (in den meisten Fällen) relativ einfach auf den Webhost aufgespielt werden.

Joomla! ist aber kein eigenständiges Programm. Damit das System läuft, benötigt man einen Webserver, PHP und die Datenbank MySQL. Im Internet werden Programme von Ihrem Provider zur Verfügung gestellt, vorausgesetzt, Sie haben ein entsprechendes Paket erworben. Auf dem lokalen Rechner müssen wir uns eine sogenannte Testumgebung mit diesen Softwarepaketen einrichten. Glücklicherweise gibt es schon mehrere Zusammenstellungen, die uns die Arbeit der individuellen Konfiguration abnehmen.

32

Page 33: Joomla 1 5 Handbuch

2.1 Systemvoraussetzungen

Joomla! ist eine Webanwendung und als solche von anderen Programmen abhängig. Hierbei ist zwischen dem Client und dem Server zu unterscheiden. Für die Arbeit auf einer Internetseite, die mit Joomla! betrieben wird, benötigen Sie einen Browser der neueren Generation. Das sind beispielsweise:

Firefox 1.5 oder höher

Internet Explorer 6 oder höher

Opera 6 oder höher

Natürlich können Sie auch andere Browser verwenden, wenn ein gelegentlicher kleiner Darstellungsfehler Sie nicht stört. JavaScript sollten Sie auf alle Fälle aktivieren. Im Frontend haben Sie ansonsten keinen Zugriff auf den WYSIWYG-Editor, und das Backend ist anderweitig nicht erreichbar. Ebenso sollten Sie Cookies aktiviert haben, sonst können Sie sich unter Umständen nicht einloggen.

Auf dem Server benötigen Sie neben ca. 50 MB Speicherplatz für die Seite und die Server-Software wie schon angedeutet die folgende Software:

Webserver: Apache 1.13.19 oder höher

Datenbank: MySQL 3.23.x oder höher

Skriptsprache: PHP 4.3.10 oder höher

Voraussetzungen in PHP

Die MySQL-, XML- und Zlib-Unterstützung muss in PHP aktiviert sein, damit Joomla! richtig läuft. Dies ist normalerweise der Fall. Die entsprechenden Informationen erhalten Sie von Ihrem Provider.

In vielen Fällen können Sie die Einstellungen von PHP mit einer einfachen Seite abrufen. Erstellen Sie dazu eine Datei info.php im Editor mit dem folgenden Inhalt:

<?php echo phpinfo(); ?>

Laden Sie diese Datei in Ihren Webspace (bei XAMPP in das Verzeichnis htdocs), und geben Sie im Browser die Adresse Ihrer Homepage, gefolgt von info.php, ein:

http://www.adresseihrerhomepage.de/info.php

Jetzt erscheint eine lange Beschreibung der aktuellen PHP-Konfiguration.

33

Page 34: Joomla 1 5 Handbuch

Die oben genannten Module finden sich jeweils in den Überschriften, wenn

Seit der Version 1.5 von Joomla! ist der Betrieb auf einem Server, der im »Safe Mode« von PHP läuft, kein Problem mehr. Näheres dazu erfahren Sie in Kapitel 36, »Datentransfer und FTP-Modus«.

Um das System kennenzulernen, ist es einfacher, sich erst einmal ein System auf dem eigenen Rechner zu installieren. In Kapitel 28, »Installation beim Webhost«, zeigen wir Ihnen dann, wie man die Daten zu einem Webhost übertragen kann. Auf dem eigenen Computer gehen viele Dinge etwas einfacher. Außerdem wird so verhindert, dass jeder kleine Versuch öffentlich ist und schlimmstenfalls auch von Suchmaschinen indiziert wird. Anders als bei normalen Anwendungen ist es bei Webseiten nötig, auf dem eigenen Rechner einen Webserver zu simulieren. Dieser besteht häufig aus mehreren Komponenten, einem Server, einer oder mehreren Skriptsprachen und einer Datenbank. Diese werden normalerweise von erfahrenen Administratoren installiert und gepflegt. Glücklicherweise gibt es aber XAMPP, ein Installationspaket, das die benötigten Programme (und mehr) mitbringt und die Konfigurationen aufeinander abstimmt, so dass wir einen Testserver quasi auf Knopfdruck erstellen können. Wie der Name sagt, handelt es sich hierbei um ein System für interne Tests. Ein echter Webserver sollte wegen der laschen Sicherheitseinstellungen nicht mit XAMPP betrieben werden.

Die Installation von Joomla! setzt mehrere Schritte voraus, die sich grob in zwei Phasen unterteilen lassen. In der ersten Phase werden auf dem Server die nötigen Voraussetzungen geschaffen. Je nach Systemumgebung sind ein oder mehrere der folgenden Schritte notwendig:

Einrichten des Servers und der Datenbank

Testen der nötigen Systemvoraussetzungen

Entpacken und Kopieren der Joomla!-Dateien

Die zweite Phase besteht aus einem

Installationsdialog,

der im Browser aufgerufen wird. Hier wird Joomla! mit den Gegebenheiten der Systemumgebung vertraut gemacht. Die folgende Beschreibung der Installation orientiert sich an diesen zwei Phasen. Die Abschnitte 2.2, »Installation unter Windows«, bis 2.4, »Installation unter Mac OS X«, beschreiben die Einrichtung der Serverumgebung für Windows, Linux und Mac OS X. Die Installation oder Übertragung per FTP auf einen Webhost und Zweitinstallationen von Joomla! werden in Kapitel 28, »Übertragung zum Webhost«, ausführlich erklärt. Sie brauchen natürlich nur das Kapitel lesen, das für Sie relevant ist. In Abschnitt 2.5, »Installationsdialog und

34

Page 35: Joomla 1 5 Handbuch

Sprachauswahl«, wird dann der Installationsdialog von Joomla! besprochen, der für alle Betriebssysteme gleichermaßen wichtig ist.

3 FrontendWenn Sie sich als normaler Websurfer im Netz tummeln und auf eine Homepage stoßen, die mit Joomla! gestaltet wurde, dann haben Sie das sogenannte Frontend von Joomla! vor sich. Oft erkennen Sie schon anhand einer speziellen Ästhetik der Seite, dass es sich um Joomla! handelt. Denn das Beispiellayout, das Sie nach der Installation des CMS erhalten, hat eine ganz bestimmte Struktur, die von vielen Webmastern beibehalten wird. Natürlich ist es auch möglich, das Design und die Funktionalitäten nach Belieben zu gestalten.

3.1 Die Bereiche der Homepage im Überblick

Wir werden Ihnen im Folgenden die verschiedenen Bestandteile einer Joomla!-Seite vorstellen, damit Sie im Backend gezielt darauf zugreifen können.

Hier klicken, um das Bild zu vergrößern

Abbildung 3.1 Der Aufbau einer Joomla!-Site

Die Standardelemente einer Joomla!-Installation lassen sich grob in vier Gruppen einteilen: Menüs, Module, Inhalte und Dekoration.

35

Page 36: Joomla 1 5 Handbuch

3.1.1 Menüs

Mithilfe von Menüs wird auf verschiedene Seiten der Site verlinkt.

Oberes Menü: Das waagerechte Menü am oberen Rand der Seite enthält normalerweise grundlegende Links, die sich selten ändern, wie z. B. Home, Kontakt und Impressum.

Hauptmenü: Das Hauptmenü verweist auf alle anderen wichtigen Seiten der Homepage. Es ist damit die zentrale Navigationsleiste und sollte sich auch auf allen anderen Seiten an derselben Stelle befinden.

Anderes Menü: Dieses Menü befindet sich im Beispiel-Layout direkt unter dem Hauptmenü, kann aber überall auf der Seite platziert werden. Es bietet dem Webmaster Raum, um weitere Menüoptionen unterzubringen.

Benutzermenü: Dieses Menü wird standardmäßig nur angezeigt, wenn ein Benutzer angemeldet ist. Es enthält zum größten Teil Links, die speziell für die Aktivitäten des Users nützlich sind.

Diese Standardmenüs können noch durch weitere Menüs (im Beispiellayout z. B. »Schlüsselkonzepte«) ergänzt werden. Doch dazu später mehr.

3.1.2 Module

Auf vielen Joomla!-Seiten befinden sich kleine dynamische Bereiche, sogenannte Module. Dahinter stecken kleine PHP-Programme, die bestimmte Aufgaben innerhalb der Homepage übernehmen, z. B. die Suchmaske ausgeben. Einige davon möchten wir Ihnen genauer vorstellen:

Anmeldung: Wie der Name schon sagt, können Sie sich in diesem Feld anmelden, falls Sie einen Account haben, also bei der Homepage schon bekannt sind. Ansonsten haben Sie hier die Möglichkeit, über den angefügten Link Registrieren einen solchen Account zu erwerben. Mit Ihrer Anmeldung werden Ihnen über die Verwaltung verschiedene Zugriffsrechte erteilt. Diese können je nach beabsichtigter Politik des Website-Besitzers sehr weit gefasst sein und z. B. Schreib- und Veröffentlichungsrechte einschließen. Auf der anderen Seite kann die Homepage auch sehr statisch gestaltet werden, d. h. keine Usereingaben zulassen und damit ein Login fast überflüssig machen.

Umfragen: In letzter Zeit sind Online-Umfragen als zusätzliches partizipatives Element im WWW immer beliebter geworden. Auch in Joomla! können Sie die Besucher Ihrer Website zu beliebigen Themen befragen und abstimmen lassen. Das Programm kann jedoch lediglich anhand von Cookies registrieren, ob sich der User bereits einmal an

36

Page 37: Joomla 1 5 Handbuch

derselben Umfrage beteiligt hat. Das lässt natürlich Manipulationen durch Leser zu, da man sich nach Ablaufen eines Cookies einfach nochmals an der Umfrage beteiligen kann.

Wer ist online: Dies ist eine weitere Funktion, die die Gruppendynamik stärken soll. Es wird angezeigt, ob und wie viele andere angemeldete User oder Gäste auf der Homepage surfen. Am besten wirkt diese Funktion natürlich, wenn sich viele Nutzer gleichzeitig mit der Site beschäftigen.

Darüber hinaus gibt es noch viele weitere Module, die in unserem frisch installierten System noch nicht zu sehen sind, aber im Nachhinein auf der Website eingebunden oder installiert werden könnten. Dazu erfahren Sie mehr in Kapitel 9, »Module, Plug-ins, Komponenten«.

3.1.3 Inhalte

Die Inhalte sind das wichtigste Element der Homepage. Es handelt sich dabei um Informationen, die vom Webmaster, aber auch von den Usern auf der Seite publiziert werden, damit die Besucher sie lesen können. Joomla! 1.5 nennt diese Inhalte oder Artikel Beiträge und unterscheidet zwei Typen:

Beiträge: Dies ist die Menge aller Inhalte im jeweiligen Joomla!-System.

Startseitenbeiträge: Joomla misst der Startseite der Homepage eine besondere Bedeutung bei. Daher werden die Beiträge, die hier zu sehen sind, »geadelt« und im Backend über eine eigene Verwaltung administriert. Ansonsten besitzen sie jedoch alle Eigenschaften eines »gewöhnlichen« Beitrags.

Eine Mischung aus Modul und Inhalt stellen folgende Rubriken dar, denn dort werden die Inhalte der Autoren über Modulfunktionen gesteuert:

Neueste Nachrichten: Hier stehen die allerneuesten Meldungen. Es versteht sich von selbst, dass auf eine regelmäßige Aktualisierung der Inhalte großer Wert gelegt werden sollte.

Meist gelesen: Joomla! führt intern eine Statistik über die Aufrufe der einzelnen Site-Elemente und kann dadurch eine »Hitliste« der beliebtesten Artikel generieren.

3.1.4 Dekoration

37

Page 38: Joomla 1 5 Handbuch

Die dekorativen Elemente der Homepage lassen den Surfer sofort erkennen, auf welcher Site er sich gerade befindet, und geben ihr ein individuelles Äußeres, das sogenannte Look & Feel.

Logo: Das Logo stellt einen Teil des Templates dar. Gerade bei Firmen und Organisationen, die auch außerhalb des Internets agieren, führt das eigene Logo den erwünschten Wiedererkennungseffekt herbei.

Banner: Damit sind hauptsächlich Werbebanner für Kunden gemeint. Sie werden im Backend über die Banner-Verwaltung konfiguriert.

Außer den hier aufgezählten sichtbaren Elementen einer Joomla!-Site gibt es noch einige wichtige Bestandteile, die allerdings eher im Verborgenen arbeiten, nämlich Komponenten und Plug-ins. Zu diesen erfahren Sie mehr in Kapitel 9, »Module, Plug-ins, Komponenten«.

4 BackendDas Backend ist der Ort, an dem der Administrator die Kontrolle über das Geschehen übernimmt. Von hier aus steuern Sie den strukturellen Aufbau der Seite, aber auch die Sonderfunktionen. Sie können Benutzer verwalten, Bilder hochladen und Erweiterungen installieren. Das Backend kann auch als Plattform für eine Gruppe von Redakteuren genutzt werden.

Video-Lektion

Zu diesem Kapitel finden Sie auch eine geeignete Video-Lektion auf der DVD. Hier können Sie das beschriebene Vorgehen Schritt für Schritt anschaulich mitverfolgen.

4.1 Der Weg ins Backend

Zur Administrationsoberfläche gelangen Sie am besten über die URL, indem Sie an die bisherige Adresse /administrator anhängen. Für unsere lokale Installation sieht das folgendermaßen aus:

http://localhost/joomla/administrator

Es wird daraufhin eine Eingabemaske geöffnet, in die Sie sich zunächst folgendermaßen einloggen:

Benutzername: admin

38

Page 39: Joomla 1 5 Handbuch

Passwort: dasjenige, das Sie bei der Installation eingegeben haben

Sprache: Der Standard ist die Sprache, die Sie bei der Installation gewählt haben und die generell nur vom Administrator festgelegt wird. Zusätzlich stehen Ihnen hier noch die Sprachen zur Verfügung, deren Sprachdateien ebenfalls installiert wurden (vgl. Kapitel 10, »Pflege der Webseite«).

Später, nachdem Sie zusätzliche Nutzerkonten angelegt haben, können Sie natürlich auch weiteren Personen die Berechtigung erteilen, sich im Backend anzumelden.

Hier klicken, um das Bild zu vergrößern

Abbildung 4.1 Der Eingang zum Backend

Für die Arbeit im Backend ist es im Übrigen unerlässlich, dass Sie sowohl JavaScript als auch Cookies in Ihrem Browser aktiviert haben. Denn in JavaScript wurden z. B. die durchaus hilfreichen Tooltipps und die dynamischen Menüs verfasst. Anhand der Cookies wiederum können Sessions verwaltet werden, die den Nutzer in Erinnerung behalten und damit eine Administration der Website im Backend erst ermöglichen.

Es könnte außerdem zu Schwierigkeiten kommen, wenn Sie mit sehr alten Browsern wie z. B. dem Netscape Navigator 4.x arbeiten. Dieser scheitert schon an der korrekten Anzeige der Administrationsoberfläche, ganz zu schweigen von den verschiedenen, dann nicht korrekt auszuführenden Funktionen.

Umbenennen verboten!

Die Dateien für das Backend befinden sich im Unterordner administrator. Diesen Namen sollten Sie möglichst beibehalten, da viele Pfadangaben auf den Ordner verweisen und Sie diese bei einer Umbenennung zunächst alle finden und dann per Hand nachbessern müssten, um ein weiteres reibungsloses Funktionieren des Systems zu garantieren.

39

Page 40: Joomla 1 5 Handbuch

5 Inhalte erstellen und verändernSie haben mittlerweile die wichtigsten Bereiche unserer Joomla!-Installation kennengelernt. Der nächste Schritt wird darin bestehen, an den entsprechenden Stellen auch die benötigten Inhalte zu erstellen. Wir werden unseren ersten Beitrag gleich auf der Startseite platzieren, so dass Sie ihn auch mühelos finden können. Wie Sie in Kapitel 3, »Frontend«, gesehen haben, lassen sich Inhalte auch direkt über das Frontend editieren. Das ist natürlich sehr praktisch und ein großer Vorzug von Content-Management-Systemen. Was sind aber die Unterschiede zur Bearbeitung im Backend? Insgesamt kann man sagen, dass die Optionen in vielen Dingen sehr ähnlich sind, aber eingeschränkter und kontrollierter gehandhabt werden. Die wichtigsten Unterschiede sind:

Im Frontend ist es Ihnen zwar erlaubt, neue Artikel anzulegen (vgl. Abschnitt 3.2, »Das Bearbeiten von Inhalten im Frontend«), diese müssen jedoch von einem Administrator freigegeben werden (es sei denn, Sie selbst sind bereits Backend-Administrator). Neue Bereiche oder Kategorien können Sie nicht über das Frontend erzeugen.

Beim Einbinden von Bildern im Frontend haben Sie zwar die Möglichkeit, Bilder aus dem Medienverzeichnis auszuwählen und neue Bilder in dieses Verzeichnis hochzuladen. Sie können sie jedoch nicht komfortabel über die Medienverwaltung organisieren.

Über das Parametermenü in der Beitragsverwaltung des Backends stehen Ihnen zahlreiche Einstellungsmöglichkeiten zur Verfügung, die Sie im Frontend nicht zu Gesicht bekommen.

In unserem Beispiel werden wir nun Inhalte im Backend bearbeiten. Dabei wird speziell auf die dortigen zusätzlichen Möglichkeiten und Besonderheiten eingegangen. Für die folgenden Kapitel werden wir an einem konkreten Beispielprojekt arbeiten, um die Vorgehensweisen deutlicher herauszustellen. Dabei soll eine kleine Website für einen Tanzlehrer entstehen.

5.1 Neue Inhalte einfügen

Beginnen wir im Kontrollzentrum des Backends. Es gibt zwei Möglichkeiten, um an die entsprechende Stelle zu gelangen, an der Sie Ihre Inhalte eingeben können. Wir werden beide Wege nacheinander beschreiben.

40

Page 41: Joomla 1 5 Handbuch

Video-Lektion

Zu diesem Kapitel finden Sie auch eine geeignete Video-Lektion auf der DVD. Hier können Sie das beschriebene Vorgehen Schritt für Schritt anschaulich mitverfolgen.

5.1.1 Die Beitragsverwaltung

Klicken Sie im Kontrollzentrum auf den Button Beiträge, und Sie gelangen in die Übersicht zu sämtlichen Inhaltselementen Ihrer Website.

Hier klicken, um das Bild zu vergrößern

Abbildung 5.1 Die Übersicht der Beiträge in der Beitragsverwaltung

Es sind dank der installierten Beispieldaten bereits etwa 40 Einträge vorhanden. Die Ansicht wird Ihnen mittlerweile auch bekannt vorkommen und Sie an die Bereichs- oder Kategorieverwaltung erinnern.

Einige Dinge sind jedoch neu. Werfen wir einen Blick auf die Werkzeugleiste. Hier sehen Sie an erster Stelle den Button Aus Archiv entfernen. Sobald sich in Ihrer Liste archivierte Elemente befinden, können Sie diese wieder aktivieren, indem Sie sie aus dem Archiv holen. Zum Archivieren verwenden Sie den Button direkt daneben (Archivieren). Mit dieser Funktion ist es Autoren möglich, veraltete Inhalte im Backend in einen archivierten Zustand zu verschieben, ohne dass die Artikel endgültig gelöscht werden müssen. Der entsprechende Artikel bleibt weiterhin in der Liste, wird jedoch ausgegraut. So behalten Sie in einer Liste immer die Übersicht über sämtliche Beiträge und müssen nicht wie in Vorgängerversionen auf eine andere Verwaltung wechseln. Genau wie bei der Kategorieverwaltung können Sie Beiträge über den Button Verschieben anderen Bereichen/Kategorien zuordnen. Eine Ausnahme bildet der Button Einstellungen. Sämtliche Voreinstellungen der Beiträge können Sie hier global festlegen. Dazu kommen wir aber gleich, schauen wir uns erst die Beitragsverwaltung zu Ende an.

41

Page 42: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 5.2 Werkzeuge und Filterleiste der Beiträge

Mit den Pulldown-Menüs und dem Filter-Feld unter der Werkzeugleiste können Sie die Beiträge noch genauer sortieren, als Sie es bereits aus den anderen Verwaltungen kennen. Das ist sehr nützlich, sobald die Liste mal angewachsen ist und man schnell einen Überblick gewinnen möchte. Suchen Sie nach speziellen Titeln, so können Sie im Feld Filter direkt einen Titelnamen eingeben und mit der Taste Los die Sortierung starten.

Hier klicken, um das Bild zu vergrößern

Abbildung 5.3 Kopfzeile der Beitragsverwaltung

Betrachten wir noch kurz die Liste der Beitragsverwaltung. Hier wurden die Spalten Startseite, Kategorie, Autor, Datum und Zugriffe ergänzt. Wie zu erwarten war, zeigt Ihnen die Spalte Startseite an, ob der jeweilige Beitrag auf der Startseite Ihrer Website zu sehen sein soll oder nicht. Klicken Sie dazu einfach das entsprechende Icon in der Spalte Startseite an, und schon wird der Beitrag auf der Startseite mit aufgeführt. Sämtliche Artikel, die für die Startseite verfügbar sein sollen, können über die eigene Verwaltung der Startseitenbeiträge organisiert werden. Diese können Sie z. B. über das Kontrollzentrum aufrufen. Die Spalten Bereich und Kategorie zeigen an, welches die übergeordneten Bereiche sind. Über die Spalte Autor erfahren Sie schnell und auf den ersten Blick, wer der Verfasser der unterschiedlichen Beiträge war. Datum und Zugriffe geben Ihnen darüber Auskunft, wann der Beitrag erstellt wurde und wie oft er bereits aufgerufen wurde.

Hier klicken, um das Bild zu vergrößern

Abbildung 5.4 Sortierungsmöglichkeiten der Beiträge

5.1.2 Voreinstellungen treffen

Bevor wir den ersten Beitrag für unsere Website erstellen und auf der Startseite veröffentlichen, können wir in der Beitragsverwaltung noch einige Parameter bestimmen. Klicken Sie dazu auf den Button Einstellungen in der Werkzeugleiste. Es öffnet sich ein neuer Bereich mit den Konfigurationsmöglichkeiten. Eine Liste der Parameter finden Sie in Anhang A.1

42

Page 43: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 5.5 Globale Einstellungen für Ihre Beiträge

Die Einstellungen die Sie in dieser Übersicht vornehmen, betreffen das Verhalten sämtlicher Beiträge. Sobald Sie also einen neuen Artikel erstellen, bekommt er diese Parameter zugewiesen. Aber auch bereits bestehende Beiträge werden sich nach diesen Einstellungen richten, es sei denn, Sie haben beitragsspezifische Einstellungen vorgenommen.

5.1.3 Beitragsspezifische Einstellungen

Sie konnten jetzt global die wichtigsten Vorbereitungen für Ihre Beiträge treffen und schaffen so auch eine relativ konsistente Darstellung der Inhalte. Diese globalen Voreinstellungen sind äußerst praktisch, wenn man später einmal beschließt, einige Funktionen umzustellen. Es reicht dann, die Änderung einmal vorzunehmen, und man muss nicht die Parameter der einzelnen Beiträge separat bearbeiten. Allerdings ist es vielleicht nicht immer erwünscht, die globalen Einstellungen greifen zu lassen. Joomla! bietet Ihnen hier die Möglichkeit, die oben beschriebenen Einstellungen nochmals Beitrag für Beitrag zu definieren und damit die globalen Konfigurationen an dieser Stelle zu überschreiben. Diese beitragsspezifische Konfiguration ist dann ausschlaggebend für die Darstellung der Inhalte. Öffnen Sie dazu einen beliebigen Beitrag. Rechts neben dem Beitrag finden Sie die gewünschten Parameter.

43

Page 44: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 5.6 Treffen Sie unabhängige Einstellungen für einen Beitrag.

5.1.4 Ein erster Beitrag auf der Startseite

Die Verwaltung der Startseitenbeiträge übernimmt die Startseitenbeiträge-Verwaltung. Hier können Sie Ihre Elemente nach Bereichen, Kategorien oder Autoren gliedern lassen, bzw. können diese auch beliebig gefiltert werden (dazu gleich mehr im nächsten Abschnitt). Die Werkzeugleiste ermöglicht es Ihnen, Beiträge zu archivieren, den Veröffentlichungsstatus zu ändern oder ausgewählte Elemente von der Startseite zu entfernen. Die Archivierung findet auch hier nur durch das Ausgrauen des Beitrags statt. Es gibt keine separate Archivverwaltung, wie man es aus den Joomla!-Vorgängerversionen kennt. Allerdings verschwindet der Beitrag gleichzeitig aus der Liste der Startseitenbeiträge und erscheint im archivierten Zustand in der Beitragsverwaltung. Wenn Sie ihn dort wieder aus dem archivierten Zustand holen und freigeben, wird er in der Liste der Startseitenbeiträge erscheinen.

Hier klicken, um das Bild zu vergrößern

Abbildung 5.7 Werkzeugleiste der Startseitenbeiträge

Entfernen von der Startseite und Löschen

Das Entfernen von der Startseite hat nicht das Löschen des Elements zur Folge. Das Element erscheint lediglich nicht mehr auf der Startseite, sondern bleibt weiterhin in der Artikelverwaltung aufgelistet. Ebenso verhält es sich mit dem Archivieren von Beiträgen auf der Startseite. Sobald Sie einen Beitrag archivieren, verschwindet er aus der Liste der Startseitenbeiträge und ist nur noch in der Beitragsverwaltung auffindbar.

44

Page 45: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 5.8 Die Verwaltung der Startseitenbeiträge

Nach dem kurzen Überblick werden wir nun zusammen einen Inhalt zu einem der bereits angelegten Bereiche erstellen:

Wir erreichen die Beiträge entweder über die Menüzeile Inhalt • Beiträge oder über das Kontrollzentrum und den Button Beiträge.

Es bietet sich an, zunächst über die erwähnten Pulldown-Menüs der Beitragsverwaltung den entsprechenden Bereich und dessen Kategorie auszusuchen. Wählen Sie z. B. den Bereich »Über Joomla!« und die Kategorie »Das Projekt«.

Beginnen Sie mit einem neuen Beitrag, indem Sie auf den Button Neu klicken. Der einzige Autor ist momentan »Administrator«. Klicken Sie in der Werkzeugleiste auf den Button Neu, und Sie gelangen in den Editierbereich des Beitrags (vgl. Abbildung 5.9).

Diese Ansicht kennen Sie bereits aus dem Frontend. Durch die Vorauswahl in den Pulldown-Menüs in der Verwaltung sind die Felder Bereich und Kategorie der Beitragsdetails bereits belegt.

Wenn Sie in der Beitragsverwaltung keine Wahl für diese Felder getroffen haben, können Sie jetzt immer noch entscheiden, für welchen Bereich und für welche Kategorie der Inhalt bestimmt sein soll.

45

Page 46: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 5.9 Einen neuen Beitrag erstellen und editieren

Beiträge zuordnen

Anders als bei den Vorgängerversionen ist es mittlerweile nicht mehr nötig, einen Beitrag beim Erstellen einer Kategorie und einem Bereich zuzuordnen. Allerdings müssen Sie für den Bereich und die Kategorie des Beitrags explizit »nicht kategorisiert« auswählen. Das ist automatisch vorselektiert, wenn Sie einen neuen Beitrag über den Button Neuer Beitrag im Kontrollzentrum erzeugen.

Wir werden jetzt für unseren Tanzlehrer Felix Muster einen kleinen Lebenslauf erstellen, der Ihnen die Eingabe von Inhalten etwas verdeutlichen soll. Tragen Sie zunächst einen Titel in das Feld Titel ein. Der Alias kann vom eigentlichen Titel abweichen, sollte aber aussagekräftig genug sein, um Suchmaschinen das Leben leichter zu machen.

Hier klicken, um das Bild zu vergrößern

Abbildung 5.10 Soll der Beitrag gleich verfügbar sein und auf der Startseite auftauchen?

Bestimmen Sie hier auch gleich, ob der Text sofort freigegeben sein soll und ob er auf der Startseite erscheinen darf. Sie sehen, man kann schon an dieser Stelle bestimmen, wie der Inhalt der Startseite gestaltet werden soll und welche Beiträge dort auftauchen dürfen (Abbildung 5.10).

Im großen Eingabefeld für Ihren eigentlichen Text können Sie nun entscheiden, ob es zunächst einen kurzen Intro-Text geben soll oder ob

46

Page 47: Joomla 1 5 Handbuch

gleich der ganze Artikel erscheinen soll. Es gibt an dieser Stelle nicht mehr zwei Eingabefelder, wie es in älteren Joomla!-Versionen der Fall war, sondern Sie geben einfach Ihren Text ein und positionieren den Cursor dort, wo der Intro-Text zu Ende ist und der eigentliche Artikel beginnt. Klicken Sie dann auf den Button Weiterlesen unter diesem Eingabefeld. Sie können den Text über die Werkzeugleiste formatieren oder Elemente wie Bilder und Tabellen hinzufügen. Die Aufteilung des Textes in zwei Bereiche bewirkt im Frontend, dass bei der Einbindung Ihres Beitrags zunächst nur das Intro zu lesen sein wird. Erst wenn man auf den Button Weiterlesen klickt, gelangt man zum kompletten Beitrag.

Gehen wir gleich weiter zu der Eingabe des eigentlichen Textes. Klicken Sie dazu in das Eingabefeld, und beginnen Sie mit Ihrer Eingabe. Da es sich hier nur um ein Beispiel handeln soll, werden wir einfach fiktive Daten eintragen. Beginnen wir mit einer Überschrift. Fügen Sie einen Text ein, und formatieren Sie ihn mit »Überschrift 1«. Jetzt erstellen wir eine Tabelle, die einige Daten des Tanzlehrers enthalten wird. Klicken Sie dazu auf das Tabellensymbol in der Werkzeugleiste, und tragen Sie bei den Tabellenoptionen die gewünschten Werte ein. In Abbildung 5.9 sehen Sie die Backend-Ansicht der soeben erstellten Inhaltsseite.

Hier klicken, um das Bild zu vergrößern

Abbildung 5.11 Ein eigener Beitrag auf der Startseite

Betrachten wir unseren neuen Inhalt auch einmal im Frontend. Haben Sie bei Ihrem Beitrag die Option Startseite angewählt? Falls nicht, können Sie das nachträglich ändern, denn erst dann erscheint der Beitrag auf der Startseite und in der Startseitenbeiträge-Verwaltung. Öffnen Sie dazu noch einmal den Beitrag, und aktivieren Sie die Option Startseite oder klicken Sie in der Beitragsübersicht in der Spalte Startseite auf das Icon, um den Artikel für die Startseite freizuschalten.

47

Page 48: Joomla 1 5 Handbuch

6 Eine erste WebseiteWir werden nun eine einfache Website mit einigen Unterseiten erstellen und uns eingehend mit den Inhalten und der Struktur der Informationen beschäftigen. Auch das Erscheinungsbild werden wir in diesem Kapitel über ein Template etwas verändern. Mit Templates werden wir uns allerdings intensiver in Kapitel 7, »Das Website-Design«, beschäftigen. Dort erfahren Sie auch, wie man ein eigenes Template anlegt und was dabei von Joomla! erwartet wird. Kommen wir aber zurück zu unserer Tanzschule. Sie können diese Site Schritt für Schritt mit erstellen und gewinnen so Ihre ersten Erfahrungen im Umgang mit Joomla!.

Zunächst brauchen wir ein passendes Template. Vielleicht stellen Sie sich jetzt die berechtigte Frage, ob es nicht sinnvoll wäre, mit dem Design der Seite zu warten, bis Struktur und Inhalte stehen. Das Problem ist nur, dass ohne Template nichts angezeigt wird. Ganz so schlimm ist das aber auch nicht, da bei der Joomla!-Installation bereits Templates mitgeliefert werden. Also haben Sie zwei Möglichkeiten: Sie nutzen zunächst das Standardtemplate, erstellen die Site und suchen sich dann das passende Template aus, oder Sie kümmern sich gleich am Anfang um das geeignete Template, wie wir das in unserem Beispiel machen werden.

Im nächsten Schritt müssen wir uns Gedanken über die inhaltliche Organisation unserer Site machen. Der Umfang und die Struktur werden sich auf etwa sieben Menüpunkte (Home, Person, Referenzen, Tanzstile, Tanzschulen, Training, Kontakt) beschränken, wobei mindestens einer der Punkte noch mal in einige hierarchisch angeordnete Elemente unterteilt wird. Bei den Inhalten dieser Bereiche wird es sich überwiegend um dynamische Informationen handeln, die in regelmäßigen Abständen aktualisiert werden. Lediglich Informationen wie »Kontakt« bzw. das Impressum oder AGB lassen sich statischen Seiten zuordnen, deren Inhalte selten verändert werden müssen und inhaltlich nicht mit anderen Seiten zusammenhängen. Statische Seiten müssen immer über einen direkten Aufruf angesprochen werden. Sie können im Gegensatz zu dynamischen Inhalten nicht mehrfach über Bereichs- oder Kategorieseiten auftauchen.

Joomla! gibt dem Benutzer eine feste Struktur zur Organisation der Inhalte vor. Ähnliche Content-Management-Systeme (CMS) verwenden die bekannte Baumstruktur mit Ordnern und Dokumenten. In unserem Fall findet aber eine Aufteilung in Bereiche, Kategorien und Beiträge (in Vorgängerversionen hießen diese Sektionen, Kategorie und Inhaltselemente) statt. Mit diesen Zuordnungen haben Sie immer einen direkten Überblick über Ihre Inhalte. Sobald diese Struktur einmal steht, können Sie entscheiden, welche Elemente tatsächlich im Frontend veröffentlicht (Freigegeben) werden sollen oder nicht (Standardeinstellung ist Ja).

Im letzten Schritt können Sie die Inhalte für die Webseite erstellen. Wie das funktioniert, haben Sie bereits in Kapitel 5, »Inhalte erstellen und verändern«,

48

Page 49: Joomla 1 5 Handbuch

erfahren. Dort haben wir die Erstellung und Verwaltung von Beiträgen bereits genauer unter die Lupe genommen.

Als konkretes Projekt soll weiterhin die Website für einen Tanzlehrer dienen. Die Site soll einige Daten und Informationen zum Lehrer und seinen Tanzkursen beinhalten. Der Tanzlehrer dient uns nur als Einstiegsbeispiel und wird auch im weiteren Verlauf dieses Buches als Versuchskaninchen fungieren. Anhand des Beispiels werden Ihnen vermutlich schon die ersten Ideen für diverse Anwendungen durch den Kopf gehen. Statt einer Site für einen Tanzlehrer kann man sich natürlich ebenso gut Seiten für Vereine, Unternehmen, Betriebe oder sonstige Einrichtungen vorstellen. Das Beispiel soll auch verdeutlichen, dass Sie zunächst mit einem kleinen Projekt beginnen können, von Joomla! aber nicht eingeschränkt werden und stetig wachsen können. Je nach Bedarf kann aus der Seite eines Tanzlehrers eine Website für eine ganze Tanzschule werden, die Sie problemlos mit zusätzlichen Inhalten und Erweiterungen anreichern können.

6.1 Auswahl und Aktivieren des Templates

Bevor wir ein geeignetes Template heraussuchen, können Sie sich schon ein wenig Inspiration auf der deutschen Joomla!-Seite unter www.joomlaos.de holen. Hier finden Sie unter dem Menüpunkt Userpages z. B. die Rubrik Sport & Vereine. Besuchen Sie einfach einige der Seiten, und verschaffen Sie sich einen Überblick zu den gestalterischen und inhaltlichen Unterschieden. Auf Joomlaos werden wir uns später auch unser Beispiel-Template holen. Kehren wir aber zunächst zu unserer Joomla!-Installation zurück.

Das Joomla!-Backend bietet uns zwei schnelle Möglichkeiten, um ein Template auszuwählen und zu aktivieren:

Hier klicken, um das Bild zu vergrößern

Abbildung 6.1 Die Template-Verwaltung im Backend

Möchten Sie eines der vorinstallierten Templates nutzen, so aktivieren Sie dafür einfach über den Menüpunkt Erweiterungen • Templates das gewünschte Template für Ihre neue Site, indem Sie den entsprechenden Radiobutton anklicken und mit Standard als Standard-Template definieren

49

Page 50: Joomla 1 5 Handbuch

(Abbildung 6.1). An dieser Stelle haben Sie übrigens auch die Möglichkeit, ein Template für den Backend-Bereich auszuwählen. Wechseln Sie dazu einfach von der Site-Ansicht auf die Ansicht Administrator. Es sollte das Standard-Template in der Template-Auflistung erscheinen.

Hier klicken, um das Bild zu vergrößern

Abbildung 6.2 Die Template-Verwaltung für den Backend-Bereich

Zusätzlich finden Sie online z. B. unter www.joomlaos.de eine ständig wachsende Template-Galerie mit freien Vorlagen zum Download.

Wechseln Sie also in Ihrem Browser auf die Seite www.joomlaos.de.

Wählen Sie den Menüpunkt Template Galerie an, und schon können Sie entscheiden, für welche Joomla!-Version Sie das Template benötigen.

Klicken Sie auf Templates für Joomla 1.5. Der Bereich ist noch einmal unterteilt in:

o Statische Templates – Diese Templates sind für eine bestimmte Bildschirmbreite ausgelegt.

o Dynamische Templates – Dynamische Templates passen sich an die Breite des Bildschirms des Users an.

o Breite wählbar – Hier bestimmen Sie die Breite des Templates über Parameter.

Hier klicken, um das Bild zu vergrößern

Abbildung 6.3 Der Download-Bereich für Templates bei joomlaos

50

Page 51: Joomla 1 5 Handbuch

Sobald Sie sich für einen der drei Bereiche entschieden haben, können Sie sich über »Live Preview« ein Demo des jeweiligen Layouts ansehen oder die passende Vorlage sofort herunterladen. Dazu klicken Sie auf Download. In unserem Beispiel nehmen wir das Template »Biz Blue 2« aus der Kategorie Templates für Joomla! 1.5 im Bereich Dynamische Templates. (Sie finden die Datei auch auf der Buch-DVD im Verzeichnis /template.) Sobald der Download abgeschlossen ist, können Sie über Ihr Joomla!-Backend den Verzeichnispfad der Quelldatei angeben. Die Quelldatei ist ein gepacktes Verzeichnis, das mehrere Dateien für die Installation enthält. Aber keine Sorge – Sie müssen sich nicht um den Inhalt oder das Entpacken dieser Datei kümmern! Der Installationsmanager von Joomla! übernimmt alle nötigen Vorgänge:

Anders als bei der Aktivierung eines bereits installierten Templates wählen Sie jetzt unter dem Menüpunkt Erweiterungen die Option Installieren/Deinstallieren.

Der Erweiterungen-Manager verwaltet bei Joomla! 1.5 sämtliche Extensions und Templates.

Nun geben Sie bei Paketdatei über Durchsuchen den Pfad Ihres Downloads an und

installieren das Paket mit Datei hochladen & installieren (Abbildung 6.4).

Hier klicken, um das Bild zu vergrößern

Abbildung 6.4 Erweiterungen suchen und hochladen

Nach der Bestätigung der erfolgreichen Installation können Sie über das Menü Erweiterungen • Templates zu der Liste der Templates wechseln.

In der Auflistung ist nun auch das neu installierte Template Biz Blue 2 aufgeführt.

51

Page 52: Joomla 1 5 Handbuch

Zum Aktivieren klicken Sie auf den Radiobutton vor dem Template und bestätigen Ihre Auswahl mit dem Button Standard aus der Werkzeugleiste.

Hier klicken, um das Bild zu vergrößern

Abbildung 6.5 Diese Templates stehen Ihnen nun für das Frontend zur Verfügung.

Wenn Sie nun in das Frontend wechseln, erscheint Ihr Joomla! bereits im neuen Gewand.

Hier klicken, um das Bild zu vergrößern

Abbildung 6.6 Neues Template im Frontend

Alte Vorlagen

Wenn Sie eine nicht kompatible Vorlage heruntergeladen haben und versuchen, diese zu installieren, erhalten Sie eine Fehlermeldung. Ihr System wird deshalb aber keinen Schaden erleiden.

Um auch ältere Templates zu installieren, können Sie unter Erweiterungen • Plugins die Option System – Legacy (Vorgängerversionsmodus) aktivieren. Joomla! installiert dabei zusätzlichen Code und ermöglicht so die Abwärtskompatibilität. In der Joomla!-Statuszeile erscheint ein Icon, das Sie auf den Legacy-Modus aufmerksam macht.

52

Page 53: Joomla 1 5 Handbuch

7 Das Website-DesignMittlerweile haben wir unsere Website strukturiert und mit Inhalten angereichert. Auch das Standarderscheinungsbild haben wir mit einem neuen Template abgewandelt. In diesem Kapitel werden wir uns mit einigen einfachen Anpassungen der Vorlage beschäftigen.

Aber keine Sorge: Die Eingaben, die wir bisher für den Tanzlehrer gemacht haben, gehen deshalb nicht verloren! Hier sehen Sie einen bedeutenden Vorteil eines Content-Management-Systems. Inhalte und Gestaltung werden getrennt voneinander erstellt und behandelt, d. h., Sie könnten Ihre Inhalte jederzeit in einer neuen Umgebung erscheinen lassen, ohne dafür Beiträge, Kategorien oder Bereiche kopieren zu müssen.

Dank des Templates müssen wir uns selbst keine Gedanken über das Layout, die Navigation oder eine geeignete Farbpalette machen. Diese Dinge werden vorgegeben, könnten aber auch jederzeit über die CSS- bzw. HTML-Datei geändert werden. Dies wäre wichtig, falls man die Corporate Identity (also das bisherige Erscheinungsbild) des Tanzlehrers berücksichtigen muss.

Hat der Tanzlehrer eventuell schon ein Logo oder sonstiges Printmaterial wie Faltblätter und Plakate, an dem man sich orientieren sollte?

An unserem neuen Template werden wir kleine Änderungen vornehmen, damit es etwas besser zum Thema »Tanzen« passt. Das Logo muss selbstverständlich ausgetauscht werden, und es soll noch die eine oder andere Schriftfarbe verändert werden.

7.1 Warum verwenden wir ein fertiges Template?

Vielleicht haben Sie sich gewundert, warum wir nicht einfach selbst ein Template erstellen und dabei gleich alle Einstellungen nach unseren Vorstellungen implementieren? Das ist natürlich wünschenswert, da man so ein Layout und Design erhalten würde, das in dieser Form im Internet vermutlich nicht noch einmal auftauchen wird. Allerdings setzt das tiefere Kenntnisse im Webdesign voraus. Wir werden uns in einem späteren Kapitel noch intensiver mit der Templateerstellung beschäftigen und ein eigenes, einfaches Layout erstellen. Für den ersten Einstieg wollen wir uns mit den Bereichen eines Templates anhand einer vorgefertigten Vorlage vertraut machen. So werden Sie also zunächst die Templateverwaltung kennenlernen und einen ersten Einblick in die Templatearchitektur gewinnen.

53

Page 54: Joomla 1 5 Handbuch

Gutes Webdesign fordert neben den technischen Grundlagen HTML und CSS auch die Überschneidung von mindestens drei technischen Schwerpunktgebieten (Abbildung 7.1).

Hier klicken, um das Bild zu vergrößern

Abbildung 7.1 Was macht eine gute Website aus?

Solange Sie in diesen Gebieten nicht ausreichend Erfahrung besitzen, hätte Ihr eigenes Template Schwächen, die vielleicht so weit führen, dass Ihre Website auf einigen Browsern gar nicht betrachtet werden kann. Daher verlassen wir uns auf die fertigen Templates, die von erfahrenen Entwicklern erstellt wurden und bereits von anderen Usern im Einsatz getestet werden konnten. Wir beschränken uns auf die Anpassung dieser Vorlage. Dabei kann nicht viel schief gehen, und man erhält eine stabile Website, die auch professionellen Ansprüchen gerecht wird.

Werfen wir jetzt mal einen genaueren Blick auf unser Frontend mit dem neu installierten Template. Wir entscheiden nun, welche Bereiche an unsere Bedürfnisse angepasst werden müssen. Dabei werden wir einerseits Joomla!-Module einfach abschalten und andererseits einige Veränderungen an der Formatierung im Template vornehmen.

Ziele des Layouts

Es gibt viele Bereiche, die nach den Usability-Kriterien untersucht werden könnten. Da uns das fertige Template-Layout nicht mehr alle Möglichkeiten offenlässt, konzentrieren wir uns auf einige wenige Kriterien (eine große Auswahl an Artikeln zum Thema Usability finden Sie unter http://www.drweb.de/usability/index.shtml):

Der User kann sein Ziel auf der Website innerhalb von fünf Sekunden erreichen.

Es muss eine Suchfunktion geben.

54

Page 55: Joomla 1 5 Handbuch

Eine Sitemap wäre wünschenswert.

Menüs sollten maximal ca. sieben Einträge beinhalten, um übersichtlich zu bleiben.

Die Ladezeit der Website sollte unter fünf Sekunden liegen und nicht durch aufgeblähte Layout-Grafiken (oder unnötigen JavaScript-Einsatz) verlangsamt werden.

Überschriften, Beschriftungen und Bilder müssen aussagekräftig sein. (Auch Thumbnails sollen erkennbare Inhalte aufweisen.)

E Am wichtigsten: Der Inhalt und das gesamte Erscheinungsbild sollen dem User zeigen, dass er sich auf der richtigen Seite befindet. Dann steigt seine Toleranz, und er nimmt auch mal einen Klick mehr oder kleine Unreinheiten in Kauf.

8 Benutzer und BereicheEin Content-Management-System spielt seine Stärke erst aus, wenn mehrere Menschen an der Gestaltung der Seiten beteiligt sind. Es ist dann nicht mehr nötig, dass ein zentraler Webmaster alle Inhalte in die Seite einpflegt. Vielmehr können die Inhaltslieferanten ihre Beiträge selbst im System erstellen und nach ihren Wünschen anpassen. Das erspart dem Webmaster viel Arbeit und dem gesamten Prozess einige Zwischenschritte.

Zudem haben Webseiten häufig Bereiche für registrierte User, in denen zusätzliche Informationen stehen oder auch von den Benutzern selbst zur Verfügung gestellt werden können. Diese privaten Bereiche werden ebenfalls von Joomla! verwaltet und geschützt. Es muss also zwischen Frontend- und Backend-Benutzern unterschieden werden.

Bei der Arbeit mit registrierten Benutzern gibt es zwei grundlegende Konzepte:

Authentifizierung bedeutet, dass das System weiß, wer die Person ist, die gerade mit den Seiten arbeitet. Dazu wird meistens ein Login benötigt, mit dem sich die User einmal pro Sitzung anmelden. Aktionen des Benutzers werden so nachvollziehbar und unterliegen dadurch einer gewissen Kontrolle. Je nach System steht es jedoch unter Umständen jedem Besucher frei, sich namentlich oder per Pseudonym anzumelden. Unter dem Aspekt der Sicherheit ist eine reine Authentifizierung daher ein eher schwacher Schutz.

Autorisierung ist der zweite Schritt, in dem überprüft wird, ob ein bekannter User auch wirklich die Berechtigung hat, eine Seite zu

55

Page 56: Joomla 1 5 Handbuch

sehen oder zu bearbeiten. So kann man beispielsweise zwischen »nur« bekannten Usern, Redakteuren und Administratoren der Seite unterscheiden, die jeweils die für sie nötigen Bereiche sehen und die für ihre Aufgaben wichtigen Aktionen ausführen können. Diese Rechtestruktur kann je nach System relativ differenziert sein, ist allerdings bisher nicht zu den Stärken von Joomla! zu rechnen.

8.1 Benutzer anlegen und verwalten

Joomla! organisiert seine User in der Benutzerverwaltung. Diese finden Sie entweder im Symbolbereich auf der Hauptseite des Backends oder aber im Menü unter Site • Benutzer (Abbildung 8.1). Hier sollte bisher nur ein User zu finden sein, nämlich der Administrator.

Hier klicken, um das Bild zu vergrößern

Abbildung 8.1 Die Benutzerverwaltung

In der Liste der registrierten Benutzer werden Ihnen einige Informationen zur Verfügung gestellt.

Tabelle 8.1 Informationen für registrierte Benutzer

Detail Information

# Nummerierung

NameDas ist der echte Name des Benutzers. Er wird beim Einloggen gegebenenfalls als Begrüßung mit ausgegeben.

Benutzername Unter diesem Namen kann sich der Nutzer anmelden.

AngemeldetSehen Sie hier einen grünen Haken, so ist der betreffende Nutzer gerade im System angemeldet.

Aktiv Wenn Sie (nur als Administrator) hier durch einen Klick den

56

Page 57: Joomla 1 5 Handbuch

Haken entfernen, kann sich der Nutzer nicht mehr einloggen. Sein Account ist gesperrt.

Benutzergruppe

Die Zugehörigkeit zu einer Benutzergruppe entscheidet über die Rechte, die der User im System hat.

E–MailEine Kontaktadresse, über die Sie den User (hoffentlich) erreichen können.

Letzter Besuch Hier sehen Sie das Datum des letzten Logins des Users.

ID Weist dem User eine eindeutige Nummer zu.

Sie sehen in der Werkzeugleiste neben den üblichen Aktionen auch den Button Abmelden. Damit können Sie andere Benutzer aus dem System abmelden, wenn Sie beispielsweise vorhaben, Wartungsarbeiten am System durchzuführen. Setzen Sie einfach einen Haken in die Checkbox vor die User, die Sie abmelden wollen, und klicken Sie auf das Abmelden-Symbol.

Verschrecken Sie Ihre Benutzer nicht!

Natürlich ist das eine sehr unschöne Methode. Vergewissern Sie sich, dass keiner der User gerade an einem Text arbeitet und durch Ihre Aktion seine wertvollen Werke verliert.

Um einen Nutzer aus dem System zu entfernen, markieren Sie wieder die entsprechende Checkbox und klicken auf das Löschen-Symbol. Aber aufgepasst: Der User wird dann direkt gelöscht und nicht im Papierkorb zwischengespeichert. Sie sollten sich also sicher sein, dass Sie das wirklich tun wollen.

8.1.1 Neue Benutzer anlegen und bearbeiten

Um einen neuen Benutzer aus dem Backend heraus anzulegen, klicken Sie auf das Symbol Neu. Es erscheint ein Formular, in dem Sie die nötigen Angaben machen können. Diese entsprechen weitestgehend den Angaben, die Sie in der Benutzerverwaltung angezeigt bekommen. Im Feld Neues Passwort können Sie ein Passwort vergeben, das Sie zur Sicherheit in Passwort bestätigen noch einmal eintippen müssen.

57

Page 58: Joomla 1 5 Handbuch

Achtung: Tippfehlergefahr!

Es ist sehr verlockend, hier mit Copy & Paste zu arbeiten. Davon sei ausdrücklich abgeraten. Wenn Sie sich beim ersten Mal vertippt haben, wird der Fehler übernommen, und das Passwort ist wertlos.

Das Auswahlfeld Benutzergruppe bestimmt die Rechte, die der Nutzer haben wird. Näheres dazu finden Sie in Abschnitt 8.3, »Seitenzugriff«. Wenn Sie hier »Administrator« oder »Super Administrator« angeben, so erhalten Sie nach dem ersten Speichern und nochmaligem Aufruf des Editors zusätzlich die Auswahl Benutzer sperren und Systemnachrichten empfangen. Letzteres bedeutet zum Beispiel, dass dieser Nutzer informiert wird, wenn sich ein Besucher im Frontend registriert.

Im Bereich Parameter legen Sie fest, welchen Editor der neue Nutzer standardmäßig verwenden soll. Wenn Sie hier nichts angeben, wird der Standardwert der Seite verwendet. Zusätzlich können Sie noch die Sprache für das Front- und Backend sowie für die Hilfe und die Zeitzone festlegen. Gibt es für den User eine Verbindung zu einem Kontaktdatensatz in der Komponente Kontakte (vgl. Abschnitt 9.3.2, »Kontakte«), so werden diese Daten im Bereich Kontakt Information angezeigt.

Wenn Sie einen Userdatensatz bearbeiten wollen, markieren Sie den entsprechenden Eintrag in der Userverwaltung und klicken auf das Bearbeiten-Symbol oder ganz einfach auf den Usernamen. Sie gelangen dann auf die gleiche Maske, mit der Sie auch neue Nutzer erzeugen können. Die Felder Neues Passwort und Passwort bestätigen sind nicht ausgefüllt. Füllen Sie diese nur aus, wenn Sie das Passwort ändern wollen. Soll es nicht angetastet werden, so können die beiden Felder leer bleiben.

9 Module, Plug-ins, KomponentenEine der Stärken von Joomla! ist seine Erweiterbarkeit. Mit wenigen Handgriffen können Sie Ihrer Webseite Funktionalität verpassen, die Sie ansonsten aufwendig selbst einbinden und gestalten müssten. Dazu dienen kleine Programmpakete, die der eigentlichen Joomla!-Software hinzugefügt werden können. Einige dieser Erweiterungen bekommen Sie in der Basisinstallation gleich mitgeliefert. Andere können Sie bei den einschlägigen Quellen im Netz beziehen.

Joomla! kann auf drei verschiedene Arten erweitert werden: durch Module, Plug-ins oder Komponenten. Alle drei sind kleine Zusatzprogramme, die entweder vorhandenen Inhalt verändern, neu aufbereiten oder zusätzliche Informationen auf der Seite ausgeben. Diese Dreiteilung ist ungewöhnlich und kann gerade für Leute verwirrend sein, die schon Erfahrung im Umgang mit

58

Page 59: Joomla 1 5 Handbuch

anderen CMS wie TYPO3 haben, denn hier werden alle Erweiterungen mit einem einheitlichen Namen bezeichnet und auch einheitlich verwaltet. Um etwas Klarheit zu schaffen:

Module dienen der Anzeige spezieller Inhalte im Front- und im Backend. Sie können im Template positioniert werden und sind nicht Bestandteil des normalen Inhaltsbereichs. In der Regel werden die Elemente, die Sie im Frontend auf der linken und rechten Seite sehen, über Module gesteuert. Sie werden in der Modulverwaltung angepasst. Beispiele dafür sind das Login- und das Suchformular.

Plug-ins sind kleine Programme, die den Inhalt einer Seite verändern, bevor dieser ausgegeben wird. Viele Plug-ins werden im Text eines Content-Elements mit geschweiften Klammern eingebunden. Beispielsweise können so Bilder in den Text eingebunden werden. Auch der TinyMCE-Editor ist ein Plug-in. Daneben verrichten Plug-ins systemnahe Aufgaben wie die Anmeldung der Benutzer oder die Erweiterung der Suche.

Komponenten sind in Bezug auf Aufbau und Bedienung die komplexesten Erweiterungen. Sie können eigene dynamische Inhalte verwalten und im Backend und in der Datenbank separate Bereiche haben. Beispiele sind Umfragen oder Banner. Komponenten werden üblicherweise direkt im Inhaltsbereich angezeigt. Einige besitzen zugeordnete Module oder Plug-ins, um ihre Inhalte anzuzeigen. So können Sie u. a. ein komplettes Shop-System oder ein Wiki als Komponente in Ihre Seite einbinden.

Plug-ins und Mambots

Plug-ins hießen in den Vorgängerversionen Mambots. Die Namensänderung soll offiziell die tiefe Integration dieser Erweiterungen in das Kernsystem verdeutlichen. Natürlich hat sie auch den Effekt, letzte Spuren des Vorgängersystems Mambo zu eliminieren.

Jede der Erweiterungsarten hat eigene Mittel, um über das Backend konfiguriert zu werden. Diese sowie die einzelnen Module, Plug-ins und Komponenten werden wir uns im Folgenden näher ansehen. Im ersten Teil des Kapitels werden wir uns den wichtigsten bereits mitgelieferten Erweiterungen widmen. Dabei werden wir auch versuchen, in unserer Beispielseite die Zahl der Elemente auf ein geringes Maß zu reduzieren, um die Übersichtlichkeit zu erhalten. Im zweiten Teil zeigen wir Ihnen, wie Sie neue Erweiterungen in Ihr System einbinden können. Eine vollständige Liste der Module und Plugins finden Sie in Kapitel 32, »Standarderweiterungen«.

59

Page 60: Joomla 1 5 Handbuch

9.1 Module

Die mitgelieferten Module erfüllen ganz unterschiedliche Aufgaben. Sie stellen zusätzliche Informationen zur Verfügung, geben funktionale Elemente wie Menüs und Suchfunktionen aus oder erfüllen dekorative Zwecke.

9.1.1 Die Modulverwaltung

Um sich einen Überblick über die installierten Module zu verschaffen und um zu deren Einstellungsseiten zu gelangen, verwenden Sie die Modulverwaltung. Diese finden Sie im Menü unter Erweiterungen • Module. Nach dem Aufruf wird Ihnen eine Aufzählung der installierten Module präsentiert.

Site und Administrator

Achten Sie darauf, dass der Reiter Site und nicht Administrator ausgewählt ist. Neben den Seitenmodulen gibt es auch noch Administratormodule für das Backend. Diese regeln verschiedene Darstellungen und sind hier nicht weiter von Bedeutung. Nähere Informationen finden Sie in Kapitel 31,»Standard-Erweiterungen«

Die Liste der Modulverwaltung wird Ihnen bekannt vorkommen, sieht sie doch so ähnlich aus wie die der Beiträge. Die Einträge sind im Einzelnen:

Tabelle 9.1 Die Einträge in der Modulverwaltung

Detail Funktion

#

Eine laufende Nummer ohne weitere Bedeutung. Die eigentliche Anzeigereihenfolge der Module bestimmt sich aus der Position (alphabetisch) und dann nach der Ordnungsnummer in der Spalte Reihenfolge.

NameDer Name des Moduls. Per Klick kommen Sie auf die Detailseite mit weiteren Einstellungsmöglichkeiten.

AktiviertSteht hier ein grüner Haken, wird das Modul im Frontend angezeigt, ansonsten ist es versteckt. Ein Klick auf das Symbol schaltet zwischen den beiden Zuständen um.

Reihenfolge Hier können Sie die Anzeigereihenfolge innerhalb einer

60

Page 61: Joomla 1 5 Handbuch

Position entweder direkt eingeben, indem Sie die Zahlen in den Kästchen ändern, oder Sie klicken auf einen der grünen Pfeile, um das Modul nach oben oder unten zu verschieben. Vergessen Sie nicht, danach auf das Diskettensymbol in der Spaltenüberschrift zu klicken, sonst gehen die Änderungen verloren. Die Änderung ist nur möglich, wenn Sie die Modulliste nach Position sortieren.

Zugriffsebene

Zeigt an, wer das Modul sehen darf. Mehr dazu finden Sie in Kapitel 8, »Benutzer und Bereiche«.

PositionZeigt an, an welcher Position im Template das Modul ausgegeben werden soll.

SeitenZeigt an, ob das Modul auf allen (»Alle«), nur einigen (»Verschiedene«) oder auf keiner Seite (»Keine«) angezeigt wird.

TypDie Art des Moduls. Aus dieser Angabe kann auch seine Funktion abgelesen werden.

ID Eine interne Identifikationsnummer.

Hier klicken, um das Bild zu vergrößern

Abbildung 9.1 Die Modulverwaltung

Wenn Sie sehr viele Module in Ihrem System installiert haben, dann kann es hilfreich sein, gezielt nur eine Gruppe anzeigen zu lassen. Dazu dienen die Filter rechts über der Liste. Hier finden Sie vier Auswahllisten, in denen Sie die Templates, die Position, den Typ und den Status angeben können, die bzw. der aufgelistet werden soll. Im Feld Filter können Sie Einschränkungen für den Namen angeben.

61

Page 62: Joomla 1 5 Handbuch

Wenn Sie hier beispielsweise »Menü« eingeben und auf drücken, werden alle Module aufgelistet, die das Wort »Menü« enthalten. Die Filter können auch kombiniert werden. Wählen Sie im Dropdown-Feld Status wählen »Aktiviert«, so sehen Sie nur noch die Einträge, die auch im Frontend angezeigt werden. Mit dem Button Reset wird der Textfilter deaktiviert, und Sie sehen wieder die gesamte Liste. Beachten Sie, dass der Filter für den Status noch immer gesetzt ist.

Relativ leicht können Sie in der Modulverwaltung überflüssige Elemente entfernen. Klicken Sie beispielsweise für den Eintrag »Beispielseiten« auf den grünen Haken in der Spalte Aktiviert. Jetzt sollte da ein roter Kreis zu sehen sein. Wenn die Spalte verschwunden ist, überprüfen Sie, ob der Filter für den Status noch gesetzt ist. Gehen Sie jetzt mal ins Frontend, und laden Sie die Seite neu. Richtig, das Menü mit den Links zu den Joomla!-Seiten ist verschwunden. Deaktivieren Sie auf diese Art auch das Top-Menü.

9.1.2 Positionen

Eine wesentliche Eigenschaft der Module ist ihre Positionierbarkeit. Dazu muss man wissen, dass im Template bestimmte Positionen mit einem Namen versehen werden können. Nun kann man ein oder mehrere Module mit dieser Position verbinden.

Ein Vergleich mit der eigentlichen Ausgabe zeigt, dass an einer Position mehrere Module ausgegeben werden können. Dies ist beispielsweise bei »left« der Fall; hier werden das Hauptmenü und das Login-Formular ausgegeben. Andere Positionen wie »user3« werden gar nicht belegt. Die Ordnung der Module innerhalb einer Position wird in der Spalte Reihenfolge festgelegt und kann direkt aus der Modulverwaltung geändert werden. Die Position selbst kann nur auf den Detailseiten ausgetauscht werden.

Das Anmeldeformular ist momentan nicht sehr prominent. Wir wollen, dass es direkt unter dem Hauptmenü liegt. Tragen Sie dazu im Eintrag »Anmeldung« in der Spalte Reihenfolge eine 1 ein, und klicken Sie danach auf das Diskettensymbol oben in der Spalte. Jetzt müsste sich die Reihenfolge der Einträge geändert haben. Wenn Sie das Ganze im Frontend kontrollieren (vergessen Sie nicht, die Seite neu zu laden), dann sollte sich auch hier die Reihenfolge geändert haben.

Die Namen der Positionen sind nicht immer aussagekräftig

Beachten Sie, dass der Name einer Position vom Entwickler des Templates willkürlich gewählt werden kann. So ist es nicht selbstverständlich, dass die Position »left« auch wirklich links zu sehen ist. In der Regel können Sie sich aber darauf verlassen.

62

Page 63: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 9.2 Die Positionen im Standard-Template

9.1.3 Die Modul-Detailseite

Wenn Sie auf den Namen eines Moduls klicken, so erhalten Sie dessen Eigenschaftsseite.

Etwas umständlicher…

Alternativ können Sie auch einen Haken vor das Modul setzen und rechts oben auf das Bearbeiten-Symbol klicken.

Sehen wir uns beispielsweise die Seite des Moduls »Anmeldung« an.

Die Bereiche Details und Menüzuweisung sind für alle Module gleich. Hier können Sie einige Standardeinstellungen vornehmen, die weitestgehend mit denen auf der Übersichtsseite übereinstimmen. Unter Details legen Sie den Titel des Moduls fest. Wenn Sie den darunterliegenden Radiobutton Titel anzeigen auf Ja gesetzt haben, wird über dem Modul der Titel angezeigt. Die Radiobuttons hinter Aktiviert bestimmen, ob die Erweiterung überhaupt im Frontend angezeigt wird.

Hier klicken, um das Bild zu vergrößern

Abbildung 9.3 Der Modul-Titel

63

Page 64: Joomla 1 5 Handbuch

In der Dropdown-Liste Position kann ausgewählt werden, wo das Modul erscheinen soll, gleich darunter ist auch die Reihenfolge einstellbar. Hinter der Zahl in dieser Dropdown-Liste steht jeweils der Name des aktuellen Moduls, das an dieser Stelle angezeigt werden soll. Wenn Sie die Position ändern, wird das aktuelle Modul jeweils hinter das Modul gesetzt, das Sie in der Auswahl angeben. Das Feld Zugriffsebene zeigt an, wer auf das Modul zugreifen kann. Im Feld Beschreibung finden Sie eine Erklärung, welche Aufgabe das Modul hat.

Im Bereich Menüzuweisung können Sie detailliert festlegen, wo ein Modul angezeigt wird. Dies geschieht über die Menüeinträge. Ist ein Eintrag selektiert, so wird das Modul angezeigt, wenn dieser Menüpunkt angeklickt wird. Sie sehen hier also einmal mehr, dass das Aussehen einer Frontend-Seite nicht vom Inhalt, sondern vielmehr vom gewählten Menüeintrag abhängt. Darüber finden Sie eine Reihe von Radio-Buttons. Alle lässt das Modul auf allen Seiten erscheinen, Keine auf keiner. Nur wenn Sie Wählen Sie einen Menüeintrag von der Liste markiert haben, wird die Selektion der darunterliegenden Liste berücksichtigt. Hier können Sie mehrere Einträge auswählen. Halten Sie dazu die -Taste gedrückt, während Sie die einzelnen Elemente markieren. Wenn Sie einen ganzen Bereich selektieren wollen, klicken Sie mit der Maus auf das erste Element des Bereichs, halten die -Taste gedrückt und klicken nun auf das letzte Element des Bereichs. Vergessen Sie nicht, danach über das Speichern- oder Anwenden-Symbol zu speichern!

Im Bereich Parameter tauchen einige Einträge sehr häufig auf:

Tabelle 9.2 Einträge bei »Parameter«

Detail Bedeutung

Modul-Klassen-Suffix

Damit können Sie angeben, welche CSS-Klasse mit dem Modul verbunden werden soll. Das ist relevant, wenn Sie Änderungen am Template vornehmen (siehe Kapitel 7, »Das Website-Design«).

CachingBestimmt, ob der Inhalt des Moduls gecacht werden soll. Dies kann unter Umständen dazu führen, dass Änderungen nicht sofort übernommen werden, beschleunigt aber die Darstellung.

AnzahlGibt für Listen an, wie viele Inhalte berücksichtigt oder auf einmal ausgegeben werden sollen.

Das Anmeldeformular hat noch einen etwas doppeldeutigen Titel: »Anmeldung« könnte auch zur Nutzerregistrierung führen. Das sollten wir ändern. Geben Sie also im Feld Titel stattdessen »Einloggen« ein. Außerdem

64

Page 65: Joomla 1 5 Handbuch

ist das Formular besser auf der rechten Seite aufgehoben, um die Optik links nicht zu beeinträchtigen. Ändern Sie die Position also auf »right«. Klicken Sie nun auf Speichern, um die Änderungen zu übernehmen und zur Modulverwaltung zurückzukehren. Im Frontend sollten die neuen Einstellungen jetzt wirksam sein.

Sehen wir uns nun einige der mitgelieferten Module genauer an.

9.1.4 Die Menüs

Bei der zentralen Rolle, die Menüs spielen, ist es doch erstaunlich, dass sie als Module ausgegeben werden. Aber genau das ist es, was die Menümodule machen. Sie stellen die Anzeige zur Verfügung, »verpacken« also die Funktionalität in ein Element, das im Frontend dargestellt und positioniert werden kann. Hierzu bietet das Menümodul einige Möglichkeiten.

Unter den Details ist der Titel hervorzuheben, der bei Menüs sicherlich eine prominente Position einnimmt. Wenn Sie also in Ihrer Homepage statt eines »Hauptmenüs« gern ein »Startmenü« hätten, dann ist dieser Parameter der geeignete Ort, um die Umstellung vorzunehmen.

In den Parametern eines Menüs können Sie unter anderem festlegen, ob Untermenüs aufgeklappt werden sollen. Dies geschieht in der Einstellung Untermenüs immer anzeigen. Klicken Sie hier auf Ja, so werden alle Menüs aufgeklappt dargestellt. Im Frontend können Sie sehen, welche Auswirkungen die Änderung hat.

Tabelle 9.3 Parameter eines Menüs

Parameter Bedeutung

Menüname

An dieser Stelle erfolgt die Zuordnung eines Menüs aus der Menüverwaltung zu einem Menümodul. Sie können also beispielsweise mehrere Varianten des Hauptmenüs verwalten und hier immer die aktuelle Version aktivieren.

Menüstil

Diese Auswahl legt fest, wie ein Menü ausgegeben wird. In Joomla! 1.5 ist dies immer »Liste«, die Menüs werden mit CSS formatiert. Aus Kompatibilitätsgründen gibt es auch noch die Optionen der Vorgängerversion: Hochformat (»Vertikal«), Querformat (»Horizontal«) sowie »Flache Liste«, das nur eine HTML-Liste ausgibt, die Sie mit CSS formatieren können.

65

Page 66: Joomla 1 5 Handbuch

Menüicons anzeigenDen Menüeinträgen können Bilder zugeordnet werden. Sie werden allerdings nur angezeigt, wenn diese Option aktiviert ist.

Menüicon-Ausrichtung

Wenn Bilder angezeigt werden, so können sie rechts oder links vom eigentlichen Menüpunkt dargestellt werden.

Menü erweitern

Haben Sie ein hierarchisches Menü, so wird normalerweise nur die erste Unterebene mit angezeigt. Die Option Menü erweitern bewirkt, dass alle Ebenen ausgegeben werden. Dies gilt nur für das vertikale Menü.

Vorgänger aktivieren

Normalerweise wird in einem Menü nur der aktuell ausgewählte Punkt markiert. Mit Vorgänger aktivieren werden alle Menüeinträge selektiert, die hierarchisch in einer Linie übergeordnet sind.

Bild für den Zeileneinzug

Werden mehrere Ebenen ausgegeben, so können diese mit eigenen Bildern eingerückt werden. Diese Bilder werden entweder vom Template vorgegeben, kommen direkt von Joomla!, sind komplett abgeschaltet (»Keine«) oder werden in den folgenden sechs Feldern für jede Ebene ausgewählt.

TrennzeichenFür horizontale Menüs können Sie hier bestimmen, was zwischen den Einträgen als Trennzeichen stehen soll.

SchlusstrennzeichenEbenfalls bei horizontalen Menüs können Sie hier festlegen, welches Zeichen nach dem letzten Eintrag stehen soll.

9.1.5 Anmeldung

Dieses Modul stellt das Anmeldeformular zur Verfügung. Ist ein User angemeldet, so erscheint stattdessen ein Abmelden-Button.

Achtung: Neuer Name

Beachten Sie, dass wir dieses Modul zuvor umbenannt hatten. Es ist jetzt unter »Einloggen« zu finden.

66

Page 67: Joomla 1 5 Handbuch

Es ist naheliegend, dass dieses Modul für alle und nicht nur für registrierte User zugänglich sein soll. Zudem ist die Standardeinstellung, das Formular nur auf der Startseite anzuzeigen, um die Inhaltsseiten nicht zu sehr zu überladen. Der Nachteil ist, dass die User zum Ein- und Ausloggen zur Startseite navigieren müssen. Wenn Sie das nicht wollen, wählen Sie »Alle« im Bereich Menü-Zuweisung.

Die Texte, die im Anmeldungsmodul ausgegeben werden, sind fest kodiert und können nicht geändert werden. Die Anzeige der Registrierseite erfolgt nur, wenn Sie in der Konfiguration unter System die Option Benutzerregistrierung erlauben aktiviert haben.

Zwei Einstellungen sind noch hervorzuheben. Unter Begrüssung kann ausgewählt werden, ob ein Benutzer nach erfolgreichem Login mit den fröhlichen Worten »Hallo, Benutzername« begrüßt wird. Weil dies gestalterisch nicht sehr schön umgesetzt wurde, schalten wir diese Option ab. Hinter dem Punkt Anmeldeweiterleitungsseite können Sie bestimmen, auf welcher Seite ein Benutzer nach erfolgreichem Login landet. Wählen Sie hier die Seite »Lebenslauf« aus. Jetzt können Sie sich zur Kontrolle im Frontend mit Ihrem Administrator-Zugang anmelden. Nach erfolgtem Login sollten Sie auf der zuvor eingestellten Seite landen.

9.1.6 Feed-Anzeige

Im Web 2.0 ist die Zusammenführung von Informationen verschiedener Quellen groß in Mode. Man nennt so etwas »Mashup«. Eine einfache Variante finden Sie auch in den Modulen – die Feed-Anzeige. Mit ihrer Hilfe können Sie einen Newsfeed auf Ihrer Seite anzeigen lassen, beispielsweise die aktuellsten Nachrichten. Das geht so:

Klicken Sie in der Modulverwaltung auf das Symbol Neu. Jetzt erscheint eine Auswahl von verschiedenen Modularten, die Sie neu anlegen können. Fast alle sind aber im System schon vorhanden. Wählen Sie die Feed-Anzeige aus, und klicken Sie auf Weiter. Jetzt sehen Sie die Detailseite des neuen Moduls. Geben Sie als Titel »Nachrichten« ein. Die Feed-URL in den Parametern könnte beispielsweise

http://www.netzeitung.de/export/news/rss/clean/titelseite.xml

sein. Erhöhen Sie die Anzahl der Nachrichten im Feld Beiträge auf 5. Damit die Anzeige noch übersichtlich bleibt, setzen Sie die Felder Feed-Titel, Feed-Beschreibung und Beitragsbeschreibung auf »Nein«. Schließen Sie die Erstellung des Moduls mit Speichern ab. Jetzt haben Sie einen aktuellen Newsticker auf Ihrer Startseite.

67

Page 68: Joomla 1 5 Handbuch

Die restlichen mitgelieferten Module sind in Kapitel 31, »Standarderweiterungen«, ausführlich beschrieben.

10 Pflege der WebseiteWenn Sie ein Joomla!-System betreiben, sind Sie sozusagen der Kapitän der Homepage. Sie legen grob fest, wo es lang geht, brauchen aber eine Crew, die mitmacht. Trotzdem gibt es einige Entscheidungen und Verantwortlichkeiten, die nur bei Ihnen liegen. Das betrifft z. B. das allgemeine Erscheinungsbild, die Funktionalität und die Sicherheit. Die Möglichkeiten, Pflichten und Risiken, die Sie dabei haben, wollen wir im folgenden Kapitel besprechen.

10.1 Seitenweite Einstellungen

Dynamische Inhalte werden nicht nur innerhalb von Artikeln erzeugt, sondern betreffen oft die gesamte Seite. Der Titel, der im Browserfenster angezeigt wird, ist so ein Fall, ebenso wie die Metadaten, die mit jeder aufgerufenen Seite ausgegeben werden und den Suchmaschinen beim Indizieren helfen. Viele dieser allgemeinen Einstellungen können Sie in der Konfiguration vornehmen, die Sie unter Site • Konfiguration finden. Lassen Sie sich nicht durch die Fülle der Parameter irritieren. Wir werden im Folgenden die wichtigsten besprechen.

10.1.1 Seite

Der erste Teil der Einstellungen, die Sie im Reiter Site vornehmen können, betrifft die Erreichbarkeit der Seite. Sie können die Homepage beispielsweise für Wartungszwecke mit einem einzigen Mausklick in der Option Seite offline deaktivieren. Wenn Sie nun speichern und ins Frontend wechseln, sehen Sie einen Kasten mit der Offline-Nachricht und einem Anmeldeformular.

68

Page 69: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 10.1 Joomla! im Offline-Modus

Für unangemeldete Benutzer ist die Seite also nicht mehr sichtbar, registrierte Autoren können sich jedoch nach wie vor einloggen. So können Sie in Ruhe Ihre Homepage vorbereiten. Für unser weiteres Vorgehen sollten Sie die Seite jetzt im Backend wieder online schalten.

Den allgemeinen Titel der Site, der auch in der Titelleiste des Browsers und in Bookmarks angegeben wird, stellen Sie im Feld Seitenname ein. Für Redakteure können Sie in diesem Register zentral festlegen, welcher Editor als Standardoption zur Verfügung gestellt werden soll (Standard-WYSIWYG-Editor). Im Core-Paket von Joomla! haben Sie hier die Möglichkeit, TinyMCE oder XStandard Lite auszuwählen (vgl. Abschnitt 3.3, »Der Editor TinyMCE im Detail«).

XStandard Lite ist deaktiviert

Damit der XStandard-Editor in der Liste auftaucht, muss er zunächst in der Plug-in-Verwaltung aktiviert werden.

Zudem können Sie ein für alle Mal festlegen, wie lang die Listen im Backend sein sollen (Listenlänge). Der Standard ist hier 20, das kann in der täglichen Arbeit aber unter Umständen zu wenig sein.

10.1.2 Suchmaschinenoptimierung und Metainformation

Im Kasten SEO können Sie die Verwendung suchmaschinenfreundlicher URLs aktivieren (SEO steht für Search Engine Optimization). Internetadressen, wie sie von vielen dynamischen Webseiten erzeugt werden, enthalten die anzuzeigende Seite meistens als Parameter, d. h. in dem Teil

69

Page 70: Joomla 1 5 Handbuch

der URL, der dem ? folgt. Suchmaschinen wiederum nehmen diesen Teil der Adresse nicht in ihren Index auf, was dazu führt, dass diese Seiten nicht mit Suchmaschinen gefunden werden können. Eine Lösung für dieses Problem ist, die Parameter als Teil des URL-Pfads zu tarnen, d. h. mit / anzugeben.

Die Option Suchmaschinenfreundliche URLs bewirkt genau das. Sehen Sie sich zunächst im Frontend den Link an, der im Browser in der Adressleiste angezeigt wird, wenn Sie auf Home klicken:

http://localhost/joomla/index.php?option=com_content&view=frontpage&Itemid=1

Ändern Sie nun in der Konfiguration die Option auf »Ja«, und sehen Sie sich die URL erneut an. Die sieht jetzt so aus:

http://localhost/index.php/home

Übersichtlicher, finden Sie nicht? Das sehen auch die Programme der Suchmaschinen so.

Vorsicht nach der Umstellung

Testen Sie die Seite ausgiebig, nachdem Sie auf suchmaschinenfreundliche URLs umgeschaltet haben. Die Umstellung bedeutet einen relativ tiefen Eingriff ins System. Gelegentlich kann es vorkommen, dass die eine oder andere Seite im SEO-Modus nicht mehr angezeigt wird.

Ebenfalls zur Suche dienen die sogenannten Metadaten. Das sind in der Seite mitgelieferte Beschreibungen des Inhalts, die Schlüsselbegriffe und typisierte Informationen enthalten. Im Kasten Metadaten können Sie unter Globale Metadaten-Beschreibung einen Text zu Ihrer Seite angeben, der dann in den meisten Suchmaschinen in der Trefferanzeige mit ausgegeben wird. Im Feld Globale Metadaten-Schlüsselwörter können Sie durch Kommas getrennt mehrere Schlüsselbegriffe angeben, von denen Sie denken, dass sie die Seite gut charakterisieren. Diese werden von vielen Suchmaschinen bei der Indizierung bevorzugt beachtet. Sie sehen also, dass diesen beiden Einträgen eine große Bedeutung zukommt, wenn Sie wollen, dass Ihre Seite bei Google, Yahoo! & Co. eine gute Position in der Trefferliste erhält. Die Beschreibung sollte nicht zu lang sein, vielleicht ein oder zwei Sätze, die einige für den Inhalt Ihrer Seite charakteristische Wörter enthalten. Bei den Schlüsselwörtern ist es mittlerweile nicht mehr nötig, ja sogar kontraproduktiv, alle möglichen Varianten von Groß- und Kleinschreibung oder Einzahl und Mehrzahl eines einzigen Wortes anzugeben. Besser ist auch hier, eine Reihe von möglichst treffenden Wörtern zu finden. Die letzten beiden Optionen steuern die Ausgabe von Titel (Zeige Titel-Metadaten) und Autor (Zeige Autor-Metadaten) als Metainformation der Seite und sollten auf »Ja« stehen, um den Suchmaschinen möglichst viele Informationen über eine Seite zu liefern.

70

Page 71: Joomla 1 5 Handbuch

10.1.3 Benutzer

Bei einer normalen Installation von Joomla! steht es allen Besuchern Ihrer Seite frei, sich über das Frontend als Benutzer einzutragen. Das ist nicht immer erwünscht, zum Beispiel gerade dann, wenn es Bereiche gibt, die nur ausgewählte Benutzer sehen sollen. Daher können Sie die eigenhändige Registrierung abschalten. Gehen Sie dazu in die Konfiguration und dort auf den Reiter System. Dort finden Sie den Kasten Benutzer. Wenn Sie Benutzerregistrierung erlauben auf »Nein« stellen, kann sich kein Besucher mehr selbst registrieren. Es gibt aber auch Mechanismen, um bei aktivierter Anmeldung Missbrauch nach Möglichkeit zu vermeiden. Die Standardeinstellungen sind hier eigentlich sehr gut gewählt. Neue Benutzer werden über Benutzergruppe neu registrierter Benutzer der Gruppe »Registriert« zugeordnet, d. h., sie haben keine Bearbeitungsrechte. Zudem wird nach der Registrierung eines Users zunächst eine Bestätigungs-E–Mail mit einem Aktivierungslink an ihn geschickt, wenn Neue Benutzerkonto-Aktivierung auf »Ja« gestellt ist. So können Sie sichergehen, dass die E–Mail-Adresse auch wirklich existiert.

Vielleicht ist Ihnen das auch schon passiert: Sie bearbeiten einen Text, denken dabei etwas länger nach, wollen speichern und bekommen die Fehlermeldung, dass Sie nicht eingeloggt sind. Schuld daran ist eine Sicherheitseinstellung, die nach einer gewissen Zeit von Inaktivität – und die Bearbeitung eines Textes im Editor ist für den Server ebenfalls Inaktivität – die Anmeldung deaktiviert. Wenn Ihnen die Zeit zu kurz ist, können Sie die Dauer unter dem Reiter System im Bereich Session im Parameter Gültigkeit ändern. Hier legen Sie fest, wie lange ein User eingeloggt bleibt, wenn er inaktiv ist. Der Standardwert liegt bei 15 Minuten.

11 Eine Site aufbauenUnser Vorgehen beim Erstellen einer neuen Site für ein Tanzstudio wird dem Vorgehen bei der bereits besprochenen Website für einen Tanzlehrer ähnlich sein. Einen neuen Schwerpunkt wird jedoch das Template bilden. Anders als bei unserem Tanzlehrer-Beispiel soll die neue Site individueller erscheinen und nicht in einen vorgefertigten Rahmen gepresst werden. Diesmal bestimmen Sie das Layout und die Gestaltung und legen fest, welche Module oder Komponenten verwendet werden sollen.

Zwangsläufig wird dadurch auch die Planung und Strukturierung eine größere Bedeutung gewinnen, da Sie sich nicht mehr auf einen fertigen Aufbau stützen können. So müssen Sie im Vorfeld die einzelnen Content- und Menübereiche klären und sich bewusst machen, wie umfangreich das gesamte Projekt werden kann. Dies geht bis hin zu der Entscheidung, welche

71

Page 72: Joomla 1 5 Handbuch

Farben Sie verwenden möchten oder welche Schriftarten bzw. -größen eingesetzt werden sollen. Beginnen wir aber zunächst mit der inhaltlichen Organisation, und betrachten wir dann, wie das Template aufgrund der Website-Struktur aussehen könnte.

11.1 Struktur der Site

Bevor wir uns dem Layout und der detaillierten Gestaltung unserer neuen Website widmen, organisieren wir die Struktur des Tanzstudios. Wir müssen zunächst bestimmen, welche Inhalte wir erzeugen möchten und welche der angesprochenen Funktionen (Newsfeed, Login etc.) wir tatsächlich als sinnvoll erachten. Diese Überlegungen sollten uns aber nicht von nachträglichen Ergänzungen abhalten. Selten lässt sich die Struktur einer Website im Vorfeld komplett planen. Das Layout soll aber zumindest einige Eckdaten zur Orientierung bekommen, und die nötigen Bereiche für Menüs oder Content müssen halbwegs klar sein. Denn je nachdem, wie viele Menüpunkte wir verwenden möchten, kann z. B. die Entscheidung für ein horizontales Menü zugunsten eines vertikalen Menüs umgestoßen werden. Schon die Entscheidung, wie viel Platz unser Layout im Browserfenster einnehmen wird, hängt von der Vorüberlegung ab, wie viele Inhalte online gestellt werden sollen. Verwendet man die gesamte Bildschirmbreite, hat aber für die Menüpunkte jeweils nur zwei Absätze Text, so wird das Erscheinungsbild stark auseinanderfallen. In diesem Fall würde es sich empfehlen, die Breite der Darstellung zu reduzieren und so die Inhalte zu einer geeigneten Darstellungsdichte zu komprimieren. Grundlegend für unser Layout wird also die Seitenstruktur sein. Für die Planung der Struktur sind momentan drei Dinge wichtig:

Welche Unterseiten brauchen wir (und welche Menüpunkte ergeben sich daraus)?

Wie werden die Inhalte aussehen, und welchen Umfang haben sie in etwa?

Welche Funktionalität muss auf der Seite für den User gegeben sein?

Diese drei Punkte werden wir zunächst für unser Beispiel klären, und anschließend erstellen wir ein geeignetes und ansprechendes Layout. Anhand des Layouts werden wir entscheiden, ob wir für die Umsetzung ein vorgefertigtes Layout verwenden möchten oder lieber ein eigenes Template mit der zugehörigen CSS-Datei entwerfen wollen.

Mit den vorangegangenen Gedanken haben wir überwiegend die Bedeutung der Struktur für unsere Seitengestaltung behandelt. Die Organisation der Inhalte in Joomla! unterliegt in der Version 1.5 immer noch den Bereichen, Kategorien und Beiträgen. Diese Hierarchie wird nur von den statischen

72

Page 73: Joomla 1 5 Handbuch

Inhalten unterbrochen, ansonsten haben Sie keine Möglichkeit, diese Vorgaben zu umgehen. Eine dynamische Ordnerhierarchie wird aber in kommenden Joomla!-Versionen realisiert werden. Der Vorteil unserer Bereiche und Kategorien ist jedoch, dass wir jedem Bereich oder jeder Kategorie ein eigenes Template zuweisen könnten. So kann das Layout den Ansprüchen der jeweiligen Inhalte entsprechend angepasst werden. Außerdem bleibt das Erscheinungsbild gewahrt, auch wenn unterschiedliche Autoren den Kategorien neue Inhalte hinzufügen. Egal wer die Inhalte ergänzt, sobald man z. B. der Seite »Tanzstile« einen neuen Tanz hinzufügt, wird der Inhalt wie alle anderen Tanzstile-Inhalte formatiert sein und nicht wie z. B. die Inhalte des Bereichs »Referenzen«.

Die Aufteilung in Bereiche und Kategorien bringt natürlich eine hierarchische Organisation mit sich. Die jeweiligen Inhaltsseiten sind aber meist chronologisch angeordnet.

12 Was macht ein Template aus?Um Ihnen einen genaueren Blick hinter die Kulissen eines Templates zu verschaffen, werden wir nun eine eigene Vorlage Schritt für Schritt erstellen. Das Beispiel soll Ihnen nur einige Möglichkeiten näherbringen, und es wird nicht den ganzen Umfang eines vollständig ausgeklügelten Templates erreichen. Dies ist auch kaum sinnvoll, da es bei der Umsetzung keinen vorgeschriebenen Weg gibt. Es gibt jedoch einige Regeln, die Sie beachten müssen.

Die wichtigsten Bestandteile eines Templates sind fünf Komponenten, und diese dürfen nicht fehlen:

1. ein Verzeichnis /images

2. ein Verzeichnis /css

3. die Datei index.php

4. die Datei templateDetails.xml

5. das Bild template_thumbnail.png

Das /images-Verzeichnis wird die Slices, also Grafiken unseres Layouts enthalten. Im Verzeichnis /css bringen wir die Datei template.css unter. Sie enthält die Formatierungen für das Template. Oft finden Sie hier auch die Datei editor.css. Joomla! bietet seit der Version 1.5 die Möglichkeit, auch die Gestaltung des WYSIWYG-Editors über CSS zu steuern. Die Datei index.php

73

Page 74: Joomla 1 5 Handbuch

enthält die Codierung des Layouts. Die XML-Datei dient als Zusammenfassung relevanter Elemente für das Template. Ihre Benennung muss genau templateDetails.xml lauten. Neben einer kurzen Beschreibung, sollten hier auch die einzelnen Dateien in den jeweiligen Verzeichnissen aufgeführt sein. Das betrachten wir aber im weiteren Verlauf noch genauer. Zu guter Letzt gibt es für das Template noch eine kleine Voransicht, die Sie in der Datei template_thumbnail.png speichern. Diese Datei muss sich auf derselben Ebene mit der PHP und der XML-Datei befinden.

Diese Dateien sollten sich später im Templates-Verzeichnis Ihrer Website befinden. In unserem Beispiel wäre das also joomla/templates. Hier erstellen Sie am besten noch ein eigenes Unterverzeichnis für das neue Template, in dem sich später die fünf Bestandteile befinden müssen.

Bevor wir gleich genauer auf das Template eingehen, sollten Sie Ihre Verzeichnisstruktur erzeugen. Erstellen Sie, wie oben beschrieben, ein Unterverzeichnis für das neue Template. Darin brauchen Sie dann noch zwei weitere Verzeichnisse, nämlich /css und /images.

Das Erstellen des Templates lässt sich in zwei Schritte aufteilen. Wir müssen die PHP-Datei, index.php, erzeugen, die unser Layout im Browser darstellen wird, und wir brauchen die CSS-Datei, template.css, die die Formatierung der einzelnen Elemente enthalten soll.

12.1 HTML-Bereich

Das Template, also die index.php, sollte im Anfangszustand etwa folgendermaßen aussehen:

01  <?php echo "<?xml version=\"1.0\"?>"; ?> 02 <?php 03   defined( '_JEXEC' ) or die( 'Restricted access' ); 04 ?>

05  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0    

06            Transitional//EN"    

07            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-     08            transitional.dtd">

09  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php

10  echo $this->language; ?>" lang="<?php echo $this->language; 11  ?>"> 12  <head> 13     <jdoc:include type="head" />

14     <meta http-equiv="Content-Type" content="text/html;     15                  <?php echo _ISO; ?>" />

16     <link rel="stylesheet" href="templates/<?php echo $this  17  ->template ?>/css/template.css" type="text/css" /> 18  </head> 19  <body>

74

Page 75: Joomla 1 5 Handbuch

20  </body> 21  </html>

Ein leeres Template beinhaltet einige Dinge, die speziell für Joomla! eine wichtige Rolle spielen. Diese Informationen müssen auf jeden Fall vorhanden sein.

Der erste wichtige Punkt betrifft die Sicherheit Ihres Templates. Die Zeilen 2–4 schützen Ihre Template-Dateien vor fremden Zugriffen und Änderungen.

Die Zeilen 16 und 17 definieren die Verbindung zu unserer CSS-Datei, die wir später noch erstellen werden. Ohne diesen Link würde Ihre Seite unformatiert im Webbrowser dargestellt werden.

Damit wäre das Grundgerüst für unser HTML-Template geschaffen. Sie können diese Datei mit einem einfachen Texteditor oder einem HTML-Editor erstellen. Der Großteil dieser Template-Datei besteht aus HTML. Die wenigen PHP-Variablen werden Sie auch ohne große PHP-Kenntnisse schnell anwenden können.

Die nächsten Einträge werden wir im <body>-Bereich vornehmen. Es müssen nun unterschiedliche Bereiche erstellt werden, in denen sich später z. B. das Menü, der Header, der Content oder die rechte Spalte befinden sollen. Diese Bereiche erzeugen Sie, indem Sie entweder eine Tabelle mit der entsprechenden Anzahl Zellen aufziehen, oder Sie verwenden Div-Layer.

Tabellen bzw. Layouttabellen wurden lange Zeit zur Gestaltung des Layouts verwendet. Auch jetzt bieten sie noch den Vorteil, dass sie bei älteren Browsern das Layout in der gewünschten Form umsetzen. Ihre Verschachtelung und die absoluten Größenangaben widersprechen jedoch dem Prinzip der Barrierefreiheit [Dabei handelt es sich um ein Designprinzip, bei dem versucht wird, die Nutzung einer Webseite unabhängig von körperlichen und technischen Hürden zu ermöglichen. ] . Daher sollten Tabellen möglichst nur noch verwendet werden, um tabellarische Daten darzustellen. Dagegen lassen sich Ebenen frei positionieren und sind im Vergleich zu Tabellen barrierefrei. In unserem Beispiel werden wir daher das Layout überwiegend mithilfe von Div-Layern erstellen. Die fertigen Template-Dateien finden Sie auch auf der DVD im Verzeichnis template/la-joomla.

Kommen wir nun zum eigentlichen Hauptteil. In unserer index.php werden wir nun die Zeilen 21 und 22 um einige Codesegmente erweitern. Es fehlen uns noch die Joomla!-Variablen und die Layer, mit denen wir unser Layout umsetzen möchten.

<body> <div id="container">   <div id="tanzheader">     <h1 id="tanz_header_logo">     <?php echo $mainframe->getCfg('sitename');?> </h1>

    <h1 id="tanz_header2”><?php echo $mainframe

75

Page 76: Joomla 1 5 Handbuch

    ->getCfg('sitename');?>     </h1>   </div>

Wir beginnen mit einem Layer, der als Container für die weiteren Layer dienen wird. Details zu den einzelnen Ebenen legen wir später in der entsprechenden CSS-Datei fest. Anschließend folgt der Layer für unsere Kopfzeile. Die Anweisung <?php echo $mainframe->getCfg('sitename');?> gibt den Namen der Site wider.

In der Ebene contentarea werden die weiteren Bereiche der Website definiert:

 <div id="contentarea">     <div id="tanz_menu"><jdoc:include type="modules" name="left" />     </div>     <div id="ornament">Ornament</div>     <div id="content">:: <jdoc:include type="module" name="breadcrumbs" /><br/><br/> unser inhalt :: <jdoc:include type="component" /> <br/><br/>     </div>     <div id="foto">foto</div>     <div id="extra"><jdoc:include type="modules" name="right" />     </div>   </div>

Zunächst kommt im Layer tanz_menu das Menü der Website. Dazu wird das Joomla!-Modul "left" aufgerufen. Dieses Modul besteht aus Hauptmenü, Login und Syndicate. Wird einer dieser Bereiche nicht benötigt, muss er über das Joomla!-Backend abgeschaltet werden (siehe Kapitel 9, »Module, Plug-ins, Komponenten«). Direkt an den Layer tanz_menu schließt sich der kleine Layer ornament an. Hier wird sich später eine Grafik befinden. Den nächsten großen Bereich stellt der eigentliche Inhalt dar. Als Erstes wird der Klickpfad über die Anweisung <jdoc:include type="module" name="breadcrumbs" /> ausgegeben. Danach wird mit <jdoc:include type="component" /> der Inhalt dargestellt.

Außerdem werden noch die zwei Layer der rechten Spalte definiert. Der zweite Layer enthält die Anweisung zum Aufruf der Module »Umfrage« und »Wer ist online«. Auch hier können Sie über das Backend entscheiden, welches der Module tatsächlich im Frontend sichtbar sein soll.

Jetzt bleiben uns nur noch die Fußzeile und der Abschluss des HTML-Dokuments:

 <div id="footer">     <div align="center">     </div>   </div> </div> </body> </html>

76

Page 77: Joomla 1 5 Handbuch

Der Footer ist in diesem Fall leer. Hier können Sie direkte Links auf Beiträge erstellen, die nicht über ein Menü verfügbar sein müssen. Einen direkten Link auf einen Joomla!-Beitrag erstellen Sie, indem Sie einfach die URL mit der entsprechenden Artikel-ID angeben, z. B. <a href="index.php?option=com_content&view=article&id=45">AGB</a>. Dieser Link verweist auf einen Beitrag mit der ID 45. Die ID ermitteln Sie, indem Sie in der Beitragsübersicht in der letzten Spalte des jeweiligen Beitrags die Nummer suchen. Über die direkte URL-Angabe können Sie auch komplette Bereiche ansprechen: index.php?option=com_content&view=section&id=8&Itemid=56

In diesem Beispiel wird der Bereich mit der ID 8 aufgerufen. Die Verknüpfung mit der Itemid=56 zeigt uns, dass gleichzeitig das Menü mit der ID 56 aktiv ist.

In unserem Beispiel wäre das der Bereich »Training« mit dem Menüpunkt Training:

Hier klicken, um das Bild zu vergrößern

Abbildung 12.1 Der Bereich mit der ID 8

Hier klicken, um das Bild zu vergrößern

Abbildung 12.2 Das Menü mit der ID 56

In unserem Beispiel haben wir fünf Module (»Hauptmenü«, »Anmelden«, »Syndication«, »Umfragen« und »Wer ist online«) auf zwei Modulpositionen (»left« und »right«) verwendet. Joomla! hatte in den Vorgängerversionen 27 vordefinierte Modulpositionen, auf die wir zurückgreifen können. Diese finden Sie weiterhin in verschiedenen Templates und in der Standardpositionierung der Kernmodule. Allerdings gab es sehr viele ausdrucksschwache Modulpositionen, wie »user1-9« oder »icon«. Mittlerweile können die Positionen für jedes Template individuell bestimmt werden. Die Positionen müssen einfach in der XML-Datei definiert werden (vgl. Abschnitt 12.3, »Das Drumherum«) und werden dann von Joomla! importiert.

Das ist allerdings nicht der einzige Unterschied zu der Vorgängerversion von Joomla!. Es gibt speziell im Bereich der index.php-Datei geänderte Aufrufe und neue Möglichkeiten im Vergleich zu älteren Joomla!-Versionen. In der folgenden Tabelle finden Sie eine Auflistung der wichtigsten Unterschiede zum Aufruf bestimmter Funktionen:

Tabelle 12.1 Neue Befehle für den Aufruf von Modulen und Funktionen

Joomla! 1.0 Joomla! 1.5

77

Page 78: Joomla 1 5 Handbuch

mosCountModules(); $this->countModules()

mosShowHead(); <jdoc:include type="head" />

$mosConfig_live_site; $this->template

mosLoadModules ( 'left', –1);

<jdoc:include type="modules" name="left" style="raw" />

mosMainBody(); <jdoc:include type="component" />

Tabelle 12.2 fasst noch einmal alle wichtigen Aufrufe mit den verschiedenen Optionen und Attributen zusammen.

Tabelle 12.2 Befehle und Attribute für den Aufruf von Modulen

Aufruf Funktion

Das »type«-Attribut gibt den Typ an, der ausgegeben werden soll.

<jdoc:include type="component" />

Das Element »component« erscheint einmalig in unserem Template (im Bereich <body></body>) und ist verantwortlich für die Ausgabe des eigentlichen Inhalts im Content-Bereich.

<jdoc:include type="head" />

Das gilt auch für den Typ »head«. Über diesen Typ werden im <head>-Bereich der index.php die nötigen Skripten, Stile und Meta-Daten aufgerufen bzw. abgelegt.

<jdoc:include type="installation" />

Dieser Aufruf wird nur für das Joomla!-Installer-Template benötigt.

<jdoc:include type="message" />

»message« wird nur einmal im Template benötigt und gibt Fehler- bzw. Systemmeldungen aus.

Das Element module gibt ein einzelnes Modul an der entsprechenden Stelle im Template aus. Der Modultyp wird durch name= bestimmt, und die Darstellung kann abhängig vom Modul im Backend konfiguriert werden. Achten Sie darauf, dass es im Backend auch tatsächlich freigegeben wurde.

78

Page 79: Joomla 1 5 Handbuch

<jdoc:include type="module" name="breadcrumbs" />

Gibt den Klickpfad aus.

Mit dem zusätzlichen style-Attribut haben Sie bei einigen Modulen die Möglichkeit die Darstellungsform über das Template zu bestimmen. Folgende Möglichkeiten stehen zur Verfügung: table, horz, xhtml, rounded und outline.

<jdoc:include type="module" name="submenu" style="rounded" id="submenu-left" />

Hier wird der Modulposition »submenu« zusätzlich die ID »submenu-left« übertragen. So können die Elemente speziell über CSS oder PHP/Javascript angesprochen werden.

Möchten Sie einer Position mehrere Module zuweisen können, benötigen Sie das Attribut modules.

<jdoc:include type="modules" name="top" />

Auf der Position »top« können Sie nun verschieden Module positioni

13 Tools zur Template-ErstellungSie konnten bereits einen ausführlichen Eindruck davon gewinnen, wie umfangreich und aufwendig die Erstellung eines Templates werden kann. Je nachdem, ob Sie bestehende Templates anpassen möchten oder komplett eine eigene Vorlage erstellen möchten, wird es hilfreich sein, auf Werkzeuge zurückzugreifen, die Sie dabei unterstützen.

13.1 Browsertools

Zunächst haben wir einige Tools, die uns bei der Analyse bestehender Seiten behilflich sind. Im Entstehungsprozess Ihres Templates können Sie damit immer die tatsächlichen Auswirkungen und das Zusammenspiel Ihrer index.php mit den dazugehörigen CSS-Dateien prüfen. Wir haben die Tools schon öfter angesprochen. Es handelt sich hierbei um Werkzeuge, die Sie in Ihrem Browser installieren müssen und auch dort verwenden werden.

79

Page 80: Joomla 1 5 Handbuch

13.1.1 Firebug und Web Developer Toolbar

Das stärkste Werkzeug für Webentwickler bietet der Firebug für Firefox. Ähnlich umfangreich und hilfreich ist die Web Developer Toolbar. Wir werden stärker auf den Firebug eingehen, da er etwas übersichtlicher ist und nicht nur eine Toolbar darstellt. Bevorzugen Sie allerdings Tools mit reichlich Funktionalität, die kompakt verpackt ist, ist die Web Developer Toolbar perfekt. Sie bietet tatsächlich etwas mehr Features als der Firebug und lässt sich wunderbar mit Firefox verschmelzen.

Hier klicken, um das Bild zu vergrößern

Abbildung 13.1 Die Firefox Web Developer Toolbar – kompakt und sehr wirkungsvoll

Firebug zeigt Ihnen nicht nur sämtliche HTML-, CSS- und Skriptelemente an, Sie haben zudem die Möglichkeit, temporärere Änderungen am Code vorzunehmen, um die Auswirkungen »live« im Browser zu beobachten.

Hier klicken, um das Bild zu vergrößern

Abbildung 13.2 Die Firebug-Ansicht zu La Joomla

Sie können den Firebug direkt im aktuellen Browserfenster andocken lassen oder in einem eigenen Fenster öffnen. Über die zwei Menüzeilen haben Sie Zugriff auf alle Auswertungen und Seitenelemente.

Hier klicken, um das Bild zu vergrößern

Abbildung 13.3 Die Menüzeilen von Firebug

80

Page 81: Joomla 1 5 Handbuch

Ganz rechts finden Sie außerdem eine Suche für die jeweilige Ansicht. Darunter befinden sich in der HTML-Ansicht die aktiven CSS-Formatierungen des jeweiligen HTML-Elements.

Sobald Sie die Ansicht ändern, z. B. Netzwerk (Abbildung 13.4), erscheinen in der oberen Menüzeile weitere Optionen. Sie können auch mit der Maus im Ansichtsfenster einzelne Elemente auswählen, um weitere Informationen zu erhalten. Das ist besonders praktisch, wenn Sie die Verschachtelung verschiedener CSS-Klassen erfahren möchten. Klicken Sie dazu einfach in der HTML-Ansicht auf eines der HTML-Tags, und Sie erhalten in der rechten Ansicht die einzelnen CSS-Formatierungen mit ihren Vererbungen.

Hier klicken, um das Bild zu vergrößern

Abbildung 13.4 Die Netzwerk-Ansicht verschiedenen Auswertungen

In der oberen Menüzeile befinden sich zudem zwei Buttons: Untersuchen und Bearbeiten (Abbildung 13.3). Dabei ist besonders der Button Untersuchen praktisch. Sobald Sie diesen aktivieren, können Sie mit der Maus über Ihre Website fahren. Dabei werden die aktiven Elemente farbig umrandet, und gleichzeitig wird in der HTML- und der CSS-Ansicht der entsprechende Code hervorgehoben. So finden Sie schnell und einfach Positionen einzelner Elemente im Code. Über den Button Bearbeiten wechseln Sie in den Bearbeitungsmodus und können direkt Änderungen am HTML vornehmen.

13.1.2 Developer Toolbar

Für den Microsoft Internet Explorer wurde mittlerweile ein ähnliches Tool wie Firebug entwickelt. Die Developer Toolbar ermöglicht Ihnen im Internet Explorer vergleichbare Analyse- und Bearbeitungsoptionen, wenn auch nicht in so großem Umfang, wie sie bei Firebug vorhanden sind.

81

Page 82: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 13.5 Die IE Developer Toolbar

In der Standardansicht erhalten Sie drei Spalten. Die erste Spalte zeigt Ihnen die HTML-Struktur der Webseite. In der zweiten Spalte finden Sie die Attribute zum ausgewählten Element und können diese auch im »Live«-Modus bearbeiten. Die dritte Spalte listet die CSS-Formatierungen des jeweiligen Elements auf. Diese lassen sich allerdings nicht ändern.

Über die Menüzeile haben Sie Zugriff auf weitere Funktionen.

Hier klicken, um das Bild zu vergrößern

Abbildung 13.6 Die Menüzeile des Developers

So können Sie z. B. Elemente wie Bilder, DIVs oder Tabellen direkt in der dargestellten Seite hervorheben lassen. Außerdem bietet Ihnen das Menü Tools ein nützliches Bildschirmlineal und eine Pipettenfunktion zum schnellen Bestimmen von Farbwerten.

13.1.3 Chrome

Seit September 2008 tummelt sich ein weiterer Browser auf dem Web-Markt. Google hat den Browser Chrome in der Beta-Fassung herausgegeben. Hier sollte man noch etwas abwarten, bevor man diesen Browser allzu intensiv verwendet: nicht allein wegen der Gefahren einer Beta-Version, sondern auch aufgrund der unklaren Lage der Datensicherheit. Es gibt jedoch einige Merkmale, die Chrome interessant machen. So handelt es sich nicht nur um einen schlanken und wirklich schnellen Browser, sondern er beinhaltet schon in der Standardinstallation ein Analyse-Tool.

82

Page 83: Joomla 1 5 Handbuch

Sie starten das Tool einfach mit einem rechten Mausklick auf die Webseite und den Menüpunkt Element untersuchen. Die Funktionen sind deutlich weniger umfangreich, aber zumindest müssen Sie keine extra Erweiterung installieren, sondern bekommen die Analysefunktion mit dem Browser geliefert. Das Untersuchungsfenster ist in zwei Spalten geteilt. Links erhalten Sie die HTML-Struktur. Sobald Sie mit der Maus über die einzelnen Elemente fahren, wird der entsprechende Bereich in der Website gelb hinterlegt. In der rechten Spalte erhalten Sie detaillierte Informationen und die Formatierungen der HTML-Elemente. Sie können allerdings keine Änderungen vornehmen, um eine »Live«-Ansicht der neuen Formatierung zu erhalten. Es handelt sich also im Prinzip in dieser Beta-Version des Chrome um eine bessere Quelltextansicht der aktuellen Webseite.

Hier klicken, um das Bild zu vergrößern

Abbildung 13.7 Das Analyse-Tool von Google Chrome

14 BarrierefreiheitUnter barrierefreien Webseiten versteht man Homepages, die von allen Besuchern ungeachtet technischer und/oder körperlicher Hürden ohne Einschränkungen benutzt werden können. Da dieses hehre Ziel im Prinzip nie vollständig umgesetzt werden kann, spricht man zumeist von barrierearmen Seiten. Barrierearme Seiten dienen nicht nur Menschen mit Behinderung, sondern stellen einen Mehrwert für alle dar, beispielsweise für die Nutzung auf Handys, in exotischen Browsern, bei Präsentationen etc.

Hürden sind beispielsweise:

Kontrastarme Seiten: für Menschen mit Farbfehlsichtigkeit

83

Page 84: Joomla 1 5 Handbuch

Kleine Texte: für Menschen mit Sehschwäche, beispielsweise ältere Mitbürger

Bilder: für Blinde, die sich Ihre Homepage von einem Screenreader vorlesen lassen

Ignorieren technischer Standards: Das beschränkt die Besucher auf bestimmte Browser.

Aktive Inhalte für Funktionalität: Sie schließen Menschen aus, die die entsprechenden Plug-ins nicht haben oder nicht haben wollen.

Komplexe Sprache: Dadurch wird die Lesbarkeit erschwert, nicht nur für Menschen mit einem unterdurchschnittlichen IQ.

Sie sehen also, dass es sich hier nicht nur um technische Lösungen handelt. Barrierearmut hat vor allem mit inhaltlichen Aspekten zu tun. Dennoch gibt es einige technische Mittel, mit denen man Zugangshürden reduzieren kann.

Trennung von Inhalt und Design: Die wichtigste Voraussetzung ist, dass Sie für Ihre Seiten valides XHTML verwenden und das Layout konsequent mit CSS gestalten. Tabellen oder unsichtbare Bilder zur Positionierung von Elementen sind tabu!

Veränderung der Darstellungsgröße: Verwenden Sie statt fixer Schriftgrößen relative Angaben.

Alternativtexte für multimediale Inhalte: HTML bietet die Möglichkeit, die Inhalte von Multimediaelementen mit Worten zu beschreiben. Nutzen Sie dies!

Der Inhalt muss linear ausgegeben werden können: Nur so können Screenreader u. Ä. die Seite in andere Medienformate umwandeln.

Die Funktionalität darf nicht von Plug-ins abhängen: Während Designelemente kein Problem darstellen, muss gewährleistet sein, dass ein Besucher Ihre Seite auch ohne zusätzliche Technik verwenden kann.

Etwas allgemeiner kann man vier Grundsätze des barrierefreien Webdesigns formulieren:

Wahrnehmbarkeit: Alle Inhalte einer Seite sollen in einer für alle Nutzer wahrnehmbaren Form dargestellt werden. Es gibt hier eine Ausnahme: Inhalte, die nicht mit Worten ausgedrückt werden können.

Bedienbarkeit: Alle Elemente, die Bedienfunktionen bereitstellen, sollen von allen Benutzern verwendet werden können.

84

Page 85: Joomla 1 5 Handbuch

Verständlichkeit: Der Inhalt sowie funktionale Elemente sollen so einfach und verständlich wie möglich angeboten werden.

Technologische Robustheit/Nachhaltigkeit: Die verwendeten Webtechniken sollen so gestaltet sein, dass sie heute und auch in Zukunft mit möglichst vielen »Empfangsgeräten« dargestellt werden können.

Der letzte Punkt verweist auf die Bedeutung offener Standards und nachhaltiger Formate.

14.1 Bedeutung

»Blinde kommen eh nicht auf meine Seite« ist ein häufiges Argument fauler Webseitengestalter, um das Thema Barrierefreiheit zu umgehen. Aber täuschen Sie sich nicht. Der Anteil der Deutschen, die beim Zugang zu Informationen durch physische Einschränkungen zusätzliche Hürden zu überwinden haben, liegt bei ca. 8 %. Einige leichte Schwierigkeiten tauchen bei deutlich mehr Menschen auf. So leiden ca. 10 % der Männer unter einer Form von Rot-Grün-Blindheit. In absoluten Zahlen ausgedrückt, sprechen wir in Deutschland also von mindestens 8.000.000 Menschen, die bei falschen Konfigurationen in der Nutzung des Internets eingeschränkt werden.

Daneben spielen aber auch neue Herausforderungen eine Rolle. Kontrastarme Webseiten sind in der Bahn unter wechselnden Lichteinflüssen schwer zu lesen. Seiten, die nicht skalieren, stellen ein Problem bei der Darstellung auf mobilen Endgeräten dar. Auch im Unternehmensumfeld stößt man auf Schwierigkeiten, da bestimmte Features oder Browser nicht am Arbeitsplatz zugelassen sind.

Ein dritter Aspekt ist der sogenannte Digital Divide. Dieser Begriff beschreibt die Tatsache, dass nicht alle Menschen gleichermaßen in der Lage oder gewillt sind, an den neuen elektronischen Medien teilzunehmen. Das hat mehrere Gründe, die meistens in den Sozialstrukturen verankert sind. Der Digital Divide hat einen starken wirtschaftlichen Aspekt. So gibt es genügend Menschen, die eine veraltete Hardware oder einen sehr langsamen (oder gar keinen) Internetanschluss haben. Dass hier Webseiten, die die neuesten Gimmicks haben und dafür Erweiterungen benötigen, die mehrere Megabyte groß sind, nicht unbedingt den Surf-Spaß erhöhen, dürfte klar sein. Daneben spielt der Bildungsgrad eine große Rolle. Schwer zu navigierende Seiten und schwierige Texte schließen Menschen mit geringer Bildung tendenziell aus. Sie sehen einmal mehr, dass bei diesem Thema nicht nur die Technik bestimmt, was barrierearme Seiten sind.

85

Page 86: Joomla 1 5 Handbuch

15 Aus der TrickkisteDie meisten Wege, die wir bisher beschrieben haben, waren geradlinig und an den üblichen Herausforderungen orientiert. Sie werden aber bei Projekten, die etwas umfangreicher sind als unser Beispiel für den Tanzlehrer, einige kreative Umwege beschreiten müssen. Jedes System stößt irgendwann, abhängig vom Umfang und den Anforderungen des jeweiligen Projekts an seine Grenzen. Meist lassen sich aber auch individuelle Bedürfnisse mit einigen kleinen Tricks realisieren. Sobald Sie sich einmal intensiver mit Joomla! auseinandergesetzt haben, werden Sie selbst ein Gefühl für die Möglichkeiten entwickeln. Jetzt möchten wir Ihnen schon mal einen Vorgeschmack geben und einige spezielle Themen ansprechen.

15.1 Zugriff für registrierte Benutzer

Die Benutzerhierarchien sind bei Joomla! zwar nicht sehr weit gestaffelt, aber auch mit den wenigen Benutzergruppen kann man Inhalte differenzieren (Details finden Sie in Kapitel 8, »Benutzer und Bereiche«). Ein relativ einfaches Thema stellen Menüs dar, die je nach Benutzerrechten nach der User-Anmeldung verfügbar sind. Sie haben also die Möglichkeit, bestimmten Benutzergruppen auch eigene Menüs oder Module zur Verfügung zu stellen, die normalen Besuchern nicht zugänglich sind.

15.1.1 Einzelne Menüpunkte freigeben

Bei der Individualisierung unserer Website können wir schon bei einzelnen Menüpunkten beginnen. Sie haben die Möglichkeit, Menüpunkte allgemein, nur angemeldeten Benutzern oder nur Benutzern mit Admin-Rechten verfügbar zu machen.

1. Wechseln Sie dazu über Menüs • Hauptmenü auf die Liste der Hauptmenü-Einträge.

2. Ändern Sie beim Tanzlehrer in der Spalte Zugriffsebene die Ebene auf »Registriert«, indem Sie einfach auf den aktuellen Eintrag klicken, bis »Registriert« erscheint.

86

Page 87: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 15.1 Der Unterpunkt »Tanzlehrer« ist nur noch registrierten Benutzern zugänglich.

3. Wechseln Sie jetzt in das Frontend. Achten Sie darauf, dass Sie im Frontend nicht angemeldet sind. Wenn Sie jetzt auf den Menüpunkt Tanzstile klicken, sollte der Unterpunkt Tanzlehrer nicht erscheinen.

4. Sobald Sie sich im Frontend einloggen, steht Ihnen dieser Unterpunkt wieder zur Verfügung.

Hier klicken, um das Bild zu vergrößern

Abbildung 15.2 Im Frontend erhält man den Unterpunkt erst nach der Anmeldung auf der Seite.

15.1.2 Freigabe von kompletten Menüs oder Modulen

Eine Steigerung dieses Vorgehens ist die Anwendung auf komplette Menüs oder Module. Sie können also über die Benutzerrechte auch bestimmen, ob Menüs oder bestimmte Funktionen erst nach der Anmeldung verfügbar sein sollen. Das lässt sich auch noch etwas erweitern. Sie können zudem festlegen, in welchem Zusammenhang einzelne Module erscheinen sollen. Aber schauen wir zuerst, wie wir die Zugriffsebenen von Modulen bestimmen können.

87

Page 88: Joomla 1 5 Handbuch

Anders als erwartet können Sie diese Einstellung nicht im Bereich der Menüs vorfinden, sondern müssen auf die Modul-Übersicht wechseln.

1. Rufen Sie dazu im Hauptmenü den Punkt Erweiterungen • Module auf.

2. Sie erhalten die Listenansicht der vorhandenen Module und können über die Spalte Zugriffsebenen, genau wie bei den einzelnen Menüpunkten, Benutzergruppen für die einzelnen Module bestimmen.

3. So könnten Sie jetzt also z. B. das gesamte Hauptmenü nur noch für registrierte Benutzer verfügbar machen und nicht nur vereinzelte Punkte daraus.

Hier klicken, um das Bild zu vergrößern

Abbildung 15.3 Zugriffslevel für Module

Natürlich haben Sie nun auch die Möglichkeit, andere Module, die Sie auf Ihrer Website verwenden, mit unterschiedlichen Levels verfügbar zu machen. Wie bereits angedeutet wurde, können wir hier auch bestimmen, in welchem Zusammenhang bestimmte Module erscheinen sollen. Damit ist gemeint, dass Funktionen erst verfügbar sind, wenn der Besucher einen Bereich über einen Menüpunkt aufgerufen hat. Wir werden dazu das Modul »Wer ist online« anpassen.

1. Wenn Sie sich nicht schon in der Modulliste befinden, rufen Sie die Übersicht über das Menü Erweiterungen • Module auf.

2. Klicken Sie auf das Modul »Wer ist online«.

3. Sie erhalten eine Übersicht mit drei Hauptbereichen: Details, Parameter und Menüzuweisungen (vgl. Abbildung 15.4).

4. Im Bereich Menüzuweisungen (vgl. Abbildung 15.4) können Sie nun

88

Page 89: Joomla 1 5 Handbuch

bestimmen, unter welchen Menüpunkten das Modul dargestellt werden soll. Momentan ist hier nur die Startseite aktiv. Das bedeutet also, dass nur auf der Startseite das Modul »Wer ist online« zu sehen ist.

5. Sie können nun mehrere Menüpunkte hinzunehmen, wenn Sie mit Ihrer Maus und gleichzeitig gedrückter -Taste weitere Punkte auswählen. Markieren Sie z. B. zusätzlich die Referenzen.

6. Wechseln Sie nun in das Frontend. Auf der Startseite erhalten Sie rechts unter dem Tanzbild den Hinweis zu Online-Usern. Wenn Sie einen anderen Menüpunkt auswählen, verschwindet diese Anzeige, außer Sie rufen die Referenzen auf. Dort bekommen Sie auch wieder den Hinweis zu den Online-Usern.

Hier klicken, um das Bild zu vergrößern

Abbildung 15.4 Das Modul »Wer ist online« taucht nun auf der Startseite und auf der Seite »Referenzen« auf.

15.1.3 Ausbau der Freigabe-Funktion

Wir werden noch etwas tiefer in das Template und die Freigabe von Modulen eingreifen. Im folgenden Schritt besprechen wir, wie Sie ein Modul über einen Menülink aufrufen. Sobald Sie die Seite verlassen, wird dieses Modul auch wieder ausgeblendet. Dazu werden wir einen Eingriff in das Template vornehmen müssen, da sich diese Funktion nicht über die Optionen im Backend realisieren lässt. Wir bleiben bei unserem »Wer ist online«-Modul und nehmen dies als Anschauungsbeispiel für das weitere Vorgehen.

1. Zunächst müssen wir die Menüzuweisungen des Moduls »Wer ist online« definieren. In unserem Beispiel wählen wir alle, so dass das Modul über alle Menüpunkte erreichbar ist.

89

Page 90: Joomla 1 5 Handbuch

2. Als Nächstes müssen wir Änderungen an unserem Template vornehmen und die Datei index.php bearbeiten. Das können Sie direkt über das Backend machen. Wählen Sie den Punkt Erweiterungen • Templates, und klicken Sie auf das aktuelle Template.

3. In der Werkzeugleiste haben Sie nun die Option, den HTML-Code zu bearbeiten.

4. Jetzt müssen wir folgende Änderungen vornehmen: Die Zeile 30 <div id="extra"><jdoc:include type="modules" name=

"right" /></div> ersetzen Sie durch:

<div id="extra">    <?php if ($_REQUEST['showwhosonline'] == 1)    { ?> <?php mosLoadModules ( 'right', –2 ); ?> <?php } ?>   </div>

Die Zeile 32/33 <div id="footer"><a href="index.php?option=com_content&view=article&id=45">AGB</a></div> wird folgendermaßen ergänzt:

<div id="footer"><a href="index.php?option=com_content&view=article&id=45">AGB | </a> <a href="<?php     echo $_SERVER['REQUEST_URI'];     $glue='&';

    if (strpos($_SERVER['REQUEST_URI'], '?') === false)     $glue='?';

    if ($_REQUEST['showwhosonline'] != 1) echo       $glue.'showwhosonline=1'; ?>">Wer ist online?</a> </div>

Es wird ein Link erzeugt, der das Modul »whosonline« aufruft. Dabei wird mit der Anweisung $_SERVER['REQUEST_URI']; der aktuelle Serverpfad bestimmt. Zusätzlich findet eine Abfrage statt, ob ein »?« in der URL existiert. Sollte das nicht der Fall sein, befindet man sich gerade auf der Startseite, und der Aufruf des Moduls würde nicht klappen. Es wird in diesem Fall automatisch ein Fragezeichen in der URL erzeugt.

Prüfen Sie das angepasste Template nun im Frontend. Sie sollten in der Fußzeile den Link »Wer ist online« finden. Unter dem Tanzbild auf der rechten Seite sollte nicht mehr zu sehen sein, wer gerade online ist. Erst wenn Sie den Link in der Fußzeile anklicken, erscheint das Modul und gibt Auskunft über Online-Besucher. Sobald Sie die Seite aber wieder wechseln, indem Sie einen anderen Punkt aus dem Menü aufrufen, verschwindet das Modul wieder. Sie haben so die Möglichkeit, bestimmte Module zwar immer verfügbar zu machen, aber erst bei wirklichem Bedarf zu starten. Die aktuelle Ansicht bleibt so übersichtlicher und wird nicht gleich mit allen möglichen Informationen oder Funktionen überfrachtet.

90

Page 91: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 15.5 Der Link zum Modul »Wer ist online«

Hier klicken, um das Bild zu vergrößern

Abbildung 15.6 Das Modul wird auf der jeweiligen Seite mit einem Mausklick aktiviert und verschwindet, sobald man einen anderen Menüpunkt aufruft.

15.1.4 Anpassen einer Komponente

Wir müssen die Anpassungen nicht auf das Template beschränken. Ähnliche Funktionen bilden auch bei Komponenten eine sinnvolle Ergänzung. Mit wenigen Handgriffen können wir z. B. die ChronoForms (zu ihrer Installation und Anwendung vgl. Kapitel 18, »BreezingForms und ChronoForms«) individuell anpassen. So lässt sich die Formularerweiterung relativ einfach mit einer Abfrage ergänzen, die prüft, ob der User bereits angemeldet ist. Falls das der Fall ist, können einzelne Formularfelder mit vorhandenen Benutzerinformationen automatisch ausgefüllt werden. Mit diesen kleinen Anpassungen bieten wir den Benutzern einen verbesserten Komfort und schaffen etwas mehr Übersichtlichkeit auf unseren Seiten. Passen wir also jetzt die Chronoforms etwas an:

1. Rufen Sie den Forms Manager über Komponenten • Chrono Forms • Forms Management auf.

2. Erstellen Sie ein neues Formular über den Button Neu in der Werkzeugleiste, und geben Sie einen Namen ein.

3. Wechseln Sie auf den Reiter Form Code, und bearbeiten Sie das HTML-Feld. Der Quellcode könnte etwa folgendermaßen aussehen. Entscheidend sind allerdings die fett markierten Stellen:

91

Page 92: Joomla 1 5 Handbuch

01   <?php 02   global $my,$mosConfig_live_site; 03   $readonl=""; 04   if ($my->id) { 05   $readonl=" readonly='readonly'"; 06   } ?> 07   <fieldset> 08     <legend>Ihre Daten</legend> 09     <label for="fromname">Name: </label>

11     <input type="text" name="fromname" id="fromname"

12     tabindex="510" value="<?php echo $my->name?>"<?php echo 13     $readonl?> /> 14     <br />

15     <label for="fromemail">Email: </label><input type="text"

16     name="fromemail" id="fromemail" tabindex="511" 17     value="<?php echo $my->email?>"<?php echo $readonl?> /> 18     <br />

19     <label for="details">Nachricht: </label>

20     <textarea cols=40 rows=4 name="details" id="details" 21     tabindex="512"> 22     </textarea><br /> 23   </fieldset> 24   <fieldset> 25     <legend>Abschicken</legend> 26     <?php if(!$my->id){ ?> 27       {imageverification} 28     <?php } ?> 29   <input type="submit" value="Senden" tabindex="513" /> 30   <input type="reset" value="Löschen" tabindex="514" /> 31   </fieldset>

o Die PHP-Anweisungen, um die dieses einfache Formular

ergänzt wurde, prüfen, ob der User angemeldet ist. Sollte das der Fall sein, werden in den Feldern Name und Email die Anmeldedaten von der Joomla!-Benutzerverwaltung verwendet. Gleichzeitig werden mit der Anweisung <?php echo $readonl?> eben diese Felder auf den Lesemodus gestellt. Das bedeutet, dass die Inhalte dieser Felder zwar angezeigt werden, aber nicht veränderbar sind.

4. Aktivieren Sie im Reiter Anti Spam die Sicherheitsabfrage, damit die Captcha-Funktion in Zeile 27 funktioniert.

5. Um das Formular testen zu können, brauchen wir noch einen Link in unserem Hauptmenü.

6. Wechseln Sie dazu auf Menüs • Hauptmenü, und erstellen Sie einen neuen Menüpunkt mit dem Typ »Chronoforms«.

7. Tragen Sie den Namen für den Menüpunkt ein, und geben Sie das neue Formular an.

92

Page 93: Joomla 1 5 Handbuch

8. Prüfen Sie das Formular jetzt im Frontend. Wenn Sie das Formular aufrufen, bevor Sie sich im Frontend angemeldet haben, können Sie wie gewohnt alle Felder ausfüllen. Sobald Sie sich anmelden, erscheinen in den ersten beiden Feldern Ihr Name und Ihre E–Mail-Adresse, die Sie in der Joomla!-Benutzerverwaltung abgelegt haben.

Hier klicken, um das Bild zu vergrößern

Abbildung 15.7 Das Anmeldeformular für nicht registrierte User

Hier klicken, um das Bild zu vergrößern

Abbildung 15.8 Vorausgefüllte Felder bei registrierten Usern

15.1.5 Ein eigener Bereich

Bei diesem Schritt handelt es sich um eine einfache Einstellung. Sie macht aber die Individualisierung unserer Website für registrierte User komplett. Joomla! macht es Ihnen nämlich auch möglich, Unterbereichen der Website auch verschiedene Templates zuzuordnen. Das ist besonders dann sinnvoll, wenn dem User auch deutlich gemacht werden soll, dass er sich in einem bestimmten Bereich der Website befindet. Der Unterschied zum eigentlich Template sollte daher nicht allzu groß sein, da man sonst meinen könnte, man befindet sich plötzlich auf einer völlig anderen Seite. Meist reicht eine andere Farbpalette oder dergleichen aus, um den besonderen

93

Page 94: Joomla 1 5 Handbuch

Bereich hervorzuheben. In unserem Beispiel werden wir allerdings zu Demonstrationszwecken auf ein völlig anderes Template zurückgreifen, um die Funktion schnell deutlich zu machen.

1. Wechseln Sie im Backend auf Erweiterungen • Templates.

2. Markieren Sie das Template JA_Purity, und klicken Sie in der Werkzeugleiste auf Bearbeiten.

3. Sie erhalten eine neue Ansicht mit drei Bereichen. Uns interessiert der Bereich Menüzuweisung.

4. Aktivieren Sie den Radiobutton Aus Liste auswählen. Jetzt haben Sie die Möglichkeit, die Menüpunkte zu bestimmen, bei denen das Template JA_Purity verwendet werden soll (Mehrfachauswahl funktioniert mit gedrückter -Taste). Unser Untermenüpunkt Tanzlehrer ist mittlerweile nur noch für registrierte Besucher erreichbar. Weisen wir diesem Punkt also das neue Template zu. So ist jetzt also für registrierte Besucher nicht nur ein extra Menüpunkt verfügbar, sondern es verändern sich auch die Darstellung und das Layout in diesem Bereich.

Hier klicken, um das Bild zu vergrößern

Abbildung 15.9 Ein Template wurde bestimmten Bereichen zugewiesen.

Mit der Kombination der bisher genannten Möglichkeiten lässt sich also ein komplett abgeschlossener Raum für spezielle Benutzergruppen erstellen. Von einer eigenen Gestaltung dieses Raums bis hin zu speziellen Modulen oder Menüs, die nur für die angemeldeten Benutzer verfügbar sein sollen, ist hier alles möglich.

Hier klicken, um das Bild zu vergrößern

Abbildung 15.10 Registrierte User erhalten besonderen Zugriff auf einen speziellen Bereich mit einem eigenen Template.

94

Page 95: Joomla 1 5 Handbuch

16 Joomla! als professionelle GeschäftsplattformEin Grund, warum Joomla! so populär ist, besteht sicherlich darin, dass man damit die Basis für einen kleinen Laden im Netz schaffen kann. Gerade kleine und mittelständische Unternehmen nutzen das System für ihren Webauftritt. So können sie ihre Kunden informieren, Waren verkaufen, aber auch Partner in einem gesonderten Bereich mit Material versorgen. Der folgende Abschnitt befasst sich mit dem Einsatz von Joomla! für diesen Zweck und will Sie mit dem notwendigen Rüstzeug ausstatten, das notwendig ist, um eine Geschäftsplattform aufzuziehen.

16.1 E-Commerce

Der elektronische Handel hat in den letzten Jahren sehr an Bedeutung gewonnen. Kaum ein Unternehmen kann es sich leisten, keine Internetpräsenz zu besitzen, über die potenzielle Kunden mit ihm in Kontakt treten können. Das ist auch der Bereich, in dem sich E-Commerce abspielt

Man unterscheidet je nach Zielgruppe zwischen zwei verschiedenen Modellen:

Business-to-Consumer (B2C). Bei diesem Modell wird der Endverbraucher angesprochen, der etwas kaufen oder informiert werden soll. Dabei handelt es sich in der Regel um Privatpersonen. B2C ist der klassische Fall eines Webshops, der Produkte an jedermann verkauft.

Business-to-Business (B2B). Wie der Name sagt, steht hier als Hauptansprechpartner eine weitere Firma im Mittelpunkt, die das Produkt nutzt, um selbst produzieren zu können. Darunter fallen auch Bereiche für Partner, die beispielsweise spezielle Dokumente (wie Preislisten) enthalten können.

Beide Modelle haben viele Gemeinsamkeiten. So kann sich ein Webshop an Privat- wie an Firmenkunden richten. Aber es bestehen auch Unterschiede, beispielsweise in der Art und Weise, wie Werbung betrieben wird.

16.1.1 Aufgaben

95

Page 96: Joomla 1 5 Handbuch

Mit Geschäftsplattformen im Internet verbindet man in erster Linie die Online-Shops. Dies ist aber nur einer der Bereiche, in denen eine Homepage nützlich sein kann.

Natürlich wird im Internet Handel betrieben. Sie können in Webshops in einem Produktkatalog blättern, Waren vormerken und diese dann bestellen und bezahlen. Man unterscheidet dabei zwischen zwei Arten. Einerseits werden über das Internet ganz normale Waren, beispielsweise Bücher, gekauft. Diese werden dann per Post an den Kunden verschickt. Andererseits können direkt Dienstleistungen oder Produkte über die Homepage angeboten werden, die man dann über das Netz herunterladen kann. Eine Hürde des Handels war lange Zeit das fehlende Vertrauen. Die Geschäftspartner kennen sich ja gar nicht. Noch immer schrecken viele Menschen davor zurück, ihre Kreditkartendaten im Netz zu verschicken. Umgekehrt gibt es wenige Internethändler, die ohne Vorkasse Waren verschicken. Dieser Punkt ist bei der Gestaltung der Seite zu beachten. Schaffen Sie Vertrauen, indem Sie neben einem seriösen Design auch Auskunft über Ihre Firma geben.

Werbung und Information sind die genuinen Aufgaben einer Homepage. Selbst, wenn Sie keinen Webshop auf Ihrer Seite haben, informieren sich potenzielle Kunden über Ihr Unternehmen, bevor sie Kontakt aufnehmen. Unterschätzen Sie dieses Phänomen nicht! Daher ist es auch wichtig, eine Joomla!-Seite attraktiv zu gestalten. Seien Sie nicht geizig mit Informationen. Kunden lieben es mittlerweile, sich ausführlich mit einem Produkt zu beschäftigen, bevor sie es im Internet kaufen.

Spätestens seit dem Hype um das Web der zweiten Generation hat sich auch die Erkenntnis durchgesetzt, dass man mit einer Webseite Kunden und Interessenten an die Firma binden kann. Dies kann geschehen, indem sich die Seite regelmäßig ändert und somit interessant bleibt. Ein anderer Weg ist die Bereitstellung von Added-Value-Bereichen. Hier werden angemeldeten Kunden zusätzliche Leistungen geboten, die sie immer wieder auf die Seite locken.

Im B2B-Bereich ist es auf einer Webplattform auch möglich, spezielle Leistungen für Geschäftspartner zur Verfügung zu stellen. Über Formulare können beispielsweise von freien Außendienstmitarbeitern Daten standardisiert eingegeben werden. Oder sie haben Zugriff auf die sonst interne Preisliste. Auch geschlossene Diskussions- und Dokumentationsbereiche sind hier denkbar. Dieser gesamte Anwendungsbereich gewinnt mittlerweile unter dem Begriff Extranet an Bedeutung.

16.1.2 Anforderungen an eine Geschäftsplattform

96

Page 97: Joomla 1 5 Handbuch

Aus den genannten Anwendungsfeldern ergeben sich konkrete Anforderungen an ein System, das als Basis für eine Geschäftsplattform dienen soll:

Zunächst muss es möglich sein, die gängigen Shop-Funktionalitäten abzudecken. Dazu zählen Produktkataloge, die Möglichkeit, Waren vorzumerken (Warenkorb) sowie die Abwicklung des Bestell- und am besten auch des Bezahlvorgangs.

Um die Attraktivität der Seite zu erhöhen, ist es sinnvoll, multimediale Inhalte darstellen zu können. Die Spannweite reicht von Bildern über Audio- und Videodateien bis hin zu interaktiven Anwendungen.

Kundenbindung und Informationen über Interessenten erhalten Sie beispielsweise über Formulare. Diese ermöglichen es, Anfragen zu stellen oder bestimmte Werbeaktionen durchzuführen. Ein Beispiel wäre, Freikarten zur einer Messe gegen Anmeldung zu verteilen.

Geschützte Bereiche dienen ebenfalls der Kundenbindung. Hier haben nur Personen Zugang, die sich bereits bei Ihrer Firma bekannt gemacht haben. Auch Partnerbereiche sind in der Regel nicht für jeden zufälligen Besucher erreichbar.

Die Bereitstellung von Dokumenten spielt eine große Rolle, wenn es darum geht, eine informative Webseite zu erstellen. Hier sind Produktinformationen ebenso gefragt wie Anleitungen oder interne Informationen für Partner. Wenn Sie elektronische Waren verkaufen, können Sie hier direkt Ihre Produkte zum Download anbieten.

Gerade im Partnerbereich ist es sinnvoll, wenn die Partner auch zeitlich organisieren können. Das kann beispielsweise über Kalender geschehen. Diese sind aber auch ein Medium, um über Veranstaltungen Ihrer Firma zu informieren.

Einige dieser Funktionen bringt Joomla! bereits standardmäßig mit. Andere können über Erweiterungen realisiert werden. Wir stellen Ihnen in den folgenden Kapiteln einige besonders hilfreiche Exemplare detailliert vor.

16.1.3 Rechtliches

Wenn Sie als kommerzieller Anbieter im Netz unterwegs sind, gelten im Vergleich zu privaten Homepages verschärfte Regeln. Es ist nicht die Aufgabe dieses Buches, Sie über die rechtlichen Bedingungen von Internetgeschäften aufzuklären. Was die Gestaltung der Homepage betrifft, sind aber einige Dinge zu beachten, die wir kurz anmerken wollen.

97

Page 98: Joomla 1 5 Handbuch

Alle kommerziellen Anbieter (und auch Betreiber von Seiten mit journalistischen Inhalten) unterliegen mit ihrer Homepage der Impressumspflicht. Das ist in Deutschland durch §5 des Telemediengesetzes sowie in §55 des Rundfunkstaatsvertrages geregelt. Die Informationen müssen »leicht erkennbar, unmittelbar erreichbar und ständig verfügbar« sein. In Österreich wird die Impressumspflicht durch §5 des E-Commerce Gesetzes festgelegt, in der Schweiz durch Art. 322 des Schweizerischen Strafgesetzbuches. Es hat sich eingebürgert, einen Menüpunkt Impressum mit in das Hauptmenü aufzunehmen. Nach deutschem Recht sind die folgenden Angaben im Impressum aufzuführen:

Name und Anschrift des Anbieters: Dazu zählen neben dem kompletten Namen oder der kompletten Firmenbezeichnung (Abkürzungen sind nicht erlaubt) die Straße, Hausnummer, Postleitzahl und der Ort. Juristische Personen müssen ihren Sitz angeben.

Informationen zur schnellen Kontaktaufnahme: Das sind Telefon- und gegebenenfalls Faxnummer sowie E–Mail-Adresse.

Angabe des Vertretungsberechtigten: Bei nichtnatürlichen Rechtspersonen ist es nötig, einen Vertretungsberechtigten zu nennen.

Angabe der Aufsichtsbehörde: Wenn die Zulassung einer Behörde für die Tätigkeit nötig ist, so sind die zuständige Stelle und ihre Kontaktdaten anzugeben.

Register und Registernummer: Gibt es einen Eintrag im Handelsregister, Vereinsregister, Partnerschaftsregister oder Genossenschaftsregister, so sind das Register und die Registernummer Bestandteil des Impressums.

Umsatzsteuer-Identifikationsnummer: Haben Sie eine Umsatzsteuer-Identifikationsnummer, muss auch diese angegeben werden.

Zusätzliche Pflichten für besondere Berufsgruppen: Bei freien Berufen, bei denen die Ausübung reglementiert ist oder die Berufsbezeichnung unter Schutz steht (z. B. Rechtsanwälte, Steuerberater, Ärzte oder Architekten), müssen die Berufsbezeichnung und der Staat, in dem diese verliehen wurde, angegeben werden. Es muss ein Link auf die berufsrechtlichen Regelungen gesetzt werden.

Weitere Angaben: Bestehen zusätzliche Informationspfichten, müssen auch diese angegeben werden. Ein Beispiel ist die Bereitstellung redaktioneller Beiträge. Hier muss eine natürliche Person als Verantwortlicher benannt werden.

Wenn Sie den Text dieser Angaben nicht selbst zusammenstellen wollen, finden Sie im Netz einige Seiten, die Ihnen Hilfestellung bieten. Ein Beispiel ist der Impressum-Generator von e-recht24, den Sie unter dieser URL erreichen:

98

Page 99: Joomla 1 5 Handbuch

http://www.e-recht24.de/impressum-generator/

Internetseiten, die einen direkten Vertragsabschluss mit dem Verbraucher (B2C) ermöglichen, müssen zwingend zwei Elemente enthalten. Zum einen muss der potenzielle Käufer vor Vertragsabschluss (dem Klick auf den Bestellen-Button) über seine Widerrufsrechte informiert werden. Dies passiert in der Regel während des Bestellvorgangs auf einer eigenen Formularseite. Auch muss es vor Vertragsabschluss für den Verbraucher möglich sein, die allgemeinen Geschäftsbedingungen des Online-Shops einzusehen. Diese sind häufig neben dem Impressum im Hauptmenü verlinkt. Allerdings reicht dies nach gängiger Rechtssprechung nicht aus. Auch die AGB sollten direkt im Bestellvorgang dem Verbraucher zur Kenntnisname vorgelegt werden.

Alle Webshops erhalten auch persönliche Daten von Kunden. Diese unterliegen einem besonderen Schutz. Die spektakulären Fälle der jüngsten Zeit, bei denen viele Tausend personenbezogene Daten an die Öffentlichkeit gelangt sind, lassen vermuten, dass sich die Bestimmungen in Zukunft verschärfen werden. Auch wenn momentan keine Pflicht besteht, Angaben zur Datensicherheit zu machen, hat es sich bei seriösen Anbietern eingebürgert, Angaben zum Datenschutz zu machen. Darin ist in der Regel aufgeführt, welche Daten gespeichert werden, wie lange sie vorgehalten werden und welchem Verwendungszweck sie dienen. Meist wird auch die Weitergabe an Dritte ausgeschlossen.

17 Online-Shop: VirtueMartVirtueMart ist eine sehr umfangreiche und mit vielen Features ausgestattete Shop-Komponente, die sich nahtlos in Joomla! integrieren lässt. Sie eignet sich ausgezeichnet für kleinere und mittlere E-Commerce-Plattformen, aber auch große Shops sind mit diesem System bereits realisiert worden. Im Folgenden seien nur einige wenige der vielen, vielen Funktionen genannt:

Nutzung als Shop oder als Katalog möglich

Verkauf von downloadbaren Produkten wie Videos oder Software

Rabatte für einzelne Produkte und bestimmte Nutzergruppen

Auswahl von verschiedenen Bestellvorgängen

Bestellübersicht für die getätigten Bestellungen

Zahlreiche Versand- und Zahlungsmodule bereist integriert

Vergabe von Gutscheinen

99

Page 100: Joomla 1 5 Handbuch

Statistikfunktion für »Anzahl der Kunden«, »Anzahl der Bestellungen«, »Neueste Kunden« usw.

leichtes Importieren von Produkten mithilfe von CSV-Dateien

umfangreiche Einstellmöglichkeiten für die Shop-Funktionen

Verwaltung mehrerer Steuersätze

Verwaltung von Lieferanten und Herstellern

Die Software des VirtueMarts ist in der Tat so umfangreich, dass ihre Beschreibung ohne Probleme ein eigenes Buch füllen könnte. Daher müssen wir uns im Folgenden leider auf das Wesentliche beschränken.

Video-Lektion

Zu diesem Kapitel finden Sie auch eine geeignete Video-Lektion auf der DVD. Hier können Sie das beschriebene Vorgehen Schritt für Schritt anschaulich mitverfolgen.

17.1 Installation

Die aktuelle Version dieser Komponente ist 1.1.2 Stable.

Laden Sie die Datei VirtueMart_1.1.2-COMPLETE_PACKAGE.j15.zip von der Website http://virtuemart.net herunter, und entpacken Sie diese.

Wichtig

Das »Komplett-Paket« und das »Manuelle Installation Package« gibt es in zwei Versionen: einer für Joomla! 1.0/Mambo und einer für Joomla! 1.5. Die zweite Version hat die Endung .J15.zip (oder . J15.tar.gz).

Wie Sie nach dem Entpacken sehen, besteht das Paket aus der Hauptkomponente selbst und einer Reihe von Modulen und Plug-ins. Beginnen wir mit dem Herzstück der Erweiterung.

17.1.1 Komponente

100

Page 101: Joomla 1 5 Handbuch

Um die Hauptkomponente zu installieren, laden Sie die Datei com_virtuemart_1.1.2.j15.zip im Installer der Komponenten hoch.

Wenn die Installation geglückt ist, öffnet sich ein neues Fenster (Abbildung 17.1) mit der Nachricht, dass die Komponente erfolgreich installiert wurde.

Im Menü Komponenten ist nun der Eintrag Virtue Mart sichtbar.

Hier klicken, um das Bild zu vergrößern

Abbildung 17.1 Die Meldung der erfolgreichen Installation

17.1.2 Beispieldaten

Jetzt können Sie Ihren Shop mit Beispieldaten bestücken. Dies ist besonders sinnvoll, wenn Sie die Funktionen der Erweiterung erst einmal in Ruhe ausprobieren wollen. Klicken Sie hierzu auf Install SAMPLE DATA. Diese bestätigen Sie mit einem Klick auf den Button OK.

Wichtig

Die Implementierung der Beispieldaten kann einige Minuten in Anspruch nehmen. Unterbrechen Sie diesen Vorgang nicht, da sonst Ihr Shop nicht mehr richtig funktionieren würde.

Sobald dieser Vorgang abgeschlossen ist, erhalten Sie eine Meldung, dass die Beispieldaten erfolgreich installiert wurden.

17.1.3 Module

101

Page 102: Joomla 1 5 Handbuch

Für den Online-Shop VirtueMart gibt es eine Anzahl von Modulen (Tabelle 17.1). Das Modul mod_virtuemart_1.1.2.j15 müssen Sie installieren, da darüber die Produkte bzw. die verschiedenen Produktkategorien angesteuert werden können. Laden Sie die Datei mod_virtuemart_1.1.2.j15.zip im Installer der Komponenten hoch, und vergessen Sie nicht, das Modul zu veröffentlichen.

Die anderen Module und Plug-ins sind optional und können daher auch im Nachhinein installiert werden.

Tabelle 17.1 Die Module und Plug-ins des VirtueMart-Pakets

Modul Funktion

mod_virtuemartEin Modul, das unbedingt mit dem Shop installiert werden muss, damit z. B. der Warenkorb angezeigt werden kann.

mod_product_categories»Produktkategorienmodul«: Hiermit können Sie Produkte nach Kategorien sortieren lassen.

mod_productscroller»Product-Scroller-Modul«: Navigieren Sie zu bestimmten Erzeugnissen irgendwo auf Ihrer Website.

mod_virtuemart_allinone»All-in-one-Modul«: Kann die neuesten Produkte, Top-Ten-Produkte oder zufällige Produkte anzeigen.

mod_virtuemart_cart»Mini-Warenkorb-Modul«: Zeigt einen Mini-Warenkorb für den Kunden mit einem Link auf die Warenkorb-Seite.

mod_virtuemart_currencies»Währungsmodul«: Zeigt eine Dropdown-Liste der Währungen, die zur Verfügung stehen.

mod_virtuemart_featuredprod»Featured-Products-Modul«: Zeigt zukünftige Produkte Ihres Shops.

mod_virtuemart_latestprod»Neue-Produkte-Modul«: Zeigt die neuesten Produkte in Ihrem Shop an.

mod_virtuemart_login »Login-Modul«: Zeigt ein Login-Formular für

102

Page 103: Joomla 1 5 Handbuch

VirtueMart-Benutzer.

mod_virtuemart_manufacturers

»Modul Manufacturer«: Zeigt alle Hersteller in Ihrem Shop. Mit einem Link finden Sie alle Produkte der ausgewählten Anbieter.

mod_virtuemart_randomprod»Random-Products-Modul«: Zeigt zufällige Produkte in Ihrem Shop oder einer bestimmten Kategorie an.

mod_virtuemart_search»Suchfeld-Modul«: Zeigt das VirtueMart-Suchfeld an. Hiermit können Kunden nach Produkten suchen.

mod_virtuemart_topten»Top-Ten-Produkte-Modul«: Zeigt die zehn beliebtesten Produkte Ihres Shops an.

vmproductsnapshotsErmöglicht in Joomla!-Artikeln die Verlinkung auf Produkte bzw. deren Details.

vmxsearch.pluginWeitet die Suche auf die Inhalte des Shop-Systems aus.

17.1.4 Sprachdateien

Der VirtueMart ist zunächst einmal eine englische Software. Es gibt jedoch zwei Möglichkeiten, Sprachdateien nachträglich zu installieren. Zum einen können Sie die Dateien mit dem Virtue Mart Language Manager einbinden und zum anderen die Dateien entpacken und in das Sprachverzeichnis kopieren.

Wenn Sie den Virtue Mart Language Manager nutzen möchten, müssen Sie diesen zuerst installieren, indem Sie die Datei com_martlanguages_1.1c.zip im Installer der Komponenten hochladen.

Im Menü Komponenten erscheint nun der Eintrag Virtue Mart Language Manager.

Klicken Sie auf diesen Eintrag. Es öffnet sich ein neues Fenster, in dem Ihnen eine Liste mit den bereits verfügbaren Sprachen anzeigt wird. Standardmäßig ist nur Englisch installiert.

103

Page 104: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 17.2 Die Auflistung der verfügbaren Sprachen

Um die deutschen Sprachdateien aktivieren zu können, benötigen Sie die Datei Language_Pack_for_VirtueMart_1.1.2.zip. Diese binden Sie mit einem Klick auf das Symbol Upload Pack ein. Wählen Sie hier nun mit Durchsuchen die zu installierende Sprachdatei aus. Sobald Sie die Datei ausgewählt haben, klicken Sie auf Upload. Nachdem die Datei hochgeladen worden ist, wird Ihnen angezeigt, welche Sprachen installiert wurden. Am Ende dieser Liste befindet sich der Button Back to Language List, mit dem Sie zurück zur Übersicht gelangen.

Wie Sie sehen können, wurden nun mehrere Sprachen installiert. German wurde als aktuelle Sprache markiert.

Alternativ haben Sie auch die Möglichkeit, die Sprachdateien zu entpacken und in das Verzeichnis administrator\components\com_virtuemart\languages zu kopieren.

Deutsch-Englisch

Leider ist die Oberfläche nicht vollständig ins Deutsche übersetzt worden. Sie werden immer wieder auf englische Sprachschnipsel stoßen.

18 Formulare: BreezingForms und ChronoFormsWenn Sie in der Standardinstallation von Joomla! funktionale Formulare einbinden wollen, über die sich Ihre Leser z. B. zu einer Veranstaltung anmelden können, müssen Sie über gute HTML-, PHP- und MySQL-Kenntnisse verfügen und sich auf eine umständliche Entwicklungsphase gefasst machen. Einfacher geht dies mit den Erweiterungen BreezingForms und ChronoForms. Mit beiden Komponenten kann man dasselbe Ergebnis erzielen, sie basieren jedoch auf völlig unterschiedlichen Ansätzen: Während man die Formulare bei den BreezingForms direkt in Joomla! generieren kann, werden sie bei den ChronoForms mit einem HTML-Editor wie z. B. Dreamweaver erstellt und erst dann auf der Seite eingebunden. Beide

104

Page 105: Joomla 1 5 Handbuch

Werkzeuge sind sehr mächtig und haben jeweils ihre Fangemeinde. Aber sehen Sie im folgenden selbst.

18.1 BreezingForms

Die Erweiterung BreezingForms ist ein komfortabel zu bedienender Formulargenerator, der es ermöglicht, vom einfachen, einseitigen Online-Formular bis hin zur datenbankgestützten Mini-Applikation alles rasch zu entwickeln und zu testen. Dabei können Sie auf vorgefertigte Funktionen zugreifen, die z. B. die Eingaben der User überprüfen, aber auch in PHP eigene Skripte verfassen, die an die Formulare angebunden werden. Die empfangenen Daten können sogar mit einem Mausklick zur Weiterverarbeitung in das flexible XML-Format umgewandelt werden. Die BreezingForms sind übrigens das Nachfolgeprogramm der FacileForms, die eine der beliebtesten Erweiterungen von Joomla! 1.0 gewesen sind, das merken Sie schon allein daran, dass der Name »FacileForms« bei vielen Funktionalitäten noch nicht vollständig ersetzt worden ist und auch in dieser Beschreibung immer mal wieder aufblitzt.

Wir beschreiben im Folgenden die aktuelle Version BreezingForms 1.5.1 RC1. Das Programm ist allerdings so umfangreich, dass wir uns auf eine Einführung beschränken müssen. Weiterführende Informationen erhalten Sie über die Site der regen BreezingForms-Fangemeinde, www.crosstec.de.

18.1.1 Installation und Konfiguration

Laden Sie sich die in Tabelle 18.1 aufgeführten Dateien herunter. Diese Dateien können Sie über die jeweiligen Installer einbinden (siehe Abschnitt 9.4, »Neue Erweiterungen installieren«). Diese finden Sie auch auf der DVD im Verzeichnis erweiterungen/breezing_forms.

Tabelle 18.1 Die Dateien von BreezingForms

Dateiname Definition Funktion

com_breezingforms_151rc1.zip

Komponente

Kernkomponente

mod_breezingforms_151b2.zip Modul BreezingForms als Modul

105

Page 106: Joomla 1 5 Handbuch

plg_breezingforms_151b2.zip Plug-inBreezingForms als Plug-in (Mambot)

Im nächsten Schritt installieren Sie mitgelieferte Beispielformulare. Gehen Sie dazu über das Menü Components oder die Schnellübersicht auf den Punkt Configuration (Abbildung 18.1).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.1 Der zweite Schritt bei der Installation der BreezingForms

Wie Sie sehen, können Sie hier auch Daten von einer älteren Facile Forms-Version upgraden.

Lassen Sie die Standardmuster (Samples) ausgewählt, und gehen Sie mit Weiter zu Schritt 3. Hier wird Ihnen mitgeteilt, dass die Installation erfolgreich verlaufen ist, und Sie gelangen wiederum über Weiter zu Schritt 4, dem eigentlichen Konfigurationsdialog der BreezingForms, auf den Sie auch nach der Installation immer wieder zugreifen können (Abbildung 18.2).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.2 Das Konfigurationsfenster der BreezingForms

106

Page 107: Joomla 1 5 Handbuch

Hier können Sie z. B. für die Textelemente in einem Formular den WYSIWYG-Editor einschalten, Ihre E–Mail-Adresse als Standardkontakt eingeben und Formulare im- und exportieren.

18.1.2 Die BreezingForms in der Übersicht

In der Schnellübersicht, zu der Sie auch über das Komponentenmenü gelangen, sollten Sie nun die Optionen aus Abbildung 18.3 sehen.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.3 Nach der Installation erscheinen die Forms in der Schnellübersicht.

Ebenso wie Joomla! selbst ist das Programm BreezingForms in mehrere Manager eingeteilt, die jeweils unterschiedliche Verwaltungsaufgaben übernommen haben.

Tabelle 18.2 Die Menüpunkte von BreezingForms

Manager Aufgabe

Einträge verwaltenAnzeige und Weiterverarbeitung der erhaltenen Formulardaten

Admin-Menüs verwalten

Einbindung von Formularen in Backend-Menüs

Formulare verwalten Erstellung und Gestaltung von Formularen

Skripte verwalten Erstellung von Skripten für Elemente

Teile verwalten Erstellung von Skripten für den Formularablauf

Konfiguration Haupteinstellungen der BreezingForms

107

Page 108: Joomla 1 5 Handbuch

Wenn Sie in einen der BreezingForms-Manager springen, finden Sie oberhalb der jeweiligen Verwaltungsoberfläche eine Toolleiste (Abbildung 18.4), über die Sie bequem zwischen den verschiedenen Ansichten hin und her springen können.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.4 Die Toolleiste über sämtlichen BreezingForms-Managern

Im Menü sehen Sie unter den Managern eine weitere Gruppe, Facile Forms Sample Menu, die Sie bei der Installation optional übernehmen konnten. Das sind einige Beispielformulare, die Sie als Anschauungsmaterial verwenden oder nach Ihren Bedürfnissen umändern und weiterverarbeiten können.

Tabelle 18.3 BreezingForms Sample Menu

Beispiel Beschreibung

Contact form Kontaktformular

Pizza Shop Pizza-Service

18.1.3 Entwurf eines Beispielformulars

Die Erstellung eines Formulars sollten Sie am besten gleich anhand eines konkreten Beispiels kennenlernen. Wir möchten für unsere Tanzschule ein einfaches Anmeldeformular für Joomla!-Tanzkurse kreieren. Dieses sollte der Skizze aus Abbildung 18.5 entsprechen.

Hier klicken, um das Bild zu vergrößern

108

Page 109: Joomla 1 5 Handbuch

Abbildung 18.5 Skizze zur Kursanmeldung

18.1.4 Die Formularoberfläche

Bevor wir uns an die Umsetzung unseres Skizzenformulars machen, wollen wir Ihnen noch einige grundsätzliche Informationen über die Formularerstellung in den BreezingForms geben.

Wenn Sie ein neues Formular erstellt haben, wird Ihnen eine leere Entwurfsfläche präsentiert, auf der Sie Ihre Elemente anordnen können (Abbildung 18.6). Über die Buttons Neue Seite davor und Neue Seite danach können Sie außerdem mehrere Seiten anlegen und diese dann über eingefügte Navigationsbuttons miteinander verbinden.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.6 Die leere Entwurfsansicht eines Formulars

Die BreezingForms stellen zur Realisierung des Formulars eine Reihe von Elementen zur Verfügung, die sich zum Teil stark an die HTML-Konventionen halten (Abbildung 18.7), zum Teil aber auch zusätzliche Optionen bieten, z. B. den Tooltip.

109

Page 110: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 18.7 Die Formularelemente, die Ihnen die BreezingForms zur Verfügung stellen

In Tabelle 18.4 finden Sie alle Elemente mit einer Erläuterung und da, wo es sinnvoll ist, mit ihrer konkreten Umsetzung in einer Übersicht.

Tabelle 18.4 Elemente der BreezingForms

Name Bedeutung Ausführung

Statischer Text/HTML

Einfacher (formatierter) Text, z. B. zur Beschriftung eines Feldes

RechteckViereck zur Dekoration, Umrahmung etc.

Grafik Statisches Bild zur Dekoration–

Hinweis

Kleines Symbol mit Informationstext, wenn man mit der Maus über das Element fährt

Ankreuzfeld Mehrfachauswahlfeld

Radioknopf Einfachauswahlfeld

Text Einzeiliges Texteingabefeld–

110

Page 111: Joomla 1 5 Handbuch

Textbereich Mehrzeiliges Texteingabefeld–

Auswahlliste Dropdown-Liste

Abfrageliste Abfrage der Datenbank–

Datei-UploadFormularfeld zum Hochladen von Dateien

Versteckte Eingabe

Verstecktes Feld–

Normaler Button

Schaltfläche

Grafik-ButtomSchaltfläche mit Bild als Hintergrund

PiktogrammBild, das als Schaltfläche fungiert

Die Entwurfsoberfläche entspricht dem WYSIWYG-Prinzip und kennt nun auch die Drag-&-Drop-Funktionalität. Größe und Position der Elemente können also mit der Maus beeinflusst werden. Die Elemente können aber auch über Einstellungsfenster konfiguriert bzw. mit Pfeilwerkzeugen verschoben werden.

Anlegen eines neuen Formulars

Lassen Sie uns mit unserem Beispielformular beginnen. Gehen Sie in Formularverwaltung, und legen Sie über Neu ein neues Formular an. Name und Titel des Formulars sind obligatorische Eingaben (Abbildung 18.8). Der Titel ist der Begriff, unter dem das erstellte Element z. B. in Listen auftaucht, damit es besser für Menschen zu lesen ist. Über seinen Namen wird das Element programmiertechnisch z. B. in Skripts, aber auch innerhalb der Joomla!-Konfiguration angesprochen. Achten Sie daher darauf, dass der Name keine Sonderzeichen oder Umlaute enthält. Die restlichen Einstellungen, wie z. B. die Größe des Formulars, können vernünftigerweise auch nachträglich vorgenommen werden.

111

Page 112: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 18.8 Ein neues Formular wird angelegt.

Der Punkt Paket bietet die Möglichkeit, Ihr Formular einem bereits bestehenden oder auch neuen Paket hinzuzufügen. Über das Konzept der Pakete können Sie später die Listenansicht filtern oder aber ein Paket bequem exportieren lassen. Wir tragen für unser Beispiel ein neues Paket »Anmeld_tanzkurs« ein.

Nachdem Sie das Formular gespeichert haben, erscheint es in der Liste des Formularmanagers (Abbildung 18.9).

Wie Sie erkennen, wurde bereits eine Seite angelegt, die allerdings noch völlig leer ist. Über die Dropdown-Liste Paket können Sie sich auch die Formulare in den anderen Paketen ansehen. Für den Fall, dass Ihnen hier nur eine leere Tabelle vorliegt, versuchen Sie, über eben diese Dropdown-Liste unser Package auszuwählen.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.9 Das neue Formular im Formularmanager

Texteingabefeld

Wir werden das Formular nun mit einigen Elementen bestücken. Klicken Sie dazu auf dessen Titel. Sie befinden sich jetzt im Bearbeitungsmodus und können Eingabeelemente hinzufügen. Klicken Sie auf Neu. Im nun folgenden Dialog werden Sie aufgefordert, eine Auswahl aus vorgegebenen Eingabeoptionen zu treffen (Abbildung 18.7).

Wir benötigen als Erstes das Eingabefeld für den Nachnamen und klicken daher im Bereich Eingaben den Radiobutton Text an. Mit Weiter fahren Sie

112

Page 113: Joomla 1 5 Handbuch

fort. Nun erscheint ein Formular, in dem die Angaben zu dem Textfeld detailliert eingestellt werden können (Abbildung 18.10). So können Sie hier z. B. bestimmen, ob das Textfeld für Passwörter gedacht ist und dementsprechend bei der Eingabe nur Sternchen angezeigt werden.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.10 Auswahl der Formularelemente

Wenn Sie das Textfeld gespeichert haben, sehen Sie es links in der Liste der Formularelemente und rechts in der Entwurfsansicht des Formulars (Abbildung 18.11).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.11 Die Bearbeitungsansicht des Formulars mit einem Texteingabefeld

Einstellungen, die bis dahin nicht gespeichert wurden, werden nicht berücksichtigt.

Statisches Textfeld

Wir wollen nun das Eingabefeld beschriften und fügen daher ein weiteres Element hinzu. Dazu gehen wir wieder auf Neu und wählen dann im Bereich Statische die Option Statischer Text/HTML (Abbildung 18.7). In den Einstellungen für dieses Element sollten Sie neben Titel und Namen natürlich auch ganz unten den Wortlaut der Beschriftung, in unserem Fall »Nachname« eingeben (Abbildung 18.12).

113

Page 114: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 18.12 Konfiguration der Beschriftung

In der Entwurfsansicht des Formulars sehen Sie jetzt die Beschriftung und das Eingabefeld, die allerdings noch ein wenig anders angeordnet werden müssen. In den Vorgängerversionen konnte man die Elemente nicht mit der Maus hin- und herbewegen. Dies ist nun möglich. Alternativ können Sie auch ein Element in der Liste markieren und es mit den Pfeilen neben dem Formularentwurf verschieben (Abbildung 18.13).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.13 Das Werkzeug zum Verschieben der Formularteile

Mit der Angabe der Pixel können Sie die Positionierung der Elemente verfeinern. Vergessen Sie nicht, die neue Anordnung mit Speichern zu sichern, sonst wird das Formular wieder zurückgesetzt.

Mehrfachauswahl

Sie können auch mehrere Elemente gleichzeitig verschieben, indem Sie diese in der Liste auswählen.

114

Page 115: Joomla 1 5 Handbuch

Dieselbe Prozedur wiederholen wir für den Vornamen und die E–Mail-Adresse. Zwei Eingabefelder und zwei Beschriftungen werden hinzugefügt und positioniert. Unser Formular sieht nun aus wie in Abbildung 18.14.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.14 Unser erstes Formular

Radiobuttons

Als Nächstes fügen wir zwei Radiobuttons für die Angabe des Geschlechts ein. Im Konfigurationsdialog können Sie die Beschriftung im gleichnamigen Feld Beschriftung eingeben (Abbildung 18.15).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.15 Die Einstellung der Radiobuttons

Radiobuttons richtig genutzt

Der Sinn einer Gruppe von Radiobuttons besteht darin, dass jeweils immer nur ein Element angeklickt sein kann. Um dem Programm mitzuteilen, dass Radiobuttons zusammengehören, müssen Sie bei jedem Element im Feld Name denselben Wert eingeben.

Die Radiobuttons sollten sich nun so präsentieren wie in Abbildung 18.16.

115

Page 116: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 18.16 Ansicht der Radiobuttons

Dropdown-Liste

Für die Angabe eines bestimmten Tanzkurses benötigen wir eine sogenannte Dropdown-Liste. Sie wird im Auswahlfenster der Elemente (Abbildung 18.7) als Auswahlliste bezeichnet. Die Konfiguration sehen Sie in Abbildung 18.17.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.17 Die Konfiguration der Dropdown-Liste

Über den Punkt Mehrfachauswahl können Sie einstellen, ob in der Liste mehrere Einträge ausgewählt werden dürfen. Dies ist in unserem Fall jedoch nicht sinnvoll. Die Auswahloptionen schreiben Sie untereinander in das Feld Optionen, und zwar in drei Abschnitten, die jeweils durch einen Strichpunkt getrennt werden:

1; Bitte Kurs auswählen; 0 0; Joomla!/Anfänger; 1 0; Joomla!/Fortgeschrittene; 2 0; Joomla!/Profi; 3

Im ersten Teil kann entweder eine 1 oder eine 0 angegeben werden. Die 1 bedeutet, dass dies die Standardeinstellung werden soll. Den zweiten Abschnitt bekommt der Nutzer als Listeneintrag zu sehen. Wenn im dritten Teil Werte verwendet werden, werden diese übermittelt. So können die Tanzkurse z. B. intern durchnummeriert werden.

116

Page 117: Joomla 1 5 Handbuch

Tipp

Wenn Sie in der ersten Zeile Informationen für den Nutzer formulieren, sparen Sie sich eine zusätzliche Beschriftung der Dropdown-Liste. Außerdem kann man so feststellen, ob der User überhaupt eine Auswahl getroffen hat.

Das Ergebnis sehen Sie in der Entwurfsansicht und in Abbildung 18.18.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.18 Unsere Dropdown-Liste

Tooltip

Ein Element, das Sie schon von der Joomla!-Oberfläche kennen dürften, ist der Tooltip. Wir wollen unserer Kursauswahlliste einen Tooltip zur Seite stellen, der den User darüber informiert, an wen er sich bei eventuellen Fragen zu Kursinhalten wenden kann.

Dazu wählen wir im Bereich Statische den Hinweis aus (Abbildung 18.7) und stellen ihn nach unseren Wünschen ein (Abbildung 18.19). Man könnte nun z. B. über den Typ Spezial ein eigenes kleines Icon einbinden. Wir bleiben in unserem Beispiel jedoch bei dem blauen Informationssymbol.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.19 Die Einstellungen des Tooltips

Wenn Sie gespeichert haben, sehen Sie das eingefügte Symbol und können es neben der Kursliste positionieren.

117

Page 118: Joomla 1 5 Handbuch

Was jetzt noch fehlt, ist der Submit-Button, der die Daten an den Server übermittelt.

Submit-Button

Das Erstellen des Buttons folgt einer ähnlichen Prozedur wie das Anlegen der bisherigen Elemente. Sie wählen im Bereich Knöpfe (Abbildung 18.7) eine Schaltfläche mit dem gewünschten Layout und konfigurieren sie im Einstellungsdialog (Abbildung 18.20).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.20 Die Einstellung des Submit-Buttons

Die Schaltfläche vom Typ Normaler Knopf erscheint so wie in Abbildung 18.21.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.21 Der Submit-(Abschicken-)Button

Zuletzt soll unser Formular noch eine Überschrift erhalten. Dazu verschieben wir alle Bestandteile nach unten, indem wir in der Liste alle Elemente über die oberste Checkbox in der Titelleiste markieren und anhand der Pfeile nach unten setzen.

Danach fügen wir ein zusätzliches statisches Textfeld für den Titel ein. Um den Text als Überschrift formatieren zu können, sollten Sie über Components • Facile Forms • Configuration den WYSIWYG-Editor für Textfelder einschalten. Nun können Sie »Kursanmeldung« als Überschrift der Ebene 2 und kursiv formatieren.

Die Oberfläche unseres Formulars ist damit fertig (Abbildung 18.22).

118

Page 119: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 18.22 Das komplette Anmeldeformular

18.1.5 Funktionen für das Formular und die Elemente

Nachdem nun die Äußerlichkeiten erledigt sind, können wir uns den Funktionalitäten des Formulars zuwenden. Jedem Formular und jedem einzelnen dynamischen Element können Sie Skripte, also kleine Programmteile, zuweisen, die – abhängig von verschiedenen Ereignissen – ausgeführt werden. Sie finden diese Skripte im Konfigurationsdialog der einzelnen Elemente über den Reiter Skripte. Sie lassen sich in drei Kategorien einteilen:

Tabelle 18.5 Die verschiedenen Skriptkategorien

Skriptkategorie Funktion

Initialisierungsskript

Was passiert beim Laden des Elements?

AktionsskriptWas passiert bei einer bestimmten Aktion, z. B. einem Mausklick?

Validierungsskript Worauf soll der Inhalt eines Elements getestet werden?

Bei jeder dieser Kategorien haben Sie die Auswahl zwischen Kein, Bibliothek und Spezial.

119

Page 120: Joomla 1 5 Handbuch

Kein ist die Default-Einstellung und bedeutet, dass kein Skript ausgewählt wurde.

Unter Bibliothek können Sie sich mehrere vorgefertige Skripte aussuchen.

Am flexibelsten, aber auch am anspruchsvollsten ist die letzte Option, Spezial. Hier können Sie sich über Rahmencode erzeugen das Muster einer Funktion vorgeben lassen und die Platzhalter und den eigentlichen Programmteil durch eigene PHP-Befehle ersetzen.

Um Ihnen einen Überblick zu verschaffen, haben wir in Abbildung 18.23 für eine beliebige Dropdown-Liste alle drei Funktionsoptionen verteilt auf die verschiedenen Skriptkategorien ausgewählt. Im Folgenden möchten wir die verschiedenen Skriptbereiche anhand einiger praktischer Beispiele erläutern.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.23 Verschiedene Skriptoptionen

Den Fokus auf ein Element setzen

Kehren wir zu unserem Beispiel zurück. Beim Aufrufen eines Formulars wird der Fokus standardmäßig auf das erste Element eines Formulars gelenkt. Wir möchten nun aber, dass die Aufmerksamkeit des Nutzers zuerst auf das E–Mail-Feld gezogen wird, damit er diese wichtige Eingabe gleich als Erstes erledigt.

Dazu gehen wir in den Skripte-Dialog des E–Mail-Textfeldes und klicken im Initialisierungsskript-Bereich die Option Bibliothek an. Wählen Sie dann die Checkbox Formulareintritt und suchen Sie unter Skript die Funktion FF:ff_getfocus aus. Speichern Sie Ihre Eingaben ab.

120

Page 121: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 18.24 Das Fokus-Skript anhängen

Sie können sich bereits in der Entwurfsansicht vergewissern, dass sich der Cursor beim Initialisieren des Formulars im E–Mail-Feld befindet.

Validierung der Eingaben

Wenn ein User ein Formular ausgefüllt hat, schleichen sich oft Fehler ein oder obligatorische Felder werden übersehen, was Auswirkungen auf den ganzen Kommunikationsprozess haben könnte. Um diese fehlerhaften Eingaben abzufangen, können Sie an die jeweiligen Formularfelder kleine Programmskripte anhängen, die nach dem Betätigen des Abschicken-Buttons, aber noch vor dem Einfügen der Daten in die Datenbank den Nutzer darauf hinweisen, dass er das Formular an bestimmten Stellen falsch oder gar nicht ausgefüllt hat.

In unserem Beispiel soll ein Skript überprüfen, ob denn tatsächlich eine E–Mail-Adresse in das Feld E–Mail eingegeben wurde. Dazu klicken wir doppelt auf das Eingabefeld E–Mail und begeben uns dann in das Register Skripte (Abbildung 18.24). Hier wählen Sie bei Validierungsskript den Radiobutton Bibliothek und wählen in der Dropdown-Liste die Funktion ff_validemail an. Im Feld darüber können Sie festlegen, welche Fehlermeldung ausgegeben werden soll, falls der Nutzer keine richtige E–Mail-Adresse eingegeben hat.

Wie Sie in der Dropdown-Liste sehen, können die unterschiedlichsten Gültigkeitsprüfungen durchgeführt werden. So testet z. B. ff_integer_or_empty, ob das Feld eine ganze Zahl enthält oder leer ist.

121

Page 122: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 18.25 Die E–Mail-Adresse soll überprüft werden.

Über den Button abschicken

Bisher ist unsere Schaltfläche Abschicken zwar für eine bestimmte Aufgabe vorgesehen, aber noch nicht funktionsfähig. Dazu müssen wir noch einmal in die Konfiguration des Buttons gehen und über den Reiter Skripte eine Funktion anbinden (Abbildung 18.25). Wählen Sie im Bereich Aktionsskript den Radiobutton Bibliothek, und aktivieren Sie die Funktion ff_validate_submit, die zunächst die eingestellten Validierungsskripte durchläuft und dann die Daten abschickt.

Sie könnten hier aber auch andere Aktionen mit dem Button verbinden – z. B. den Sprung auf eine weitere Seite des Formulars.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.26 Die Schaltfläche mit der Submit-Funktion verbinden

Rückmeldung an den Nutzer geben

Wenn das Formular abgeschickt wurde, sollten Sie den User nicht im Unklaren lassen, sondern ihm eine Meldung schicken, dass die Übertragung geklappt hat. Das Skript, das dazu notwendig ist, wird diesmal nicht mit einem einzelnen Element, sondern mit dem gesamten Formular verbunden.

Wir gehen daher eine Ebene höher in den Formularmanager und gelangen in die Konfiguration, indem wir auf den Namen (!) unseres Formulars klicken.

122

Page 123: Joomla 1 5 Handbuch

Auch hier finden wir den Reiter Skripte Abbildung 18.27. Wählen Sie im Bereich \'Übermittelt\' Skript den Radiobutton Bibliothek und aus der Dropdown-Liste die Funktion ff_showsubmitted und speichern Ihre Eingabe ab.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.27 Die Einstellung der Rückmeldung

Nun können Sie das Formular in der Entwurfsansicht testen. Bei einer falschen Eingabe der E–Mail-Adresse, z. B. ohne das »@«-Zeichen, sollte die JavaScript-Meldung aus Abbildung 18.28 erscheinen.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.28 Die Meldung im Fall einer falschen E–Mail-Adresse

Bei der richtigen Eingabe erhalten Sie eine positive Meldung (Abbildung 18.29).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.29 Die Daten wurden erfolgreich übermittelt.

123

Page 124: Joomla 1 5 Handbuch

Fehlermeldung?

Falls Sie beim Abschicken die Fehlermeldung »send mail failed: could not instantiate mail function« erhalten, sollten Sie in der Global Configuration • Mail den Modus (php, sendmail oder smtp) auf smtp oder sendmail umstellen (vgl. auch Abschnitt 10.3, »Mail-Versand«).

18.1.6 Die Verwaltung der Daten

Wenn die Übermittlung der Daten funktioniert hat, können Sie die Eingaben über den Menüpunkt Datensatzverwaltung einsehen und weiterverarbeiten (Abbildung 18.30). Der zuletzt eingegangene Datensatz steht ganz unten.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.30 Übersicht der Datensätze

Neben Angaben wie z. B. dem Zeitpunkt der Übermittlung, der IP-Adresse und dem Provider des Empfängers sehen Sie interessante Informationen über den Status des Datensatzes.

Tabelle 18.6 Informationen über den Datensatz

Status Bedeutung

Gesichtet Der Datensatz wurde schon gesichtet.

Exportiert Die Daten wurden bereits einmal in XML umgewandelt.

Archiviert Die Daten wurden ins Archiv gelegt.

Über der Liste sind Filterformulare, mit denen Sie sich die Ansicht der Daten anhand der Statusinformationen zusammenstellen können. Auf der rechten Seite befinden sich außerdem Schaltflächen, durch die sich die Reihenfolge der Listeneinträge entsprechend abändern lässt.

124

Page 125: Joomla 1 5 Handbuch

Die Schaltfläche Export XML wandelt die Daten in XML um und macht sie damit für verschiedene andere Anwendungen lesbar.

Um sich einzelne Datensätze genauer anzusehen, klicken Sie in der Spalte Abgesandt auf einen Eintrag. Sie erhalten eine detaillierte statische Übersicht über die empfangenen Informationen (Abbildung 18.31). Wenn Sie hier auf Speichern klicken, wird der Datensatz automatisch auf Gesichtet umgestellt.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.31 Die Detailansicht der Daten

Zum Archivieren von Daten klicken Sie auf das rote Kreuz in der Spalte Archiviert (Abbildung 18.30). Damit wird der Datensatz ins Archiv verschoben. Dieses Archiv können Sie betrachten, wenn Sie den Archiv-Filter auf nur archivierte setzen. Um Daten endgültig zu löschen, markieren Sie diese und klicken auf das Symbol Löschen.

18.1.7 Formular im Frontend verankern

Es gibt drei Möglichkeiten, das Formular im Frontend einzubinden:

Man kann es als Komponente in einem Frontend-Menü verankern, was für Sie keine Schwierigkeit mehr darstellen dürfte (vgl. Abschnitt 6.3.3, »Einen Menüpunkt erstellen«).

Da wir auch das BreezingForms-Modul installiert haben, besteht die Option, das Formular als Modul anzeigen zu lassen. Auch auf diese Vorgehensweise sind wir schon in Abschnitt 9.1, »Module«, eingegangen.

125

Page 126: Joomla 1 5 Handbuch

Wenn Sie die Plug-in-Datei von BreezingForms installiert haben, können Sie Ihr Formular als Plug-in in ein bereits bestehendes Content-Element einbinden.

Wie dies funktioniert, verraten wir Ihnen im Folgenden.

Zunächst sollten Sie das Plug-in veröffentlichen. Nun können Sie im Bearbeitungsmodus eines beliebigen Artikels das Plug-in-Tag

{FacileForms : Name_des_Formulars, 1, 0}

eintragen. Dieses wird dann durch Ihr Formular ersetzt. Im zweiten Parameter bestimmen Sie, welche Seite des Formulars angezeigt wird, und über den dritten Parameter können Sie den Rahmen ein- oder ausstellen.

Für unser Beispiel tragen wir folgende Zeile am Ende des Artikels »Lateinamerikanische Tänze« in der Kategorie »Tanzstil« ein:

{FacileForms : form_anmeld_tanzkurs, 1, 0}

Damit wird das Formular direkt im Artikel angezeigt (siehe Abbildung 18.32).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.32 Das Formular im Artikel

18.1.8 Formular im Backend-Menü verankern

Neben der Möglichkeit, das fertige Formular in die Homepage einzubinden, kann man es allerdings auch über einen selbst erstellten Menüeintrag im Backend anzeigen lassen. Klicken Sie hierfür auf die Option Menüverwaltung. Die Liste, die Sie nun sehen, ist leer. Wir fügen ihr über Neu einen neuen

126

Page 127: Joomla 1 5 Handbuch

Menüpunkt hinzu. Es öffnet sich ein Fenster mit einer Auflistung aller Formulare, auf die Joomla! aktuell Zugriff hat.

Neben den zahlreichen Beispielformularen sollte hier auch unser Formular aufgelistet sein. Markieren Sie es. Über Weiter gelangen Sie zur Konfiguration des Menüpunktes (Abbildung 18.33).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.33 Die Auswahl eines Formulars

In Übergeordnete Position können Sie festlegen, wo der neue Menüeintrag erscheinen soll. Es werden Ihnen allerdings nur zwei Optionen geboten: Zuoberst bedeutet, dass der Eintrag gleichberechtigt mit allen anderen Komponenten direkt in das Menü Komponenten eingefügt wird. Wenn Sie BreezingForms Sample Menu wählen, erscheint der Menüeintrag als Untereintrag dieses Menüpunktes.

In Titel tragen Sie den Wortlaut des Menüpunktes ein. Zur Dekoration des Menüpunktes können Sie sich eines der kleinen Icons aussuchen.

Vergessen Sie nicht, bei Formularname das Formular Ihrer Wahl einzugeben.

Hier klicken, um das Bild zu vergrößern

127

Page 128: Joomla 1 5 Handbuch

Abbildung 18.34 Die Einstellungen zum Menüeintrag

Das Ergebnis können Sie gleich im Backend betrachten (Abbildung 18.35).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.35 Der neue Menüeintrag im Menü »Komponenten«

18.1.9 Formular exportieren/importieren

Um ein Formular einfach von einem Joomla!-System auf ein anderes zu übertragen, stellen die BreezingForms das Konzept der Pakete zur Verfügung, das wir oben schon ein wenig erläutert haben.

Stellen Sie sich vor, dass wir unser Anmeldeformular nun in eine andere Joomla!-Homepage übernehmen wollen. Dazu gehen wir in die Konfigurationsseite der BreezingForms und klicken auf die Schaltfläche Paket erstellen.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.36 Die Schaltfläche »Paket erstellen«

Über ID können wir unser Paket auswählen. Alles, was in dieses Paket gesteckt wurde, seien es Formulare, Skripte oder Menüeinträge, wird nun noch einmal automatisch zu einem neuen XML-Paket zusammengeschnürt und reisefertig gemacht.

Falls Sie sich bisher nicht um eine Paketzuordnung gekümmert haben, können Sie das auch manuell erledigen: Sie wählen einfach den leeren

128

Page 129: Joomla 1 5 Handbuch

Eintrag im Feld ID und sammeln aus den nun erscheinenden Listen alles Notwendige zusammen.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.37 Ein Paket erstellen

Wenn Sie am unteren Ende des Formulars auf Weiter klicken, können Sie Ihr neues XML-Paket in Empfang nehmen, speichern und weitergeben.

Die umgekehrte Aktion, nämlich das Importieren eines Formularpakets, funktioniert ähnlich einfach. Klicken Sie dazu in Konfiguration auf das Feld Paketinstallation.

Hier klicken, um das Bild zu vergrößern

Abbildung 18.38 Paketinstallation

Ihnen werden nun alle bereits installierten Pakete aufgelistet, die Sie in dieser Ansicht auch wieder löschen können (Abbildung 18.39).

Hier klicken, um das Bild zu vergrößern

Abbildung 18.39 Das Hochladen eines Pakets

129

Page 130: Joomla 1 5 Handbuch

Wie Sie sehen, finden Sie hier auch die bei der Installation der BreezingForms mitgelieferten Beispieldateien und die Sammlung von vorgefertigten Skripten und Teilen, die Sie bei der funktionalen Ausstattung Ihrer Formulare unterstützt. Über Durchsuchen greifen Sie auf die Verzeichnisstruktur Ihres Computers zu und können nun das neue Formular-Paket importieren.

19 Dokumentenverwaltung: Docman und AttachmentsOft liegen das Wissen und die Informationen, die auf einer Website veröffentlicht und/oder geteilt werden sollen, bereits in einem anderen Dateiformat vor. Die Daten in HTML umzuwandeln ist oft zu aufwendig oder wenig sinnvoll, wenn die Dokumentformate Funktionen besitzen, die im WWW schwer abbildbar sind, wie z. B. im Fall einer PowerPoint-Präsentation. Für diese Fälle gibt es die Möglichkeit, bestehende Dokumente an die jeweils geeigneten Artikel anzuhängen. Zwei Erweiterungen, die diese Funktionen für Joomla! zur Verfügung stellen, lernen Sie im Folgenden kennen: zum einen das umfangreichere Dokumentenverwaltungsprogramm Docman und die etwas einfachere Erweiterung Attachments.

19.1 Dokumentenverwaltung: Docman

Was die Zoom Media Gallery für Bilder bedeutet, stellt die Erweiterung Docman für Dokumente dar.

Neben der Verwaltung von Dokumenten ermöglicht sie es, Dateien in den verschiedensten Formaten für den Download anzubieten. Dabei bietet Docman eine Menge von Funktionen, die sich mit Joomla! allein nicht oder nur schwer realisieren lassen:

Man kann eine unbegrenzte Zahl an Kategorien und Unterkategorien erstellen.

Sie können Gruppen erzeugen und mit detaillierten Rechten ausstatten.

Es gibt einen Download-Zähler, eine ausgefeilte Suchfunktion, eine History und ein eigenes Template-System.

Sie können eigene Lizenzen erstellen und einbinden.

130

Page 131: Joomla 1 5 Handbuch

Es gibt zudem ein deutsches Sprachpaket. Die aktuelle Version von Docman ist 1.4.0rc3.

19.1.1 Installation

Laden Sie die Datei docman_1.4.0rc3_erst_entpacken.zip herunter. Entpacken Sie diese Zip-Datei. In der Datei befinden sich ein Komponentenpaket und zwei Sprachpakete. Laden Sie nun die Datei com_docman_1.4.0rc3.zip im Komponenteninstaller hoch. Nach der Installation erscheint im Menü Komponenten ein neuer Eintrag Docman. Wenn Sie auf diesen Menüpunkt klicken, führt er Sie direkt zum Control Panel von Docman. Um das deutsche Sprachpacket zu installieren, entpacken Sie das Sprachpaket mit der UTF-8-Kodierung. Anschließend kopieren Sie den Ordner language nach administrator/components/com_docman und den Ordner themes nach components/com_docman.

Hier klicken, um das Bild zu vergrößern

Abbildung 19.1 Das Control Panel der Docman-Komponente

Das Panel erinnert mit seiner Ansicht der Manager-Symbole sehr stark an das Backend von Joomla!, verfügt aber über eigene Verwaltungsebenen, von denen wir im Folgenden einige näher erläutern wollen.

In der Schnellübersicht auf der rechten Seite verbergen sich weitere interessante Optionen:

News: Darin zeigt Ihnen Docman Links zu aktuellen Docman-Informationen, z. B. zu neuen Versionen oder Bugfixes.

Unapproved: Eine Liste der hochgeladenen Dateien und deren Freigabe.

131

Page 132: Joomla 1 5 Handbuch

Latest docs: Hier haben Sie Zugriff auf die neuesten Docman-Dokumente, die von Ihnen oder den Anwendern eingestellt wurden.

Latest logs: Damit Sie hier Zugriff auf die jüngsten Download-Protokolle haben, muss die Protokollfunktion im Konfigurationsmenü aktiviert sein.

19.1.2 Konfiguration

Wenden wir uns nun den allgemeinen Einstellungen zu. Klicken Sie im Panel auf das Symbol Konfiguration.

Hier klicken, um das Bild zu vergrößern

Abbildung 19.2 Die Konfigurationsregister

Ihnen wird nun eine Reihe von Registern präsentiert, die wir in Tabelle 19.1 erläutern wollen.

Tabelle 19.1 Die Register von Docman

Register Funktion

AllgemeinInformationen über die aktuelle Version und den Pfad zum Ordner der hochgeladenen Dateien.

FrontendEinstellungen zur Anzeige im Frontend, z. B. Anzahl der Dokumente pro Seite.

ZugriffRechtevergabe für das Frontend und die Dokumente. Rechte der Gäste und Autoren.

Upload Optionen für den Upload, z. B. mögliche Dateiformate.

Sicherheit Einschränkung des Dokumentdownloads und der

132

Page 133: Joomla 1 5 Handbuch

Dokumentverlinkung auf bestimmte Server, An- bzw. Ausstellen der Logfiles.

19.1.3 Eine Kategorie erstellen

Die Erstellung einer neuen Kategorie funktioniert wie in Joomla! selbst: Sie gehen in den Manager Categories und fügen mit Hinzufügen eine neue Kategorie hinzu, die Sie auch gleich im Bearbeitungsfenster konfigurieren können (Abbildung 19.3).

Hier klicken, um das Bild zu vergrößern

Abbildung 19.3 Das Erstellen einer neuen Docman-Kategorie

Im Gegensatz zu den Joomla!-Kategorien können Sie diese hier beliebig ineinander verschachteln, indem Sie als Aktuelle Kategorie die übergeordnete Kategorie wählen.

19.1.4 Von der Datei zum Dokument

Wie Sie vielleicht schon bemerkt haben, kennt Docman sowohl Dateien als auch Dokumente. Der Unterschied ist nicht schwer zu verdeutlichen: Dateien sind Objekte, die hochgeladen werden, aber noch nicht ins System integriert wurden. Sie befinden sich sozusagen noch im Rohzustand. Zu Dokumenten werden sie erst, wenn sie über den Dokumentenmanager mit einem Dokument verbunden werden und dann auf dieser Ebene weiterverarbeitet werden können. Es besteht auch die Option, eine Datei mehreren Dokumenten zuzuweisen, so dass diese in unterschiedlichen Kategorien gespeichert werden können.

133

Page 134: Joomla 1 5 Handbuch

Um ein neues Dokument zu erstellen, muss also zunächst eine Datei hochgeladen werden. Dies wird im Dokumenten- oder im Dateimanager erledigt, wo Sie eine Liste bereits geladener Objekte sehen. Wir fügen hier einen neuen Eintrag hinzu, indem wir in der Werkzeugleiste auf das Symbol Hochladen klicken.

Hier klicken, um das Bild zu vergrößern

Abbildung 19.4 Der Upload Wizard

Der Upload Wizard führt Sie nun durch die Ladeprozedur. Er gibt Ihnen drei Möglichkeiten zur Auswahl:

Datei von lokalem Rechner hochladen: Lässt Sie das Dateiverzeichnis Ihres lokalen Rechners durchsuchen, um eine Datei auszuwählen.

Datei von einem anderen Server übertragen: Stellt die Verbindung zu einem anderen Webserver her und überträgt die gewünschte Datei.

Dateilink auf einen anderen Server: Verbindet Sie mit einer Datei auf einem anderen Rechner.

Bei jeder dieser Optionen erscheint als nächster Schritt ein anderes Dialogfenster für die Eingabe der erforderlichen Informationen. Tragen Sie die gewünschten Angaben ein, und bestätigen Sie diese mit Senden.

Wenn Sie ein gezipptes Paket übertragen möchten, benötigen Sie beim Transfer vom lokalen Computer die Option Batch Mode. Die Dateien werden dabei on the fly (im laufenden Betrieb) entpackt. Das Archiv sollte allerdings keine weiteren gezippten Verzeichnisse enthalten. Beachten Sie, dass im Batch Mode eventuell bereits bestehende Dateien mit gleichem Namen ohne Rückfrage überschrieben werden, obwohl dies in der allgemeinen Konfiguration anders festgelegt wurde.

Wenn die Datei hochgeladen oder ein Link erstellt wurde, sehen Sie die Erfolgsmeldung aus Abbildung 19.5.

134

Page 135: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 19.5 Die Erfolgsmeldung nach dem Hochladen einer Datei

Kein Upload?

Falls das Hochladen nicht funktioniert, legen Sie bitte einen neuen Ordner im Verzeichnis Joomla! an, und geben Sie den neuen Pfad im Konfigurationsregister Allgemein unter Pfad zum Speichern der Dateien an. Sollte dies ebenfalls nicht funktionieren, ändern Sie die Datei \administrator\components\com_docman\includes\file.php in Zeile 177 wie folgt ab: $file_upload = mosGetParam($_FILES, 'upload');

Der Wizard präsentiert Ihnen nun sinnvolle Optionen für das Prozedere. Um die hochgeladene Datei gleich mit einem Dokument zu verbinden, klicken Sie auf die erste Option, die Sie in den Bearbeitungsmodus eines neuen Dokuments bringt.

Tabelle 19.2 Register beim Erstellen neuer Dokumente

Register Funktion

Dokument Allgemeine Einstellungen zum neuen Dokument.

Zugriff Erteilung von Lese- und Schreibrechten für das Dokument.

Lizenz Eintrag eventueller Lizenzen, denen der User zustimmen muss.

Details Per Default sind keine Parameter vorhanden.

135

Page 136: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 19.6 Ein neues Dokument wird erstellt und mit einer Datei verbunden.

Wie Sie im oberen Bereich des Dokument-Registers erkennen können (Abbildung 19.6), gibt es über Veröffentlicht den zusätzlichen Status Freigegeben. Durch diesen erhält der Urheber des Artikels die Möglichkeit, einer Veränderung seines Dokuments zuzustimmen. Dieses Recht lässt sich in der Konfiguration genauer festlegen.

Nach dem Abspeichern sollten Sie Ihr neues Dokument in der Liste sehen. Über die Spaltenoption Aktualisierung können Sie die Verbindung zu Ihrer Datei auffrischen.

19.1.5 Rechte vergeben

Wie oben schon erwähnt wurde, verfügt Docman über eine sehr ausgeprägte Rechteverwaltung. Diese basiert auf der Benutzerverwaltung von Joomla!, zeichnet sich jedoch dadurch aus, dass Sie eigene Gruppen anlegen und mit unterschiedlichen Rechtekonstellationen versehen können.

Auf die angelegten Gruppen können Sie sich dann im allgemeinen Konfigurationsdialog oder in den Regelungen für die einzelnen Dokumente beziehen.

136

Page 137: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 19.7 Eine neue Gruppe anlegen

19.1.6 Anbindung an das Frontend

Nachdem genauestens geklärt wurde, wer welche Rechte besitzt, können die Dateien veröffentlicht werden. Dazu verlinkt man die Komponente mit einem beliebigen Menü. In Abbildung 19.8 sehen Sie, wie sich Docman im Frontend präsentiert.

Hier klicken, um das Bild zu vergrößern

Abbildung 19.8 Docman im Frontend

Fehlermeldung?

Wenn Sie im Frontend eine Fehlermeldung erhalten, sollten Sie in der Datei

components/Docman/themes/default/themeConfig.php

folgende Zeile auskommentieren, indem Sie zwei Schrägstriche davor setzen:

//var $details_homepage = "1";

137

Page 138: Joomla 1 5 Handbuch

Wie Sie an den Schaltflächen in unserem Screenshot sehen, besitzt der User sämtliche Rechte: Er kann Dokumente sehen, herunterladen, hochladen, editieren etc. Die einzelnen Aktionen werden in Tabelle 19.3 erläutert.

Tabelle 19.3 Schaltflächen im Frontend

Schaltfläche Funktion

Download Lädt das aktuelle Dokument herunter.

Anzeigen Zeigt das jeweilige Dokument an.

Details Listet die Informationen über die Datei auf.

Ändern Dient zur Bearbeitung des Dokuments.

Auschecken Sperrt das Dokument für andere.

Zurücksetzen

Setzt den Zugriffszähler zurück.

Verschieben Verschiebt das Dokument in eine andere Kategorie.

Löschen Löscht das Dokument.

Updaten Aktualisiert das Dokument.

Zurückziehen

Veröffentlicht/deaktiviert das Dokument.

BestätigenBestätigt die Änderungen anderer User. Es taucht nur auf, wenn ein Dokument geändert wurde und der aktuelle Nutzer das Bestätigungsrecht hat.

19.1.7 Eigene Templates

Mit dem Themes-Manager verfügt Docman über ein eigenes Template-System. Wenn Sie auf den Manager klicken, sehen Sie das Default-Theme von Docman. Über Hinzufügen können Sie weitere Themes einbinden – leider vorerst nur zusammen, denn es gibt außer »Default« noch keine verfügbaren Themes. Aber Sie können über CSS bearbeiten das bestehende Template

138

Page 139: Joomla 1 5 Handbuch

ändern oder im Bearbeitungsmodus die zahlreichen Parameter an- bzw. ausschalten.

Fehlermeldung?

Erscheint hier eine Fehlermeldung, so liegt das ebenfalls an der Datei components/Docman/themes/default/themeConfig.php. Die nötige Änderung ist weiter oben beschrieben.

19.1.8 Statistik

Der Statistik-Manager auf dem Control Panel führt Sie zu einer Seite, die Ihnen stets aktuell die 50 beliebtesten Dokumente in einer Rangfolge präsentiert. Die Anzahl der Downloads wird gleich mit angezeigt (Abbildung 19.9).

Hier klicken, um das Bild zu vergrößern

Abbildung 19.9 Die Top 50 in Sachen Download

19.1.9 Zubehör

Obwohl Docman bereits ein sehr mächtiges Tool ist, gab es bei den Usern doch ein paar Extra-Wünsche, die in zusätzlichen Komponenten, Modulen oder Plug-ins umgesetzt wurden.

Tabelle 19.4 Erweiterungen für Docman

Komponenten/Module/Plug-ins

Funktion

AlfaDocman 0.6Generiert einen alphabetischen Index aus den Daten der Docman-Komponente.

Docman Category 1.4.0 RC2

Zeigt die neuesten Dokumente einer zuvor definierten Kategorie der Docman-Komponente.

139

Page 140: Joomla 1 5 Handbuch

DOCLink 1.4 RC1

Editor-Plug-in, das es ermöglicht, einen direkten Link zu einem File aus der Docman-Komponente zu setzen. Unterstützt werden die Editoren HTMLArea3 XTD, TinyMCE und WysiwygPro 2.2.4.

Docman Lister 1.4.0 RC2Listet wahlweise die neuesten oder die am besten bewerteten Downloads von Docman auf.

Nehmen wir das letzte Modul, Docman Lister, als Beispiel. Wenn Sie es installiert haben, können Sie im Bearbeitungsmodus des Moduls seine Parameter festlegen (Abbildung 19.10).

Hier klicken, um das Bild zu vergrößern

Abbildung 19.10 Die Parameter des Docman Listers

Besonders interessant ist der Parameter Sortieren nach. Hier können Sie auswählen, nach welchem Aspekt die Dokumente geordnet werden sollen.

Verlinken Sie das Modul wie gewohnt in einem Menü, und lassen Sie es sich im Frontend anzeigen (Abbildung 19.11).

Hier klicken, um das Bild zu vergrößern

Abbildung 19.11 Das Modul Docman Lister im Frontend

140

Page 141: Joomla 1 5 Handbuch

20 Kalender: JEvent und iWebCalEs gibt viele Kalender, die Sie in Joomla! einbinden können. Der Umfang der Funktionalitäten ist bei jedem Programm verschieden. Wir wollen Ihnen hier die Eventkalender JEvent und iWebCal vorstellen. Ersterer generiert eine schöne Oberfläche und verfügt über eine Reihe interessanter Optionen. Letzterer hat den Vorteil, dass er zusätzlich Kalenderinformationen aus z. B. Ihrem lokalen Kalender übernehmen kann, solange dieser auf dem iCalendar-Standard beruht.

20.1 JEvent

Der Kalender JEvent übernimmt die komfortable Verwaltung und Darstellung von Terminen und Veranstaltungen. Im Backend können entsprechende Kategorien, wie z. B. Geburtstage, angelegt werden. Die Entwickler werben u. a. mit folgenden Features:

vollständige Verwaltung diverser Einstellungen im Backend

beliebig viele Kategorien

beliebig viele Termine

farbliche Unterscheidung (zuordenbar und frei wählbar) der Termine

Tages-, Wochen-, Monats- und Jahrestermine

wiederkehrende Termine

Die aktuelle Version dieser Erweiterung ist 1.4.3 RC2.

20.1.1 Installation

Laden Sie die Datei com_events_1.4.3rc2.zip im Installer der Komponenten hoch. Um Sprachdateien brauchen Sie sich nicht zu kümmern: Die Erweiterung wird automatisch in der von Ihnen bevorzugten Sprache installiert. Im Menü Komponenten erscheint nun der Eintrag Kalender mit vier

141

Page 142: Joomla 1 5 Handbuch

Managern: Terminverwaltung, Kategorien, Konfiguration und Archiv (Abbildung 20.1).

Hier klicken, um das Bild zu vergrößern

Abbildung 20.1 Ein Blick in das Backend des Kalenders »JEvents«

Nach der Installation werden Sie aufgefordert, den Reiter Konfiguration aufzurufen und dort die E–Mail-Adresse zu ändern. Erst dann können Sie im Backend weiterarbeiten.

20.1.2 Einrichten des Kalenders

Bevor wir nun einen Termin in unserem Kalender anlegen können, müssen wir zuerst eine neue Kategorie erstellen, da jeder Termin einer Kategorie zugeordnet wird.

Eine Kategorie erstellen

Das Erstellen einer neuen Kategorie funktioniert wie in Joomla! selbst: Sie gehen in das Register Kategorien und fügen mit Neu eine neue Kategorie hinzu, die Sie auch gleich im Bearbeitungsfenster konfigurieren können (Abbildung 20.2).

142

Page 143: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 20.2 Eine neue Kategorie erstellen

Die neue Kategorie wird danach im Kategorien-Manager angezeigt und kann dort verwaltet werden.

Einen neuen Termin anlegen

Nachdem Sie eine Kategorie angelegt haben, gehen Sie zurück zum Reiter Terminverwaltung. Fügen Sie mit Neu einen Termin hinzu. Es öffnet sich das Formular Neuer Termin. Dieses Formular ist in sechs Reiter eingeteilt.

Im Register Allgemein (Abbildung 20.3) müssen Sie einen Namen und eine Kategorie für den Termin vergeben. In diesem Reiter wird auch hinterlegt, wer Zugriff auf diesen Termin haben darf (angemeldet oder nicht angemeldet). Hier besteht auch noch die Möglichkeit, Zusatzinformationen zu hinterlegen, wie z. B. den Ort des Termins, Ansprechpartner und eventuell auch noch eine kurze Erläuterung.

Hier klicken, um das Bild zu vergrößern

Abbildung 20.3 Einen neuen Termin erstellen (Reiter »Allgemein«)

143

Page 144: Joomla 1 5 Handbuch

Gehen Sie nun zum Reiter Kalender (Abbildung 20.4). Hier können Sie festlegen, wann Ihr Termin stattfinden soll. Es besteht auch die Möglichkeit, eine Terminserie einzurichten. Um diesen Termin bzw. Terminserien hervorzuheben, können Sie diese(n) farblich kennzeichnen.

Hier klicken, um das Bild zu vergrößern

Abbildung 20.4 Einen neuen Termin erstellen (Reiter »Kalender«)

Im Reiter Bilder (Abbildung 20.5) gibt es die Option, Ihrem Termin ein oder mehrere Bilder zuweisen, die später mit angezeigt werden. Um die entsprechenden Bilder zuordnen zu können, müssen Sie diese im Medienmanager (Abschnitt 5.5, »Eigene Bilder einbinden«) zuerst hochladen.

Hier klicken, um das Bild zu vergrößern

Abbildung 20.5 Einen neuen Termin erstellen (Reiter »Bilder«)

Im Reiter Extra wird Ihnen angezeigt, welchen Status der Termin gerade hat: veröffentlicht, unveröffentlicht oder Entwurf). Des Weiteren sehen Sie hier, wie viele Personen bereits auf den Termin zugegriffen haben, wann dieser erstellt wurde und ob ihn schon jemand bearbeitet hat.

144

Page 145: Joomla 1 5 Handbuch

In den Reitern Hilfe und Über finden Sie eine kurze Anleitung zur Terminerstellung und allgemeine Informationen zum Kalender.

Termine archivieren

Termine, die Ihren Usern nicht mehr angezeigt werden sollen, weil sie in der Vergangenheit liegen, können Sie archivieren. Die Termine werden dabei nicht gelöscht und können jederzeit wieder sichtbar gemacht werden. Um nun einen Termin zu archivieren, markieren Sie den infrage kommenden Termin und klicken auf das Symbol Archivieren. Wenn Sie in das Register Archiv wechseln, werden Sie bemerken, dass der Termin hier aufgelistet wird. Hier haben Sie jetzt auch die Möglichkeit, diesen wieder zu Ihren aktiven Terminen zurückzuverschieben. Klicken Sie dazu auf das Symbol Aus Archiv entfernen. Mit dem Symbol Löschen können Sie den Termin endgültig löschen.

20.1.3 Der Kalender im Frontend

Nachdem Sie den Kalender konfiguriert und Termine erstellt haben, können Sie ihn veröffentlichen.

Anbindung an das Frontend

Dazu verlinken Sie die Komponente mit einem beliebigen Menü. Um die richtigen Kalenderinformationen anzuzeigen, wählen Sie rechts unter Basisparameter die entsprechenden Kategorien aus, deren Termine im Frontend sichtbar sein sollen. In unserem Fall wäre das die Kategorie »Tanzkurse«.

Hier klicken, um das Bild zu vergrößern

Abbildung 20.6 Die Verknüpfung des Hauptmenüs mit dem Kalender

Wenn Sie sich eingeloggt und den richtigen Menüpunkt angewählt haben, sollte der Kalender samt Ihren Terminen verfügbar sein.

145

Page 146: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 20.7 Der Kalender im Frontend

Mit den Schaltflächen oberhalb der jeweiligen Kalenderansicht können Sie beliebig in Ihrem Kalender navigieren (Tabelle 20.1).

Tabelle 20.1 Aktionen im Kalender

Symbol Funktion

Geht ein Jahr zurück.

Geht einen Monat zurück.

Jahresansicht, ausgehend vom aktuellen Jahr.

Monatsübersicht, ausgehend vom aktuellen Monat.

Wochenübersicht, ausgehend von der aktuellen Woche.

Zeigt die Termine des aktuellen Datums.

Öffnet die Suche nach Terminen.

146

Page 147: Joomla 1 5 Handbuch

Wechselt zu einem ausgewählten Monat.

Geht zum nächsten Monat.

Geht zum nächsten Jahr.

Druckt den Kalender.

Unterhalb des Kalenders befinden sich zwei Links. Mit dem ersten können Sie auch im Frontend Termine hinzufügen. Klicken Sie hierzu auf Neuen Termin eintragen. Wenn Sie auf Meine Termine gehen, gelangen Sie zu Ihren Terminen und können diese nach Wunsch verändern oder löschen.

20.1.4 Die Verwaltung des Kalenders

Die Konfigurationsseite von JEvents ist in sechs Reiter (siehe Tabelle 20.2.) eingeteilt. Die entscheidenden Einstellungsmöglichkeiten befinden sich definitiv im ersten Register, Komponente.

Neben dem Register Komponente gibt es noch eine Reihe weiterer Reiter, die sich hauptsächlich weiteren Modulen, dem Layout oder Metainformationen über den Kalender selbst widmen.

Tabelle 20.2 Die Reiter der Konfigurationsseite

Reiter Funktion

KomponenteHier finden Sie die grundlegenden Kalenderoptionen, wie z. B. Zugriffsberechtigungen, das Datumsformat, Auswahlmöglichkeiten für die Darstellung des Kalenders usw.

Mini KalenderDiese Einstellungen betreffen das zusätzliche Modul MiniKalender (mod_events_cal, s. u.)

Nächste Termine

Diese Einstellungen betreffen das zusätzliche Modul Nächste Termine (mod_events_latest, s. u.)

147

Page 148: Joomla 1 5 Handbuch

CSSHier können Sie eigenen CSS-Code für das Aussehen des Kalenders hinterlegen. Mit Standardkonfiguration laden stellen Sie den ursprünglichen Zustand wieder her.

TooltipHier finden Sie Einstellungen für Tooltip-Fenster in der Monatsübersicht.

ÜberHier finden Sie Informationen zur Komponente und zu ihren Erweiterungen.

20.1.5 Die Erweiterungen

Zu Ihrem Kalender könnten Sie nun noch eine Reihe weiterer Module und Plug-ins hinzufügen. Eine Liste der momentan verfügbaren Erweiterungen finden Sie in Tabelle 20.3:

Tabelle 20.3 Eine Auswahl an JEvents-Erweiterungen

Module/Plug-ins Funktion

mod_events_cal_1.4.2-1.zip

Dieses Modul stellt die Termine der JEvents-Komponente in einem Kalenderblatt dar (s. u.). Farbliche Anpassungen können in der CSS-Datei vorgenommen werden.

mod_events_latest_1.4.2-1.zip

Dieses Modul zeigt die kommenden Termine der JEvents-Komponente.

mod_events_legend_1.4.2-1.zip

Dieses Modul zeigt eine Übersicht der angelegten Kategorien aus der JEvents-Komponente.

mod_countdown_1_4.zip

Erweitertes Countdown-Modul für JEvents-Features:

Filter auf bestimmte Kategorien möglich vereinfachtere Konfiguration

bot_events_search_1.4.2-1.zip

Dieses Plug-in integriert den Inhalt der JEvents-Komponente in die Joomla!-eigene Suchroutine.

148

Page 149: Joomla 1 5 Handbuch

Anhand des JEvents-Calendar-Moduls wollen wir Ihnen hier demonstrieren, wie schnell Sie den Eventkalender mit nützlichen kleinen Zusatzfunktionen ausstatten können. Laden Sie die Datei mod_events_cal_1.4.2-1.zip im Modulinstaller hoch, veröffentlichen Sie das Modul, und stellen Sie in der Editieransicht ein, auf welcher Seite und in welcher Position das Kalenderblatt zu sehen sein soll.

Die Übersicht erscheint dann im Frontend an der von Ihnen gewählten Stelle (Abbildung 20.8).

Hier klicken, um das Bild zu vergrößern

Abbildung 20.8 Das JEvents-Calendar-Modul

Mit einem Klick auf ein Datum gelangen Sie in den Gesamtkalender.

21 Bildergalerien: Zoom Media Gallery und JoomGalleryDas Verwalten von Bildern ist in Joomla!s Media Manager zwar möglich, aber bei Weitem nicht so komfortabel und flexibel, wie man sich das manchmal wünschen würde. Auch die in Abschnitt 9.4.1, »Die Phoca Gallery«, besprochene Fotogalerie erfüllt nicht alle Bedürfnisse. Daher möchten wir Ihnen im Folgenden zwei Alternativen vorstellen, die auch hohe Ansprüche an eine Bilderverwaltung erfüllen können.

21.1 Zoom Media Gallery

Für etwas anspruchsvollere Präsentationen und Download-Optionen gibt es die Zoom Media Gallery. Mit dieser können Sie Bilder und andere Multimediadateien ganz einfach und schnell verwalten, präsentieren und zur

149

Page 150: Joomla 1 5 Handbuch

Weitergabe bereit machen. So gibt es z. B. die Möglichkeit, ein Bild als E-Card zu verschicken.

Ein Highlight ist die Lightbox: Ein Nutzer betrachtet die Bilder in der Diashow und kann die zum Download bestimmten Medien in der Lightbox zwischenlagern, um sie am Ende mit einem Befehl abzurufen.

Außerdem können die User anhand einer Bewertungsfunktion über Qualität und Originalität des Mediums entscheiden.

Die aktuelle Version ist 2.5.1.

21.1.1 Installation

Installieren Sie das Paket zOOm_for_Joomla_1.5-b.zip mit dem Installationswerkzeug.

Kompatibilität

Achten Sie darauf, dass das Plug-in »Vorgängerversion-System – Legacy« aktiviert ist.

Das Menü Komponenten und die Schnellübersicht weisen nun einen einzelnen weiteren Unterpunkt auf, der Sie direkt zum Kontrollzentrum bzw. zur Hauptseite der Komponente führt (Abbildung 21.1).

Hier klicken, um das Bild zu vergrößern

Abbildung 21.1 Die Verwaltung der Bildgalerie auf der Hauptseite

Sprache

Sollten Sie bei der Ansicht Schwierigkeiten mit seltsamen Sonderzeichen bekommen, kopieren Sie die Datei german.php, die Sie auf der DVD im Verzeichnis der Erweiterung finden, nach components/com_zoom/lib/language. Die bereits vorhandene Datei wird

150

Page 151: Joomla 1 5 Handbuch

dabei überschrieben. Der Grund für die Sonderzeichen ist eine fehlerhafte Kodierung der Sprachdatei.

Von hier aus gelangen Sie zu allen wichtigen Verwaltungsebenen. Wenn Sie mit der Maus über ein Symbol fahren, erscheint dessen Bedeutung in einem Tooltip. Die letzte Option ist schnell erklärt:

Tabellen optimieren: Sie müssen nichts weiter machen, als mit einem Klick die Schaltfläche zu betätigen. Der Manager säubert daraufhin die Datenbank, auf der die Komponente basiert. Wenn die Funktion beendet ist, erhalten Sie über dem Control Panel eine blaue Erfolgsmeldung.

Hier klicken, um das Bild zu vergrößern

Abbildung 21.2 Erfolgsmeldung: Tabellen optimieren

Mit den anderen Optionen wollen wir uns im Folgenden ein wenig genauer beschäftigen.

21.1.2 Einstellungen

Bevor wir eine eigene Anwendung erstellen, betrachten wir zunächst die Konfiguration des Programms. Dazu wählen wir das Symbol Einstellungen.

Hier klicken, um das Bild zu vergrößern

151

Page 152: Joomla 1 5 Handbuch

Abbildung 21.3 Die Konfigurationsseite der Zoom Media Gallery

Dort finden Sie eine Reihe von Registern, die sich mit unterschiedlichen Themen beschäftigen (Abbildung 21.3 und Tabelle 21.1).

Tabelle 21.1 Die Register der Konfigurationsseite

Register Funktionen

System Allgemeine Einstellungen der Komponente.

MedienDie Größe und die Verarbeitung der darzustellenden Thumbnails werden festgelegt.

EigenschaftenEinstellungen für die Ansicht der Gallery-Komponente im Frontend.

LayoutLegt die Funktionalitäten und das CSS der Komponente im Frontend fest.

Wasserzeichen

Hier können Sie einstellen, dass alle Ihre Bilder mit einem Wasserzeichen versehen werden sollen.

Safe Mode

Wenn Sie hier Ihre FTP-Zugangsdaten eintragen, werden zum Hochladen der Bilder die eingebauten FTP-Funktionen genutzt. »Safe Mode« bezieht sich dabei auf eine Einstellung von PHP, die Skripten den Zugriff auf Dateien erschwert.

RechteKlärt anhand der möglichen Aktionen den Rechtestatus der User.

Reset Alle Daten unwiderruflich löschen und neu beginnen.

21.1.3 Das Erstellen eines Albums

Die Multimediadateien werden diesmal nicht in Kategorien verwaltet, sondern in sogenannten Alben. Um ein neues Album zu erstellen, klicken Sie auf das erste Symbol des Media Gallery Admin-Systems, den Album-Manager (Abbildung 21.2). Hier können Sie die notwendigen Einstellungen vornehmen und Erläuterungen zu dem jeweiligen Album oder ein Bild als eine Art Logo einbinden. [Damit sich der User eine Übersicht über die Bilder in einer Gallery

152

Page 153: Joomla 1 5 Handbuch

verschaffen kann und die Ladezeit optimiert wird, werden die Bilder nicht in voller Größe angezeigt, sondern als sogenannte Thumbnails. Das sind kleine Vorschaubilder, die von der Zoom Media Gallery mithilfe eines Konvertierungsprogramms automatisch erzeugt werden. ]

Klicken Sie zum Anlegen eines Albums auf das Symbol Neues Album. Es erscheint ein Popup-Fenster mit der Nachricht »Neues Album erstellt.«. Jetzt sehen Sie die Konfigurationsansicht. Geben Sie im Feld Titel eine aussagekräftige Beschriftung für Ihr Fotoalbum an, z. B. »Tanzturnier«. Unter dem Namen, den Sie bei Verzeichnis eingeben, wird ein neuer Ordner in images/zoom angelegt, in dem alle zum Album gehörenden Dateien abgelegt werden. Im Reiter Mitglieder können Sie die Zugriffsrechte auf das Album festlegen. Um ein Album zu veröffentlichen, müssen Sie im Reiter Aktionen den Haken nach »Dieses Album freigeben« setzen. Speichern Sie die Einstellungen, indem Sie auf Speichern klicken. Es folgt eine Meldung »Albumdateien erfolgreich bearbeitet!«.

Hier klicken, um das Bild zu vergrößern

Abbildung 21.4 Die Konfiguration des Albums

Nach dem Speichern sehen Sie das neue Album in der Liste (Abbildung 21.4).

21.1.4 Das Hochladen von Bildern

Nachdem wir das Album erfolgreich erzeugt haben, fehlt uns noch die Hauptsache: die Bilder, die in dieses Album gelegt werden sollen.

Zum Hochladen gehen Sie auf den Medien-Manager von Zoom. Hier müssen Sie zunächst ein Album aussuchen. Jetzt sehen Sie eine Liste mit den bereits hochgeladenen Bildern. Um neue Fotos einzupflegen, klicken Sie auf Datei(en) hochladen. Sie haben nun die Wahl zwischen vier Möglichkeiten, ein Bild zu laden (Abbildung 21.5).

153

Page 154: Joomla 1 5 Handbuch

Einzelne Datei: Suchen Sie sich eine Datei im Verzeichnis Ihres Rechners aus, und geben Sie hier einen Namen, das übergeordnete Album, Schlüsselwörter und Erläuterungen an.

Mehrere Dateien: Das Hochladen funktioniert im Prinzip wie bei der einzelnen Datei, nur dass Ihnen jetzt entsprechend viele Formulare für die Bilderwahl vorgelegt werden, anhand derer Sie mehrere Dateien am Ende mit einem Klick hochladen können.

Drag’n Drop: Hier können Sie die Vorzüge einer grafischen Benutzeroberfläche genießen: Suchen Sie sich die gewünschten Dateien aus, und laden Sie sie – nachdem Sie in Details noch einen Blick auf ihre Eigenschaften werfen konnten – über eine Schaltfläche hoch. Diese Funktion ist ein Java-Applet. Sie benötigen also ein Java-Plug-in im Browser oder die Java-Laufzeitumgebung auf Ihrem Rechner.

Medien suchen: In diesem Register müssen Sie den genauen Pfad zu der Mediendatei auf dem Server wissen. Der gesuchte Ort kann auch eine URL oder ein Verzeichnis auf einem Server sein. Wenn Sie viel mit FTP arbeiten, haben Sie so beispielsweise die Möglichkeit, Ihre Bilder mit einem FTP-Client auf den Server zu laden und diese dann von dort aus in die Zoom Media Gallery einzubinden.

Hier klicken, um das Bild zu vergrößern

Abbildung 21.5 Bilder hochladen

Nach einem erfolgreichen Ladevorgang sollten Sie eine entsprechende Meldung erhalten. Mit Zurück gelangen Sie wieder zum Kontrollzentrum.

Datei nicht hochgeladen?

Falls keine Datei hochgeladen wurde, überprüfen Sie, ob in den Einstellungen unter Media der richtige Pfad angegeben wurde. Dieser sollte mit einem »/« enden.

154

Page 155: Joomla 1 5 Handbuch

21.1.5 Medien verwalten

Egal, auf welche Weise Sie die Bilder hochgeladen haben: Diese sollten nun im Medien-Manager sichtbar sein. Hier haben Sie die Möglichkeit, die Dateien nach Belieben zu verwalten.

Über die Werkzeugleiste können Sie die markierten Bilder löschen, bearbeiten oder in ein anderes Album verschieben. Bearbeiten bedeutet in diesem Fall, dass der Name, die Schlüsselwörter, die Beschreibung etc. geändert werden können. Es ist außerdem möglich, das Bild als Albumlogo festzulegen.

Hier klicken, um das Bild zu vergrößern

Abbildung 21.6 Einige Bilddateien, aufgelistet im Medien-Manager

21.1.6 Die Galerie im Frontend

Die Zoom Media Gallery können Sie nun wie gewohnt in ein Menü des Frontends einbinden (vgl. Abschnitt 6.3.3, »Einen Menüpunkt erstellen«). Wählen Sie als Menüpunkt zOOm Media Gallery.

Wenn Sie dann dem Link im Frontend folgen, sollte eine Auflistung Ihrer Alben zu sehen sein. Bei dem Klick auf ein Album wird es geöffnet, und Ihnen wird der Inhalt als Thumbnail-Ansicht präsentiert.

155

Page 156: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 21.7 Der Inhalt des Albums als Thumbnail

Wenn Sie ein Thumbnail anklicken, öffnet es sich in der Vollansicht. Sie befinden sich nun im Modus »Diashow«, d. h., Sie können über die blaue Navigationsleiste die gewünschten Bilder im Album ansteuern (Abbildung 21.8).

Unter dem Bild befindet sich zum einen eine Übersicht über die Bildeigenschaften, zum anderen haben die Nutzer hier die Möglichkeit, das Bild zu kommentieren und zu bewerten.

Hier klicken, um das Bild zu vergrößern

Abbildung 21.8 Ein Bild in der Vollansicht

Ein nettes Feature ist die Zoomfunktion. Gehen Sie mit der Maus über das Bild, so wird ein vergrößerter Ausschnitt in einem Kasten angezeigt. Mit den Cursor-Tasten können Sie den Vergrößerungsfaktor verändern.

Sie sehen auch, dass unterhalb des Bildes sehr viele Informationen angezeigt werden. Diese können Sie im Backend im Media Gallery-Admin System bei

156

Page 157: Joomla 1 5 Handbuch

den Einstellungen unter Layout abschalten, beispielsweise im Feld »Zeige Eigenschaften unter den Medien«.

Rechts über dem Bild befinden sich zwei weitere interessante Schaltflächen: Über die linke Schaltfläche können Sie das Bild als E-Card mit einer Nachricht an die E–Mail-Adresse von Bekannten abschicken. Die E–Mail enthält dann einen Link auf das aktuelle Bild.

Fehlermeldung?

Sollten Sie eine Fehlermeldung erhalten (»Mail-Funktion konnte nicht initialisiert werden!«), dann ist Ihr Mail-Versand wahrscheinlich noch nicht richtig konfiguriert. Um diese Funktion nutzen zu können, müssen Sie, wie in Abschnitt 10.3, »Mail-Versand«, beschrieben wird, noch Ihre E–Mail-Daten eintragen.

Der rechte Button legt das Bild oder das gesamte Album in die sogenannte Lightbox ab. Die Lightbox ist eine Art nichtkommerzieller Warenkorb, dessen Inhalt Sie mit der Schaltfläche Lightbox anschauen betrachten und löschen können (Abbildung 21.9).

Hier klicken, um das Bild zu vergrößern

Abbildung 21.9 Die Lightbox

Wenn Sie Ihren Rundgang durch die Bildergalerie beendet haben, können Sie sich die ausgewählten Bilder in der Lightbox mit einem Klick komprimieren lassen und diese Datei herunterladen.

Achtung Zubehör!

Für die neue Version der Zoom Media Gallery gibt es derzeit leider noch keine kompatiblen Module und Plug-ins. Die verfügbaren Erweiterungen (z. B. auf joomlaos.de) arbeiten nur mit älteren Versionen dieser Galerie

157

Page 158: Joomla 1 5 Handbuch

zusammen.

22 Joomla! als Community-TreffWährend eine klassische Homepage die Darstellung einer Person oder Gruppe nach außen zur Aufgabe hat, entdecken immer mehr Betreiber eine weitere Seite: die einer Community-Plattform. Eine Gruppe von Usern sammelt sich um eine Homepage, wird dort aktiv und bereichert die Site um ihre Beiträge. Es geht jetzt weniger um eine monolithische Außendarstellung, sondern vielmehr um einen dynamischen Informationsfluss innerhalb der Gemeinschaft.

Um diesen Effekt zu erreichen, müssen Sie Ihren Besuchern die Möglichkeit geben, sich zu beteiligen. Je nach Aufgabe und Zielgruppe Ihrer Seite gibt es dazu verschiedene Werkzeuge und Methoden, deren Auswahl an die Kommunikationsbedürfnisse der Besucher angepasst werden muss.

22.1 Online-Kommunikation

Man unterscheidet die verschiedenen Arten der Kommunikation im Netz gemeinhin anhand zweier Dimensionen. Die erste bezieht sich auf die Anzahl der Sender und der Empfänger:

One-To-One Die Kommunikation findet zwischen zwei Einzelpartnern statt, und die Öffentlichkeit ist ausgeschlossen. Ein klassisches Beispiel ist E–Mail.

One-To-Many Eine/r publiziert die Inhalte, aber die gesamte Öffentlichkeit ist eingeladen, sie zu rezipieren. Eine statische Homepage arbeitet nach diesem Prinzip.

Many-To-Many Viele, im besten Fall die gesamte Öffentlichkeit, haben nicht nur die Möglichkeit zu lesen, sondern auch zu schreiben. Wikis sind hierfür ein gutes Exempel.

Natürlich sind die Grenzen fließend, insbesondere kann »one« auch eine Gruppe von Autoren bezeichnen. Entscheidend ist, dass die »vielen« einen möglichst freien Zugang zu dem Medium haben, wohingegen der Zugang für die anderen meistens beschränkt ist. Joomla! beispielsweise ist zunächst

158

Page 159: Joomla 1 5 Handbuch

eher ein One-To-Many-System. Alle Leute dürfen lesen, aber nur wenige haben das Recht, auch zu publizieren.

Die zweite Dimension hat das Zeitverhältnis der Kommunikation im Blick.

Synchron Die Kommunikationspartner müssen zur gleichen Zeit online sein, wie das beispielsweise im Chat der Fall ist.

Asynchron Die Kommunikation kann zeitversetzt stattfinden. Hier ist das Diskussionsforum ein klassischer Fall.

Die meisten textbasierten Kommunikationsformen im Netz sind asynchron, und bei allen ist maßgeblich, dass sich diejenigen, die sich unterhalten, nicht in einem gemeinsamen Raum oder am gleichen Ort befinden müssen. Dadurch können sich in Online-Communities Personen treffen, die sonst nur schwerlich miteinander kommunizieren könnten.

Bei der bisher vorherrschenden Form der Unterhaltung, die nur aus geschriebenem Text besteht, wird der gesamte nonverbale Bereich (also Stimmlage, Gesten, Mimik etc.) ausgeklammert. Dies hat zur Folge, dass die Kommunikationspartner nur wenige Informationen über ihr Gegenüber und dessen Befindlichkeit erhalten, sofern diese nicht explizit formuliert werden. Konkret gesagt wissen Sie nicht, wie es der Person am anderen Ende geht, wie sie sich fühlt oder welche Einstellung sie zur Unterhaltung hat, die Sie gerade führen. Zwei Aspekte, die sich daraus ergeben, seien im Folgenden erwähnt.

Wenn Sie Ihr Gegenüber nicht gut kennen, ist es sehr schwierig festzustellen, ob eine Aussage ernst gemeint oder ironisch zu nehmen ist. Die daraus resultierenden Missverständnisse führen immer wieder zu einer Eskalation der Kommunikation und enden oft genug in wüsten Beschimpfungen. Dem versucht die Netiquette (z. B. www.netservice.ch/german/netiquette_ger.html#Post) mit einer Art Verhaltenskodex entgegenzuwirken. Auch der Einsatz sogenannter Emoticons (Smileys wie :o)) kann ein Mittel sein, um Zweideutigkeiten auszuräumen und Ironie zu kennzeichnen.

Eine zweite Auswirkung der Informationsarmut ist die relativ einfache Möglichkeit, unerkannt zu bleiben und unter einem Pseudonym zu schreiben. Die Frage, ob anonyme Beiträge in einer Community erlaubt sein sollten, ist nicht pauschal zu beantworten. Natürlich birgt Anonymität die Gefahr, dass destruktive Geister sich an Ihrer Seite zu schaffen machen, sie verwüsten oder unschöne Sachen verbreiten. Andererseits erleichtert der anonyme Zugang oftmals das Äußern von wertvoller Kritik oder Gedanken, die Teilnehmern sonst peinlich wären oder potenziell schaden könnten.

159

Page 160: Joomla 1 5 Handbuch

23 Weblogs: IDoBlog und MMS BlogEin Blog ist eine Anwendung im Internet, die eine Liste mit Artikeln ausgibt, bei denen der aktuellste Eintrag immer als Erstes angezeigt wird. Die einzelnen Artikel können kommentiert und nachträglich überarbeitet werden.

Im Unterschied zu einem Content-Management-System haben Beiträge im Blog im Allgemeinen eine sehr persönliche Note. Sie stellen die Äußerung und oft subjektive Meinung einer bestimmten Person dar. Darüber hinaus spielt die zeitliche Abfolge der Einträge eine überragende Rolle. Ältere Beiträge können zwar immer über die Suche und häufig auch über ein Kategoriesystem gefunden werden. Die Titelseite, die den zentralen Punkt eines Blogs darstellt, ist jedoch streng an der zeitlichen Reihenfolge der Artikel orientiert.

Schreiben können in einem Blog meistens nur berechtigte Personen, wohingegen die Kommentierfunktion allen Besuchern offensteht. Damit wird der Originalbeitrag als Äußerung einer Einzelperson geschützt. Es hat sich mittlerweile allerdings etabliert, die Beiträge für den Urheber auch nachträglich veränderbar zu halten. Dabei ist es Konvention, nicht einfach den Text zu ändern, sondern die Änderungen mit Durch- und Unterstreichungen zu kennzeichnen.

Für Joomla! stehen Ihnen derzeit leider keine der gängigen Weblog-Programme, wie z. B. Wordpress oder Textpattern als Erweiterung zur Verfügung, die den Vorteil hätten, dass die Handhabung schon erprobt und allgemein bekannt wäre. Stattdessen wollen wir Ihnen hier zwei andere Blog-Erweiterungen vorstellen: den IDoBlog und den MMS Blog.

23.1 IDoBlog

Normalerweise besteht ein Blog-Programm aus einem einzelnen Blog, also einer Hauptseite, auf der ein Autor oder eine kleine Autorengruppe seine bzw. ihre Beiträge in chronologischer Reihenfolge veröffentlicht. Mit dem IDoBlog können Sie sowohl die eben genannte klassische Form eines Blogs realisieren als auch einen eigenen Blog für jeden einzelnen Ihrer registrierten User anlegen und verwalten. Dies bezeichnet man als einen Multi-User-Blog. Im Prinzip wurden hier die Funktionen eines Social Networks (siehe Kapitel 22, »Joomla! als Community-Treff«), z. B. die Anzeige eines Profils, mit denen von Blogs verbunden.

Der IDoBlog hat momentan die Version 1.1 (build 30) mit dem Zusatz stable, worüber sich allerdings streiten lässt.

160

Page 161: Joomla 1 5 Handbuch

23.1.1 Installation und Einrichtung

Wenn Sie die Blog-Komponente von der Homepage www.joomlaos.de herunterladen, finden Sie eine komprimierte Datei vor, die aus der eigentlichen Komponente und zwei Sprachdateien besteht und zunächst entpackt werden muss. Auf der DVD können Sie im Verzeichnis Erweiterungen/IDoBlog direkt auf die drei Dateien zugreifen. Installieren Sie im Joomla!-Backend unter dem Menüpunkt Erweiterungen • Installieren / Deinstallieren der Reihe nach die Komponente und die beiden Sprachdateien, die Sie in Tabelle 23.1 aufgelistet finden.

Tabelle 23.1 Die Dateien des IDoBlogs

Datei Funktion

Idoblog30.zip Komponente I DO Blog 2.3.8

de-DE_com_IdoBlog_site.zip Deutsche Sprachdatei für das Frontend

de-DE_com_IdoBlog_admin.zip Deutsche Sprachdatei für das Backend

Im Menü Komponenten finden Sie jetzt den Menüeintrag IDoBlog, über den Sie direkt zum Kontrollpanel des Blogs gelangen.

Hier klicken, um das Bild zu vergrößern

Abbildung 23.1 Das Kontrollpanel des IDoBlogs

Dieses wirkt etwas verschoben, was daran liegt, dass die Schaltfläche in der linken oberen Ecke keine Aufschrift trägt. Sie ist dennoch funktional und führt Sie zu der Website der IDoBlog-Entwickler, auf der Sie sich gegebenenfalls

161

Page 162: Joomla 1 5 Handbuch

Hilfe holen können. Die restlichen Schaltflächen dienen zur Verwaltung Ihres Blogs. Mit ihren Optionen werden wir uns im Einzelnen weiter unten beschäftigen.

Damit Ihr Blog im Frontend sichtbar wird, ist es nun – wie bei allen Komponenten – notwendig, dass wir ihn in einem der Menüs verankern. Gehen Sie daher über Menüs • Hauptmenü auf Neu, und klicken Sie dann unter Interner Link auf IDoBlog.

Hier klicken, um das Bild zu vergrößern

Abbildung 23.2 Die Menüoptionen für den IDoBlog

Wie Sie sehen, gibt es viele Möglichkeiten, auf unterschiedliche Ansichten und Funktionalitäten des IDoBlogs zu verlinken.

Achtung, Open Source!

Noch nicht alle der Optionen funktionieren, so z. B. der Link Freunde bearbeiten. Die Grundlagen der Funktionen sind zwar vorhanden, sie besitzen jedoch noch keine Interaktionsmöglichkeiten mit den Usern.

Für unser Beispiel wählen wir folgende zwei Menüpunkte:

Zeige alle Blogs als übergeordneten Menüpunkt Blog sowie

Schreiben Sie in Ihrem Blog als untergeordneten Menüpunkt Beitrag schreiben.

Die Zugriffsebene der Menüpunkte belassen Sie bei Öffentlich, und auch die Option Bei Klick öffnen im übergeordneten Fenster mit Browser-Navigation bleibt unverändert.

162

Page 163: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 23.3 Das Menü und der (noch) leere Blog im Frontend

Die Ansicht, die Sie im Frontend erhalten, wenn Sie auf den Menüeintrag Blogs klicken, ist natürlich nicht aussagekräftig, weil der Blog noch keinerlei Einträge enthält. Das werden wir im Folgenden ändern.

23.1.2 Arbeiten im Blog

Beiträge schreiben

Über den Menüpunkt Beitrag schreiben gelangt man in die Editieransicht des Blogs. Dies setzt voraus, dass man eingeloggt ist, denn obwohl bei der Erstellung des Links Öffentlich als Zugriffsebene gewählt wurde, wird diese Option von den Einstellungen des Blogs in der Konfiguration (s. u. Abschnitt 23.2.1) überschrieben. Damit hat in diesem Multi-User-Blog standardmäßig jeder nur Schreibzugriff auf seinen eigenen Blog.

Die Editieransicht mit dem TinyMCE kennen Sie bereits von der Bearbeitung der »normalen« Joomla!-Artikel. Zusätzlich gibt es einen Bereich zum Anhängen von Dateien. Leider funktionierte dieses Feld zum Zeitpunkt der Drucklegung dieses Buches noch nicht.

Am Ende der Seite ist die Vergabe von Tags möglich, anhand derer die Blog-Einträge schnell und zuverlässig gefunden werden sollen.

Was ist Tagging?

Tagging bedeutet die intellektuelle Verschlagwortung und Interpretation des Materials, die durch eine riesige Anzahl von Nutzern zu einer effektiveren Suche führt. Dabei können beliebig viele Schlagwörter ganz frei ohne zuvor festgelegte Regeln vergeben werden. Dies schließt allgemeine Kategorien, wie »Rezept« und »Fussball«, aber auch beschreibende und subjektive Attribute wie »German« oder »cool« mit ein.

163

Page 164: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 23.4 Das Eingabefeld für Tags

Die Bedienung dieser Funktion ist sehr einfach: Geben Sie Ihrem Blog-Eintrag Schlagwörter mit, die die Aussage des Artikels möglichst gut erfassen. Die Tags werden durch Kommata getrennt in das Eingabefeld eingetragen. Unter dem Eingabefeld werden Ihnen als Vorschläge die Tags angezeigt, die schon existieren. Bereits für Blog-Artikel vergebene Tags erscheinen in einer etwas größeren Schrift. Wenn Sie auf einen der Vorschläge klicken, wird dieser auch in das Eingabefeld eingefügt. Die Tags werden im Backend in einem eigenen Manager verwaltet (s. u. Abschnitt 23.2.3).

Beenden Sie die Erstellung Ihres Blog-Eintrags mit einem Klick auf den Speichern-Button.

Als Autor des Blogs können Sie über die entsprechenden Links den Artikel stets bearbeiten oder gar löschen.

Beiträge kommentieren

Der fertiggeschriebene Artikel ist nun samt Tags und noch nicht individualisiertem Profilbild über den Menüpunkt für alle sichtbar. Die Leser des Blogs können den Blog-Eintrag über ein darunter angehängtes Bearbeitungsfenster kommentieren (Abbildung 23.5).

Hier klicken, um das Bild zu vergrößern

Abbildung 23.5 Einen Blog-Artikel kommentieren

Profil pflegen

Wie oben bereits erläutert wurde, ist der IDoBlog als Multi-User-Blog mit mehreren Community-Funktionen ausgestattet worden. Dazu gehört auch, dass jeder User ein eigenes Profil mit einem Avatar, also einem Benutzerbild, erhält, das jedes Mal rechts neben dem eigenen Blog-Artikel des jeweiligen Users angezeigt wird. Um Ihr Profil zu bearbeiten, klicken Sie auf den Avatarplatzhalter und gelangen damit zu Ihrer noch leeren Profilseite.

164

Page 165: Joomla 1 5 Handbuch

Über den Link Profil bearbeiten kommen Sie zu folgenden Profilregistern, die Sie nun befüllen können:

Zusätzliche Informationen: Hier können Sie in einem Textfeld einen Freitext eingeben, der unter Ihrem Bild in der Profilansicht erscheinen wird.

Profil bearbeiten: In diesem Register können Sie die angeforderten Daten, wie z. B. Ihre ICQ-Nummer oder Ihr Geburtsdatum in die jeweiligen Formularfelder eintragen. Es ist hier für Sie sogar möglich, Ihr Joomla!-Passwort zu ändern.

Avatar: Über den letzten Reiter können Sie ein Bild hochladen, das dann immer in Verbindung mit Ihren Blog-Beiträgen oder Ihrem Profil angezeigt wird.

Hier klicken, um das Bild zu vergrößern

Abbildung 23.6 Ein Benutzerbild hochladen

Avatar entfernen

Falls Sie den von Ihnen gewählten Avatar wieder loswerden wollen, aber noch kein geeignetes Ersatzbild gefunden haben, das Sie stattdessen hochladen möchten, müssen Sie das bisherige Bild im Medien-Manager im Backend im Ordner IDoBlog löschen.

23.1.3 Den Blog administrieren

Die Hauptarbeit mit dem IDoBlog erfolgt über das Frontend (s. o.). Hier werden die Artikel geschrieben, kommentiert, überarbeitet und – falls notwendig – gelöscht.

Die Verwaltung des Blogs im Backend betrifft lediglich die grundlegenden Einstellungen.

Konfiguration Grundeinstellungen: Hier können Sie z. B. die Größe der Avatare,

Datumsformate und weitere Anzeigeoptionen bearbeiten. Zusätzlich

165

Page 166: Joomla 1 5 Handbuch

können einige Funktionen, wie z. B. Smileys aktiviert bzw. deaktiviert werden (vgl. Abbildung 23.7).

Benachrichtigungen: Wenn ein neuer Beitrag oder Kommentar in den Blog bzw. die Blogs gestellt wurde, besteht die Möglichkeit, den Administrator oder die User über diese Aktion in Kenntnis zu setzen. Wer, wann und mit welcher Meldung benachrichtigt wird, wird in diesem Reiter festgelegt.

Einstellungen: Hier wird bestimmt, welche Rechte die jeweiligen Joomla!-Berechtigungsgruppen im IDoBlog besitzen.

Statistiken: Dieses Register gibt Ihnen lediglich zwei Informationen: wie viele User und wie viele Blogs es gibt.

Hier klicken, um das Bild zu vergrößern

Abbildung 23.7 Die Grundeinstellungen der Konfiguration

Vorlagen

Um das Look & Feel Ihres Blogs ein wenig zu verändern, können Sie unter Vorlagen aus drei verschiedenen Vorschlägen ein Template auswählen und den Blog umstellen (vgl. Abbildung 23.8).

Hier klicken, um das Bild zu vergrößern

Abbildung 23.8 Drei Vorlagen zur Auswahl …

Wenn Sie direkt auf eine der Vorlagen klicken, wird Ihnen diese in der Vergrößerung angezeigt, so dass Sie sich ein besseres Bild vom Layout machen können.

166

Page 167: Joomla 1 5 Handbuch

Falls Sie Ihre Vorstellungen in einer eigenen CSS-Datei umgesetzt haben, besteht die Möglichkeit, diese hochzuladen und zu installieren.

Tags

Die oben erläuterten Tags werden hier verwaltet. Viel gibt es dazu nicht zu sagen: Die Tags werden in der Listenansicht angezeigt, können beliebig ergänzt und wieder gelöscht werden.

Aktualisieren

Auch die letzte Schaltfläche, Aktualisieren, ist weitestgehend selbsterklärend: Hier wird Ihr IDoBlog aktualisiert und gegebenenfalls repariert.

24 Wiki: JoomlaWikiEin Wiki ist eine einfach zu bedienende webbasierte Plattform, die es den Betrachtern einer Seite erlaubt, den Inhalt zu ändern, indem sie diese Seite online im Browser editieren.

Sie werden sich nun sicherlich fragen, wo denn der Unterschied zu einem CMS liegt. Viele Leute sind tatsächlich der Meinung, dass das Wiki nichts anderes als eine besondere Form des CMS ist, obwohl beide Technologien historisch völlig verschiedene Ursprünge und Entwicklungslinien durchlaufen haben. Im Gegensatz zum CMS liegt der Schwerpunkt beim Wiki auf der kooperativen Arbeit an gemeinsamen Texten bzw. Hypertexten. Sie können ein Wiki natürlich auch allein nutzen, doch das Besondere an dieser Software ist, dass sie zur Entstehung einer Community beitragen kann, wie man am Paradebeispiel der Wikipedia sehr schön beobachten konnte.

Für die Zusammenarbeit mit anderen Leuten stellt das Wiki daher auch besondere Funktionen zur Verfügung: z. B. Seiten, die übersichtlich die letzten Änderungen des Artikels aufzeigen, Seiten, auf denen man mit anderen über den Artikel diskutieren kann, und die Option, ältere Versionen wiederherzustellen.

Wenn Sie das hier beschriebene JoomlaWiki in Ihr Joomla!-System einbinden, geben Sie den Usern also eine Möglichkeit, schneller und einfacher Texte gemeinsam zu generieren und/oder zu diskutieren, als Sie das in Joomla! oder einem anderen CMS selbst bewerkstelligen könnten.

Das Wiki ist hier ein eigenes kleines Subsystem, das die User-Accounts zunächst von Joomla! übernimmt. Danach kann der Wiki-Sysop (das ist der Super Administrator aus Joomla!) allerdings eigene Einstellungen vornehmen, die nur das Wiki betreffen, z. B. einen User blocken oder ihm Sysop-Rechte erteilen.

167

Page 168: Joomla 1 5 Handbuch

Die aktuelle Version des Wikis ist das JoomlaWiki 0.9.7. Dieses Wiki basiert auf dem MediaWiki 1.5.8, das in einer etwas aktuelleren Version auch der Wikipedia zugrunde liegt. Der Vorteil dieses sogenannten Wiki-Klons liegt in seiner einfachen Bedienbarkeit und seiner Mehrsprachigkeit, denn hier können Sie eine Auswahl aus ca. 80 Sprachen treffen, darunter auch Exoten wie z. B. Plattdüütsch.

24.1 Installation

Das JoomlaWiki gehört zu den Erweiterungen, die für eine ältere Joomla!-Version kreiert wurden. Daher sollten Sie vor der Installation unter Erweiterungen • Plugins die Option System – Legacy aktivieren.

Hier klicken, um das Bild zu vergrößern

Abbildung 24.1 Das Plug-in »System – Legacy«

Erst danach können Sie das Paket com_joomlawiki-0.9.7.zip unter Erweiterungen • Installieren/Deinstallieren im ersten Formularfeld hochladen und installieren (siehe Abschnitt 9.4, »Neue Erweiterungen installieren«).

Wenn die Installation der Erweiterung erfolgreich war, erscheint das Wiki u. a. im Menü Komponenten (Abbildung 24.2).

Hier klicken, um das Bild zu vergrößern

Abbildung 24.2 Die Wiki-Optionen im Menü Komponenten

168

Page 169: Joomla 1 5 Handbuch

Wie Sie sehen, erreicht man darüber leicht die Setup-Seite, die Sie als Nächstes aufrufen müssen, um die Einrichtung fortzusetzen. Diese füllt die Datenbank und stellt die Konfigurationsdatei des Wikis ein. Sie wird Ihnen danach mitteilen, dass die Installation erfolgreich war und Sie weitere Einstellungen unter Configuration vornehmen können. Über Show Page haben Sie bereits im Backend Zugriff auf das Wiki.

Sicherheitslücken stopfen!

Sie sollten nun das Installationsverzeichnis config aus dem Wiki-Verzeichnis components/com_joomlawiki entfernen. Ansonsten könnte es von unberechtigten Personen geöffnet werden, die mit den enthaltenen Skripten die aktuelle Datenbank löschen und eine neue erstellen könnten.

Nun können Sie das Wiki z. B. über das Hauptmenü im Frontend verankern, indem Sie über Menüs • Hauptmenü einen neuen Eintrag, z. B. namens »Mein Wiki« erstellen und mit der Komponente JoomlaWiki verbinden (siehe Abschnitt 6.3.3, »Einen Menüpunkt erstellen«).

Mit der Installation des JoomlaWikis wurde Ihnen automatisch ein weiteres Menü, Wiki Options, zur Verfügung gestellt, das mit der Menüposition »Wiki« definiert wurde. Diese Position muss erst im Layout definiert werden, damit das Menü sichtbar wird (vgl. Kapitel 12, »Was macht ein Template aus?«). Bisher sehen Sie es nur, wenn Sie ihm eine andere, bereits bekannte Position, z. B. »left«, zuweisen. Das Wiki-Menü soll standardmäßig zu den Verwaltungsseiten eines Wikis, wie z. B. Recent Changes und Preferences, verlinken. Sie können natürlich Menüeinträge löschen und hinzufügen. Um das Menü zu aktivieren, muss man es zunächst in der Bearbeitungsansicht der Modulverwaltung aktivieren (Abbildung 24.3).

Hier klicken, um das Bild zu vergrößern

Abbildung 24.3 Aktivierung des Wiki-Menüs

169

Page 170: Joomla 1 5 Handbuch

Wenn Sie sich nun ins Frontend begeben und die Komponente über den von Ihnen erstellten Menüeintrag »Mein Wiki« aufrufen, wird Ihnen das leere Wiki präsentiert (Abbildung 24.4). Hierzu müssen Sie sich allerdings erst bei Joomla! anmelden.

Hier klicken, um das Bild zu vergrößern

Abbildung 24.4 Der (noch) leere Wiki-Artikel

25 Forum: FireBoardDiskussionsforen stellen eine der beliebtesten Erweiterungen für Homepages dar. Es gibt unzählige Anwendungsgebiete. So gibt es Foren für Selbsthilfegruppen, für Schulen, die sie als Lernplattform nutzen, oder für User zum Support bei Computerproblemen. Kurz: überall, wo ein Bedarf an Erfahrungsaustausch besteht, ist ein Forum die richtige Wahl.

Für die Joomla!-Sites stehen mehrere Foren-Erweiterungen zur Auswahl, z. B. phpBB oder Punbo. Wir haben uns FireBoard, eine Weiterentwicklung des beliebten Joomlaboards, ausgesucht.

Sowohl für den Administrator im Backend als auch für den Nutzer im Frontend bietet es zahlreiche Vorteile. So kann der Admin alle Bereiche bequem von der FireBoard-Startseite aus verwalten: Er kann Beiträge löschen, ändern und verschieben und sogar Threads [Unter Threads versteht man die verschiedenen Gesprächslinien in einer Diskussion. Ein Teilnehmer eröffnet den Thread mit einer Nachricht, und andere führen das Thema weiter. ] schließen, wenn die Diskussion zu unsinnig wird. Zusätzlich können Moderatoren bestimmt werden, die Sonderrechte genießen und Verwaltungsaufgaben übernehmen können. Der Nutzer hat z. B. die Möglichkeit, sich bei Neuigkeiten über E–Mail benachrichtigen zu lassen, und kann eine Signatur anlegen, die automatisch unter jedem seiner Beiträge erscheint. Sogar Bilder und Dateien können angehängt werden.

170

Page 171: Joomla 1 5 Handbuch

Das Forum basiert auf der Joomla!-Userverwaltung, unterstützt aber auch eigene Profilinformationen, die über die normalen Benutzerdetails hinausgehen und von den Teilnehmern selbst editiert werden können.

Die aktuelle Version ist 1.0.4. stable.

Video-Lektion

Zu diesem Kapitel finden Sie auch eine geeignete Video-Lektion auf der DVD. Hier können Sie das beschriebene Vorgehen Schritt für Schritt anschaulich mitverfolgen.

25.1 Installation

Installieren Sie die Zip-Datei FireBoard_1.0.4_Stable_CompletePackage.zip über das Installationstool. Wenn dieser Prozess erfolgreich verlaufen ist, sollte Ihnen eine Seite mit Details zu der Erweiterung angezeigt werden. Nach der Installation kann das Forum über den Menübefehl Komponenten • Fireboard Forum administriert werden.

Bevor Sie beginnen, müssen Sie noch mit der Option Clean installation die Datenbank über den Button Apply! einrichten (Abbildung 25.1).

Hier klicken, um das Bild zu vergrößern

Abbildung 25.1 Die Installation mit der Einrichtung der Datenbank beenden

FireBoard wird auf Englisch ausgeliefert. Um auf Deutsch umzustellen, gehen Sie wie folgt vor:

Entpacken Sie die mitgelieferte Datei FB_german_1.0.4.zip in ein temporäres Verzeichnis, und kopieren Sie alle Dateien aus diesem Verzeichnis in das Wurzelverzeichnis von Joomla!.

Dieses Prozedere ist zugegebenermaßen nicht so komfortabel wie die Methode über das Installationstool, ist aber in einigen Fällen die einzige Vorgehensweise, die möglich ist.

171

Page 172: Joomla 1 5 Handbuch

26 GästebücherNeben Foren oder Chats war die am meisten verbreitete Form der Kommunikation auf Webseiten die Möglichkeit, Einträge in Gästebücher zu machen. Obwohl das Web 2.0 mittlerweile ganz andere Möglichkeiten bietet, werden Gästebücher immer noch gern eingesetzt. Sie sind bei den Usern bekannt und haben einen ganz eigenen Charakter. Ebenso wie in einem Restaurant oder einem Museum wird hier die Gelegenheit wahrgenommen, einen kurzen Kommentar zum Besuch zu hinterlegen. Das Gästebuch hat eine doppelte Funktion. So können sich Besucher verewigen und bei der Gelegenheit ihren Besuch auch kommentieren. Die Betreiber, in diesem Fall der Internetseite, bekommen einen Eindruck von ihren Gästen und gleichzeitig eine Resonanz zu ihrem (Web)Angebot. An mancher Stelle hat das elektronische Gästebuch das physische Gästebuch abgelöst, und Gäste eines Lokals machen ihren Eintrag im virtuellen Gästebuch am Tag nach ihrem Abendessen. Das Online-Gästebuch übernimmt also noch mehr die Funktion einer Referenzliste. Neue Besucher werden sich möglichweise an den Einträgen orientieren und entscheiden, ob sie das Lokal besuchen möchten oder nicht. Gleichzeitig bieten Gästebücher aber natürlich auch eine größere Angriffsfläche für Spammer und anonyme Neider. Die Betreiber von Online-Gästebüchern müssen also stärker am Schutz der Einträge arbeiten, als es bei realen Gästebüchern der Fall ist.

Wir werden Komponenten etwas genauer betrachten. Natürlich liegt hier auch das besondere Augenmerk auf der Bedienbarkeit und der Sicherheit der Gästebücher.

26.1 Phoca Guestbook

Betrachten wir zunächst das Phoca Guestbook. Das Erweiterungspaket muss vor der Installation über das Joomla!-Backend entpackt werden. Es beinhaltet zwei Dateien; die eigentliche Komponente und das deutsche Sprachpaket.

1. Installieren Sie im Backend über das Menü Erweiterungen • Installieren/Deinstallieren die Komponente com_phocaguestbook_v1.3.1_beta.zip.

2. Sie werden gefragt, ob Sie Phoca installieren möchten oder ob es sich um ein Upgrade handelt. In unserem Fall wählen wir die Installation.

3. Nach der Installation landen Sie auch gleich in der Phoca Guestbook-Verwaltung.

172

Page 173: Joomla 1 5 Handbuch

4. Bevor wir uns die Funktionen des Gästebuchs anschauen, werden wir noch die Sprachdateien aus dem Paket installieren.

5. Das funktioniert nicht über den Installationsassistenten, sondern muss manuell gemacht werden. Kopieren Sie dazu die beiden Sprachdateien in den Ordner C:\xampp\htdocs\IHR-JOOMLA\administrator\language\de-DE.

6. Wundern Sie sich nicht: Die Übersetzung zeigt auf den ersten Blick fast keine Auswirkungen. Man findet die deutlichste Ausprägung in dem Menü Einstellungen.

Damit ist die Installation beendet, und wir können unser erstes Gästebuch erstellen.

26.1.1 Ein kurzer Rundgang

Das Phoca Guestbook ist äußerst übersichtlich und bietet in der Verwaltung nur drei Menüpunkte.

Tabelle 26.1 Die Verwaltung des Phoca Guestbook

Mit der Items-Übersicht haben Sie Zugriff auf einzelne Beiträge und können diese auch über das Backend löschen.

Erstellen und verwalten Sie hier Ihre Gästebücher.

Über den Info-Bereich gelangen Sie auch zur Phoca-Homepage, zu Anleitungen und zum Forum. Außerdem können Sie Ihr Guestbook auf Updates prüfen lassen.

In der Werkzeugleiste befindet sich noch ein weiterer Button Einstellungen, über den Sie die allgemeinen Einstellungen für die Gästebücher definieren können. Die Optionen gliedern sich in drei Bereiche. Im ersten Abschnitt können Sie allgemeine Einstellungen zur Schriftfarbe etc. vornehmen.

173

Page 174: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 26.1 Einstellungen zu Inhalten und zur Darstellung des Gästebuchs

Im zweiten Block kommen wir zu wichtigeren Einstellungen, denn hier können Sie eine Blacklist für unerwünschte Wörter festlegen. Begriffe, die möglichst nicht in den Texten auftauchen sollen, werden durch *** ersetzt. Außerdem findet hier auch die Einstellung zum Schutz vor Spammern statt. Definieren Sie die Captcha-Einstellungen, die bei Einträgen in Ihr Gästebuch vom User zuerst bestätigt werden müssen, bevor der eigentliche Eintrag stattfindet.

Hier klicken, um das Bild zu vergrößern

Abbildung 26.2 Filtern Sie unerwünschte Begriffe, und schützen Sie das Gästebuch vor Spammern.

Der dritte Bereich der Konfiguration befasst sich mit weiteren Optionen zur Darstellung des Gästebuchs. Sollen z. B. der Name oder die E–Mail-Adresse des Verfassers zu sehen sein, und welches Datumsformat bevorzugen Sie?

174

Page 175: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 26.3 Weitere allgemeine Optionen für das Gästebuch

Nachdem Sie diese Einstellungen vorgenommen haben, können wir zum eigentlichen Thema übergehen: Wir erstellen das erste Gästebuch.

26.1.2 Ein Gästebuch erstellen und verwalten

Über Phoca haben Sie die Möglichkeit, mehrere Gästebücher zu erstellen und zu verwalten. So könnten Sie für bestimmte Themenbereiche Ihrer Website auch eigene Gästebücher anlegen. Wir werden die Prozedur für ein Gästebuch Schritt für Schritt durchgehen.

1. Klicken Sie im Phoca Guestbook Control Panel auf den Button Guestbooks.

2. Über die Werkzeugleiste können Sie mit dem Button Neu ein Gästebuch erstellen.

175

Page 176: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 26.4 Ein neues Phoca-Gästebuch erstellen

3. Geben Sie den Titel und gegebenenfalls eine kurze Beschreibung für das Gästebuch ein.

4. Speichern Sie Ihre Eingaben, und das Gästebuch ist fertig.

Um das Gästebuch noch den Usern verfügbar zu machen, fehlt uns ein letzter Schritt. Wir müssen die Verknüpfung mit einem Menü erstellen, über das das Gästebuch verfügbar sein soll.

1. Wechseln Sie dazu in das Menü Menüs • Hauptmenü.

2. Klicken Sie auf den Button Neu, und wählen Sie den Menütyp Phoca Gästebuch.

3. Nun können Sie den Menütitel bestimmen und das gewünschte Gästebuch aus der Liste der Basisparameter auswählen.

Hier klicken, um das Bild zu vergrößern

Abbildung 26.5 Geben Sie einen Menütitel ein, und wählen Sie Ihr Gästebuch.

176

Page 177: Joomla 1 5 Handbuch

Jetzt finden Sie den Menülink im Frontend und können das Gästebuch aufrufen.

Hier klicken, um das Bild zu vergrößern

Abbildung 26.6 Unser neues Gästebuch im Frontend

Sämtliche Einträge in das Gästebuch können Sie, wie bereits angekündigt, auch über das Backend erreichen.

1. Wechseln Sie dazu in die Phoca-Verwaltung über das Hauptmenü Komponenten • Phoca Gästebuch • Einträge.

2. Hier finden Sie die Auflistung sämtlicher Einträge. Klicken Sie einfach auf den gewünschten Eintrag, den Sie etwas genauer betrachten möchten.

Hier klicken, um das Bild zu vergrößern

Abbildung 26.7 Im Backend finden Sie die Gästebucheinträge wieder.

Die Ansicht zeigt Ihnen alles an: vom Titel des Eintrags bis hin zur IP-Adresse des Besuchers. Hier bekommen Sie auch die Möglichkeit, Einträge zu überarbeiten, was man natürlich bei Gästebucheinträgen möglichst nicht

177

Page 178: Joomla 1 5 Handbuch

machen sollte, da der ursprüngliche Verfasser mit seinem Namen und seiner E–Mail-Adresse mit diesem Beitrag verbunden wird.

27 Noch mehr KommunikationNun haben wir einige große Kommunikationsplattformen besprochen. Darüber hinaus gibt es noch eine Vielzahl weiterer Tools. Sie alle aufzuzählen würde wahrscheinlich ein eigenes Buch füllen. Zwei wollen wir hier noch herauspicken, weil sie anders funktionieren als die bisher vorgestellten: Der Chat ist ein synchrones Medium, und der Podcast überschreitet die Grenze des reinen Textes.

27.1 Chat

Diese schriftliche, synchrone Kommunikation existiert bereits seit den ersten Anfängen des Internets. Bis jetzt hat sie sich vorwiegend in privaten Bereichen etabliert, kann aber auch in anderen Bereichen, z. B. in der Arbeitswelt, von Nutzen sein.

Für Joomla! gibt es unseres Erachtens leider nur wenige zufriedenstellende Chat-Lösungen. Da wäre zum einen jPFChat, der allerdings noch sehr fehlerträchtig ist und nur mit viel Aufwand lauffähig gemacht werden kann.

Die Alternative, für die wir uns hier entschieden haben, heißt AjaxChat. Dabei handelt es sich um eine Komponente, die auf dem gleichnamigen Open-Source-Chat-Programm basiert und dies in Joomla! integriert. Die Komponente hat eine ganz akzeptable Oberfläche und läuft datenbankbasiert auf dem lokalen Server. Der Vorteil ist, dass man mit dem AjaxChat keinen Chatroom auf einem fremden Server »anmietet«. Sie bleiben also mit Ihrer Seite autonom und unabhängig von Drittanbietern.

27.1.1 Inbetriebnahme

Installieren Sie das Zip-Archiv com_ajaxchat-1.2.zip als Komponente im entsprechenden Installer. Die Datei finden Sie auf der beigefügten im Ordner erweiterungen/ajaxchat. Haben Sie die Erweiterung erfolgreich eingespielt, so finden Sie im Menü Komponenten • AjaxChat zwei neue Verwaltungsmodule.

178

Page 179: Joomla 1 5 Handbuch

Vor dem ersten Start sollen Sie sich die allgemeinen Einstellungen des Chats ansehen. Rufen Sie dazu den Punkt Verwalte Chaträume auf, und klicken Sie auf das Symbol Einstellungen.

Hier klicken, um das Bild zu vergrößern

Abbildung 27.1 Die Einstellungen des AjaxChat

Hier sollten Sie zunächst die Standard Sprache auf Deutsch umstellen. Das Aussehen des Chatraums können Sie im Feld Standard Stil bestimmen. Daneben finden Sie noch einige Berechtigungen für das Verhalten im Chat, bei denen Sie erst mal die Standardeinstellungen beibehalten können. Klicken Sie auf Speichern, um die Änderungen wirksam werden zu lassen.

Wie bei Komponenten üblich, erscheint AjaxChat erst dann im Frontend, wenn Sie im Menü einen Link gesetzt haben. Erzeugen Sie also einen neuen Menüpunkt im Hauptmenü, der den Typ Ajax Chat und den Untertyp Ajax Chatfenster hat. Im Einstellungsbereich des Menüpunkts selbst sollten Sie im Bereich Umleitung beim Abmelden noch eine Zielseite eingeben, die aufgerufen wird, wenn sich ein Chatter ausloggt. Tun Sie das nicht, ist eine Abmeldung im Chat nicht möglich. Vergessen Sie nicht, einen Titel für den Menüpunkt anzugeben, und speichern Sie die Änderungen.

27.1.2 Der Chat

Jetzt können Sie ins Frontend wechseln und die Chat-Komponente über das Menü aufrufen. Dann sollten Sie einen Chat-Bereich sehen, wie er in Abbildung 27.2 dargestellt ist.

179

Page 180: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 27.2 Der Chat

Wenn Sie sich nicht im Frontend eingeloggt haben, werden Sie als »guest« angemeldet. Um Nachrichten abzuschicken, geben Sie Ihre Mitteilung in das untere Textfeld ein. Sie schicken den Text ab, indem Sie auf den Button Abschicken klicken oder, einfacher, indem Sie die -Taste drücken. Der neueste Beitrag wird im Nachrichtenfenster (links) am Ende angehängt. Das Fenster wird in regelmäßigen Abständen aktualisiert, um neue Nachrichten anderer Chatter anzuzeigen.

Sie können Ihre Mitteilungen auch ein wenig gestalten. Nutzen Sie dazu die Funktionsleiste am unteren Ende. Mit einem Klick auf einen Smiley wird beispielsweise der entsprechende Code eingefügt (z. B. 8)). Im Nachrichtenfenster wird dieser Code als Smiley-Bild dargestellt. Ähnlich verhält es sich mit Formatierungen. Für fette Schrift markieren Sie beispielsweise den Text, der so dargestellt werden soll, und klicken dann auf den Button mit der Aufschrift b. Um den Text werden dann Tags im BBCode-Format gesetzt: [b]fett[/b].

Wenn Sie nicht mit Ihrem Benutzernamen zufrieden sind, können Sie diesen ändern. Klicken Sie dazu im Menü rechts auf den Link Benutzernamen ändern. Im Textfeld erscheint nun die Zeile /nick. Setzen Sie dahinter einfach den neuen Wunschnamen:

/nick TanzFreak

Jetzt sollten Ihre Meldungen im Nachrichtenfenster unter neuem Namen angezeigt werden.

Gespaltene Persönlichkeit

Um die Kommunikation mit mehreren Benutzern zu testen, können Sie sich über zwei verschiedene Browser (z. B. Firefox und Internet Explorer) im Chat einloggen.

180

Page 181: Joomla 1 5 Handbuch

Sind mehrere Benutzer im System, haben Sie die Möglichkeit, einem der Teilnehmer eine private Nachricht zu schicken. Diese wird dann nur dem Empfänger angezeigt und mit »(flüstert)« markiert. Wählen Sie dazu im Bereich Online Benutzer den entsprechenden Teilnehmer aus, und klicken sie auf Private Nachricht schicken. Im Textfeld erscheint wieder ein Codefragment, an dessen Ende Sie Ihre Mitteilung setzen:

/msg (username) Hallo

Wenn Sie dauerhaft ein privates Gespräch führen wollen, können Sie das über den Link Privaten Kanal öffnen machen. Dann wird jede Nachricht im Flüstermodus gesendet.

Sind Sie bereits in Joomla! angemeldet, haben Sie neben dem öffentlichen Chatraum (Public) noch weitere Räume zur Verfügung. Sie können zwischen diesen wechseln, indem Sie aus dem Dropdown-Feld Raum einen anderen Chatraum auswählen.

Vielleicht haben Sie schon bemerkt, dass man alle Aktionen, die im Chat getätigt werden, nicht nur per Mausklick, sondern auch per Steuercode ausführen kann. Eine Liste der verfügbaren Steuercodes finden Sie in Tabelle 27.1.

Tabelle 27.1 Die Aktionen im Chat

Steuercode Funktion

/join Raumname

Einen Chatraum betreten. Sind Sie ein registrierter Benutzer, können Sie auch einen privaten Raum erstellen, indem Sie den Raumnamen einfach weglassen.

/invite (Benutzername)

Einen anderen Benutzer in den Chatraum einladen, in dem man sich gerade befindet.

/uninvite (Benutzername)

Die Einladung zurücknehmen.

/quit Aus dem Chat abmelden.

/msg (Benutzername) Meldung

Eine private Nachricht an den angegebenen Teilnehmer senden.

181

Page 182: Joomla 1 5 Handbuch

/query (Benutzername)

Einen privaten Kanal zum angegebenen Benutzer öffnen.

/query Diesen Kanal wieder schließen.

/action Meldung Eine Aktion beschreiben. Diese wird kursiv ausgegeben.

/describe (Benutzername) Meldung

In einer privaten Unterhaltung eine Aktion beschreiben.

/ignore (Benutzername)

Meldungen des angegebenen Teilnehmers werden nicht mehr angezeigt.

/whereis (Benutzername)

Gibt den Chatraum aus, in dem sich der angegebene Teilnehmer gerade befindet.

/who Alle Teilnehmer auflisten, die gerade online sind.

/list Alle verfügbaren Chaträume auflisten.

/roll [Anzahl]d[Seiten]

Mit dieser Aktion können Sie würfeln. Es wird eine Zufallszahl erzeugt. Die optionale Angabe [Anzahl] legt fest, wie oft gewürfelt werden soll. Mit [Seiten] bestimmen Sie, wie viele Seiten der hypothetische Würfel hat. Ein Beispiel: /roll 2d6 würfelt zweimal mit einem Standardwürfel.

/nick Benutzername

Tauscht den Benutzernamen gegen den angegebenen Wert aus.

Nur Moderatoren

/kick (Benutzername) [Zeit]

Einen Benutzer für eine bestimmte Zeit aus dem Chat ausschließen.

/bans Listet alle ausgeschlossenen Benutzer auf.

/unban (Benutzername)

Hebt die Sperre für den angegebenen Benutzer auf.

/whois (Benutzername)

Zeigt die IP-Adresse des angegebenen Benutzers an.

182

Page 183: Joomla 1 5 Handbuch

Die Benutzerberechtigungen werden direkt aus Joomla! übernommen. Dabei gilt folgende Zuordnung:

Tabelle 27.2 Die Zuordnung der Berechtigungen

Joomla! AjaxChat

Gast Guest

Registrierter Benutzer Normal user

Benutzer mit höherer Berechtigung Moderator

Super Administrator Admin

27.1.3 ShoutBox

Mit einem Zusatzmodul können Sie aus dem AjaxChat eine sogenannte ShoutBox machen. Das ist ein Bereich, in dem jeder, der die Seite besucht, ohne vorherige Anmeldung einen Kommentar hinterlassen kann. Diese Kommentare werden dann ähnlich wie in einem Chat in einem Feld angezeigt.

Hier klicken, um das Bild zu vergrößern

Abbildung 27.3 Die ShoutBox

183

Page 184: Joomla 1 5 Handbuch

Die ShoutBox wurde bereits mit der Installation des AjaxChats mitgeliefert und muss nur noch aktiviert werden. Dabei müssen Sie in den Einstellungen im Feld Haupt-Chatseite die Seite angeben, auf der die AjaxChat-Komponente eingebunden ist. Die Einstellungen dieses Chats werden auch für die ShoutBox verwendet. Ebenso finden sich in der ShoutBox die Kommentare aus der Komponente.

Eigener ShoutBox-Chat

Wenn Sie die ShoutBox unabhängig von einem anderen Chat machen wollen, so müssen Sie zu einem Trick greifen. Erstellen Sie einen Menüeintrag auf den Chat in einem separaten Menü. Dieses lassen Sie auf einer Position anzeigen, die es nicht im Template gibt, z. B. »hidden«.

28 Installation beim WebhostDer Sinn und Zweck von Joomla! ist es, Ihre Webpräsenz darzustellen. Ein Testsystem ist daher zum Spielen ganz nett, aber irgendwann muss man die Seite auch der großen, weiten Welt vorstellen. Also ab zum Provider, und das System übertragen! Natürlich ist die Veröffentlichung einer Seite immer ein spannender und manchmal auch nervenaufreibender Prozess. Aber keine Sorge, der Umzug ist in der Regel mit wenigen Schritten einfach zu bewältigen.

Video-Lektion

Zu diesem Kapitel finden Sie auch eine geeignete Video-Lektion auf der DVD. Hier können Sie das beschriebene Vorgehen Schritt für Schritt anschaulich mitverfolgen.

28.1 Kriterien zur Webhost-Wahl

Der erste Schritt zur Webpräsenz ist die Wahl eines geeigneten Hosters. Bei der Vielfalt der Angebote ist es schwer, sich für einen Dienstleister zu entscheiden. Es gibt jedoch einige Kriterien, die Ihnen die Entscheidung erleichtern können.

Zunächst sollten Sie sich Gedanken über die Größe Ihrer Seite und das Zielpublikum machen. Haben Sie nur eine kleine Seite als persönliche

184

Page 185: Joomla 1 5 Handbuch

Visitenkarte, so reicht Ihnen ein Webspace mit 100 MB mehr als aus. Auch ein Übertragungsvolumen von 1 GB sollte auf alle Fälle genügen. Anders ist die Lage, wenn Sie vorhaben, viele Dateien, beispielsweise Bilder, ins Netz zu stellen. Dann ist Plattenplatz sehr kostbar, und Sie sollten hier nach einem möglichst hohen Wert streben. Ist Ihre Seite darauf ausgelegt, sehr viele Besucher anzuziehen, zählt vor allem die Leistung des Servers und das Traffic-Volumen, das Ihnen zur Verfügung steht. Achten Sie darauf, dass sich die Anzahl der übertragenen Daten multipliziert. Wenn 1000 Besucher am Tag ein Bild mit 100 KB ansehen, haben Sie 100 MB Übertragungsvolumen täglich!

Wichtig ist auch, dass Sie Ihre eigenen Kenntnisse in Bezug auf den Betrieb von Servern richtig einschätzen. Bei einigen Providern ist Joomla! bereits vorinstalliert und Sie müssen das System nur noch mit Daten befüllen. Andere Angebote überlassen Ihnen die volle Kontrolle über einen (virtuellen) Server. Folgende Modelle findet man sehr häufig:

Joomla! Hosting. Das ist die einfachste Variante. Sie bekommen einen Webspace auf einem Shared-Hosting-Server. Joomla! ist bereits vorinstalliert. Wichtig ist, dass Sie das System selbst erweitern können. Ein Update-Service auf neue Joomla!-Versionen sollte aber inbegriffen sein. Sie haben häufig die Auswahl zwischen verschiedenen Paketen, bei denen die eine oder andere Erweiterung schon vorinstalliert ist. Das kann im Zweifelsfall einige Nerven sparen. Viele Hoster bieten zudem Support beim Betrieb von Joomla! an.

Shared Hosting. Das ist die häufigste und kostengünstigste Variante des Webhostings. Auf einem Server werden mehrere (hundert) Webseiten betrieben. Jeder Kunde hat einen eigenen Bereich, auf den er per FTP oder SSH zugreifen kann, und ein gewisses Speicherkontingent. Der Provider kümmert um die Server-Software, spielt Updates ein und wartet das System. Das hat allerdings seinen Preis: Sie haben in der Regel nur sehr eingeschränkten Zugriff auf die Konfiguration beispielsweise von PHP oder des Apache-Servers. Achten Sie hier in jedem Fall auf Vertrauenswürdigkeit des Providers. Bei einer schlechten Serverkonfiguration kann es vorkommen, dass Ihre Mitnutzer auf dem Server auch Zugriff auf Ihre Dateien bekommen.

Dedizierter Server. In diesem Fall haben Sie einen eigenen Server. Meistens handelt es sich um eine virtuelle Instanz, also nicht um einen physikalischen Rechner. Dennoch haben Sie hier die volle Kontrolle über das System, aber auch die volle Verantwortung dafür. Dedizierte Server haben meistens mehr Speicherplatz und ein höheres Transfervolumen als Shared-Hosting-Lösungen. Vor allem aber bieten sie Ihnen exklusive Rechenpower und damit Geschwindigkeit beim Seitenaufbau.

Wichtig ist neben den technischen Daten vor allem, dass Ihr Webhost einen guten Service bietet. Eine Hotline mit technischem Ansprechpartner

185

Page 186: Joomla 1 5 Handbuch

beispielsweise kann nicht schaden. Gerade, wenn sich Hoster auf den Betrieb von Joomla! spezialisiert haben, können die Mitarbeiter eventuell auch bei Ihren Problemen Hilfestellung geben. Aber hegen sie keine zu hohen Erwartungen: Gute Qualität hat ihren Preis, und individuelle Beratung ist meistens kostenpflichtig.

29 Backup und UpgradeUm ein System wie Joomla! dauerhaft am Laufen zu halten, ist es nötig, regelmäßige Wartungen durchzuführen. Diese dienen zur Erhaltung der Systemstabilität und zur Sicherung des aktuellen Zustands für den Fall der Fälle. Darüber hinaus wollen viele Administratoren und Benutzer die Entwicklungen des Systems und neue Features, die eingeführt werden, nicht verpassen.

29.1 Backup der Daten

Kein Administrator und kein System ist perfekt. Wenn Sie eine Webseite betreiben, müssen Sie immer damit rechnen, dass sich ein Fehler im System einschleicht, dass Hardwarekomponenten ausfallen, dass es zu einem Absturz kommt oder dass Sie gehackt werden. In diesem Fall sind möglichst aktuelle Sicherungskopien das A und O einer schnellen Wiederherstellung.

Diese Backups sollten Sie auf alle Fälle vor größeren Änderungen an der Seite erstellen. Noch besser ist es, wenn Sie die Datensicherung auf einer regelmäßigen Basis, am besten täglich, durchführen.

Um die Daten einer Joomla!-Installation zu sichern, sind zwei Schritte notwendig. Erstens müssen die Daten aus dem joomla-Verzeichnis kopiert werden, und zweitens brauchen Sie eine Kopie der Datenbank. Um die alte Version wiederherzustellen, löschen Sie einfach die bestehende Datenbank und leeren das joomla-Verzeichnis. Jetzt kopieren Sie die archivierten Dateien wieder in das Verzeichnis und spielen das Backup wieder in die Datenbank ein.

Bei der Datensicherung können an zwei Stellen Probleme auftreten:

Die Zugriffsberechtigungen auf Dateien und Verzeichnisse sowie deren Besitzer gehen verloren.

Die Kodierung der SQL-Daten wird verändert.

186

Page 187: Joomla 1 5 Handbuch

Um diesen Problemen vorzubeugen, ist es ratsam, die Daten zunächst auf dem Rechner zu sichern, auf dem sich die Joomla!-Installation befindet, und erst das vollständige Backup auf den eigenen Rechner zu kopieren.

Video-Lektion

Zu diesem Kapitel finden Sie auch eine geeignete Video-Lektion auf der DVD. Hier können Sie das beschriebene Vorgehen Schritt für Schritt anschaulich mitverfolgen.

29.1.1 Manuelles Backup

Am leichtesten haben Sie es, wenn Ihr Webhost eine Backup-Funktion anbietet. Dann müssen Sie nur das Backup anstoßen und sich um nichts weiter kümmern, da hier in der Regel Datenbank und Dateien gesichert werden. Ist das nicht der Fall, können Sie meistens mit einem FTP-Programm die Dateien sichern und über phpMyAdmin die Datenbank exportieren. Dabei kann es allerdings unter Umständen zu oben genannten Schwierigkeiten kommen. Auch unter XAMPP steht Ihnen dieses Programm zur Verfügung. Geben Sie in der Adresszeile Ihres Browsers einfach die URL

http://localhost/phpmyadmin

ein. Wählen Sie nun links im Dropdown-Feld Datenbank den Eintrag »joomla« aus. Jetzt wird eine Liste der vorhandenen Tabellen angezeigt. Klicken Sie auf den Reiter Exportieren. Es erscheint eine neue Seite mit einigen Einstellungen, die Sie in der Regel auf den Standardwerten belassen können. Setzen Sie den Haken bei Senden, und klicken Sie auf OK. Es sollte sich ein Download-Fenster öffnen, über das Sie Ihr Backup speichern können.

Um die Daten wieder einzuspielen, rufen Sie phpMyAdmin nochmals auf und wählen die Datenbank »joomla« aus. Klicken Sie nun auf den Reiter Importieren. Es erscheint ein neues Formular. Im Bereich Zu importierende Datei klicken Sie auf Durchsuchen… Wählen Sie jetzt die zuvor gespeicherte SQL-Datei aus, und klicken Sie auf Öffnen. Dann sollte der Pfad zur Datei im Feld Datei stehen. Wenn Sie jetzt OK anklicken, wird die Datenbank eingespielt.

Wenn Sie einen SSH-Zugang zu Ihrem Webspace oder direkten Zugriff auf den Server haben, können Sie über einige Kommandozeilenbefehle die Datenarchive erstellen und dann an einen sicheren Ort bringen. Verpacken Sie zunächst die Dateien in eine Archivdatei. Stellen Sie dazu sicher, dass Sie sich im Joomla!-Wurzelverzeichnis befinden, und geben Sie dann folgenden Befehl ein:

tar czvf joomla_backup.tar.gz *

187

Page 188: Joomla 1 5 Handbuch

Mit dem Kommando wird die Datei joomla_backup.tar.gz erstellt, die alle Dateien und Verzeichnisse enthält. Diese Datei können Sie nun getrost an einen anderen Ort kopieren. Um die Daten zurückzuspielen, verwenden Sie folgenden Befehl:

tar xzvf joomla_backup.tar.gz

Jetzt wird das Archiv entpackt, und die Daten werden wieder in die Verzeichnisse gespeichert. Die Datenbank sichern Sie über folgenden Befehl:

mysqldump –u root –p joomla > joomla.sql

Statt »root« müssen Sie gegebenenfalls den Datenbank-Usernamen angeben, und »joomla« steht für den Namen der Datenbank. Auch diese Datei können Sie an einem sicheren Ort aufbewahren. Um sie zurückzuspielen, verwenden Sie den Befehl:

mysql –u root –p joomla < joomla.sql

Natürlich müssen Sie die Parameter an Ihre Gegebenheiten anpassen.

29.1.2 Die Backup-Komponente

Joomla! bietet auch eine Komponente, die Ihnen die Erstellung und Verwaltung von Backups sehr erleichtert. Diese hat den Namen JoomlaPack. Dieses Sicherungsprogramm behält Dateibesitzer und -berechtigungen bei. Es ist auf der DVD im Verzeichnis Erweiterungen/Backup zu finden. Die Webseite der Erweiterung können Sie unter http://www.joomlapack.net besuchen. Nach der Installation können Sie die Sicherungskomponente über den Menüpunkt Komponenten • JoomlaPack aufrufen (Abbildung 29.1).

Super Administrator nötig

Die Sicherungskomponente ist nur für Benutzer mit Super Administrator-Rechten zugänglich.

188

Page 189: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 29.1 JoomlaPack

Bevor Sie die erste Sicherung durchführen, sollten Sie einige Einstellungen vornehmen. Gehen Sie dazu in die Options. Hier können Sie zwei Pfade einstellen. Im Temporären Verzeichnis werden Daten zwischengespeichert, im Ausgabeverzeichnis wird die Sicherungsdatei erzeugt und ausgegeben. Sie werden mir sicher zustimmen, dass diese Datei besonders geschützt werden muss, enthält sie doch die Daten der gesamten Seite, inklusive abgesperrter Bereiche und der gesamten Benutzerinformationen. Daher ist es nicht ratsam, diese Sicherung in einem Ordner abzulegen, auf den jedermann aus dem Web heraus zugreifen kann. Wenn Sie die Möglichkeit haben, sollten Sie hier Verzeichnisse wählen, die außerhalb des Webordners liegen. Einige Hoster lassen dies aber nicht zu. In diesem Fall sollten Sie das gewählte Verzeichnis zumindest per .htaccess-Datei sichern. Egal, wie Sie die Verzeichnisse einrichten, wichtig ist, dass diese für den Webserver beschreibbar sind. Ob das der Fall ist, können Sie links in den Bereichen Übersicht und Details sehen.

Wenn Sie bestimmte Verzeichnisse, Dateien oder Datenbanktabellen nicht sichern wollen, können Sie diese im Control Panel über die entsprechend beschrifteten Symbole markieren.

Jetzt können Sie mit der Sicherung beginnen. Gehen Sie dazu auf Jetzt sichern (oder den Reiter Backup now). Hier haben Sie zwei Möglichkeiten: Sie können die Ganze Seite sichern oder nur die Datenbank sichern. Mit einem Klick auf den entsprechenden Link wird das Backup gestartet. Es erscheint ein Statusfenster, das Sie über den Fortschritt informiert und eine Meldung erzeugt, wenn der Vorgang abgeschlossen ist (Abbildung 29.2).

Wundern Sie sich nicht, wenn der Sicherungsprozess eine paar Minuten oder länger in Anspruch nimmt.

Fehlermeldungen

Reißt der Informationsfluss von Server zum Browser während der Sicherung

189

Page 190: Joomla 1 5 Handbuch

ab, so meldet JoomlaPack einen Fehler. Dennoch wird die Sicherung weiter ausgeführt. Warten Sie auf alle Fälle, bis ein Haken vor Die Sicherung ist abgeschlossen erscheint, und überprüfen Sie dann das Backup.

Hier klicken, um das Bild zu vergrößern

Abbildung 29.2 Die Sicherung ist abgeschlossen.

Backup im Backup …

Vorsicht, wenn Sie Backups unterhalb des Joomla!-Ordners erstellen. Den entsprechenden Ordner müssen Sie auf alle Fälle aus dem Backup-Prozess ausschließen, ansonsten kann es passieren, dass die Wiederherstellung nicht mehr möglich ist.

Die fertigen Backups können Sie im Bereich Sicherungen verwalten herunterladen. Das sollten Sie auch tun, denn eine Regel in Sachen Datensicherung besagt, dass die Sicherungsdateien auf einem physikalisch separaten Rechner liegen, um beispielsweise Festplattencrashs auszuschließen.

Öffnen Sie die Zip-Datei

Es wird gelegentlich berichtet, dass sich die heruntergeladenen Zip-Archive nicht öffnen lassen. Sie sollten das daher gleich nach dem Download überprüfen und das Backup gegebenenfalls neu erstellen.

Um Backups wieder herzustellen, entpacken Sie das Zip-Archiv und kopieren die Inhalte an den Ort der alten Seite. Die alten Dateien sollten Sie zuvor löschen. Dann rufen Sie die Seite auf. Sie gelangen in einen Installationsmodus, der so ähnlich aussieht wie der Dialog bei der Installation.

190

Page 191: Joomla 1 5 Handbuch

Geben Sie dort die gewünschten Informationen ein, insbesondere die zur Datenbankanbindung. Dann wird die Seite automatisch wieder hergestellt.

Wenn es nicht weitergeht

Es kann vorkommen, dass der Wiederherstellungsprozess nach der Eingabe der Datenbank stockt. Sie können den nächsten Schritt aufrufen, indem Sie am Ende der URL den Parameter task=db gegen task=config austauschen.

Der Wiederherstellungsprozess kann noch einfacher gestaltet werden. Dazu brauchen Sie den Kickstart von JoomlaPack, den Sie auf der DVD unter erweiterungen/joomlapack finden. Kopieren Sie statt des entpackten Backup-Archivs nur die gezippte Backup-Datei und die Datei kickstarter.php in Ihren Webordner. Rufen Sie dann die URL

http://pfad/zu/joomla/kickstart.php

auf. Nun können Sie auswählen, welches Backup Sie entpacken wollen (falls Sie mehrere hochgeladen haben). Der Kickstarter entpackt das Archiv und achtet dabei darauf, dass .htaccess-Dateien erst erstellt werden, nachdem der Installationsprozess erfolgreich war (siehe Abbildung 29.3).

Hier klicken, um das Bild zu vergrößern

Abbildung 29.3 Der Kickstart

.htaccess und die Installation

Diese Dateien schützen bestimmte Ordner im Netz vor unbefugtem Zugriff. Bei der Wiederherstellung eines Backups kann es dadurch jedoch zu Problemen kommen.

Nachdem der Kickstart die Dateien entpackt hat, wird eine Meldung ausgegeben, die zwei Links enthält. Klicken Sie auf den ersten Link, startet der oben beschriebene Installationsdialog in einem separaten Fenster.

191

Page 192: Joomla 1 5 Handbuch

Schließen Sie den Kickstart nicht, den brauchen wir noch. Gehen Sie durch den Installationsdialog. Nachdem das Backup hergestellt worden ist, gehen Sie zurück in das Fenster des Kickstarters und klicken auf den zweiten Link. Dann werden die überflüssigen Archiv-Dateien gelöscht und die .htaccess-Dateien wieder aktiviert.

Hier klicken, um das Bild zu vergrößern

Abbildung 29.4 Nach dem Entpacken

Sie können JoomlaPack auch nutzen, um eine Seite auf einem anderen Server zu installieren. Mithilfe des Kickstarters können Sie ein Backup an jedem beliebigen Ort einspielen, vorausgesetzt, Sie haben eine Datenbank zur Verfügung.

30 ToolsIn diesem Kapitel wollen wir Ihnen ein paar Helferlein vorstellen, die die tägliche Arbeit mit Joomla! ein wenig erleichtern. Betrachten Sie es als Panoptikum, das Ihnen die Highlights zeigt, ohne Anspruch auf Vollständigkeit zu erheben.

30.1 Editor: JCE

Bei der Standardinstallation bringt Joomla! bereits den Editor TinyMCE mit. Es gibt jedoch noch eine Reihe anderer WYSIWYG-Editoren, die Sie zusätzlich einbinden können, z. B. den JoomlaFck oder EditArea. Diese Programme sind sich im Prinzip sehr ähnlich, doch jeder Editor hat seine »Spezialität«, die für Sie von Interesse sein könnte.

Wir möchten Ihnen hier den JCE vorstellen. Er ist wesentlich komfortabler als TinyMCE in der Handhabung der Funktionen, z. B. indem er Sie beim Einfügen von Bildern mit einem Durchsuchen-Fenster unterstützt. Zudem bietet er Ihnen einige zusätzliche Formatierungsbefehle und die Möglichkeit, Dateien hochzuladen.

192

Page 193: Joomla 1 5 Handbuch

Seine Besonderheit versteckt sich im Verlinkungsdialog, denn hier können Sie nicht nur Verbindungen zu anderen Seiten im WWW einstellen, sondern auch Links zu den Artikeln im gleichen Joomla!-System. Die aktuelle Version dieses Editors ist 1.5.

30.1.1 Installation

Holen Sie sich die Datei plg_jce_151.zip, und installieren Sie das Plug-in über den Menüpunkt Installieren/Deinstallieren. Zudem benötigen Sie die Konfigurationskomponente com_jce_150.zip, die Sie ebenfalls installieren müssen. Sie sollten den Editor nun in der Plug-in-Liste sehen können, und im Komponenten-Menü gibt es einen neuen Eintrag: JCE Administration. Der nächste Schritt ist die Umstellung des (Standard)-Editors auf den JCE. Dazu gehen Sie in die Konfiguration und stellen die Vorgabe für WYSIWYG-Editor auf Editor – JCE 1.5.1 um. Damit steht der Editor allen berechtigten Usern sowohl im Frontend als auch im Backend zur Verfügung. Sie haben außerdem die Möglichkeit, einem Nutzer individuell einen anderen Editor zur Verfügung zu stellen. Diese Funktion finden Sie in der Bearbeitungsansicht der einzelnen User.

Wollen Sie den Editor auf Deutsch nutzen, so müssen Sie noch die entsprechenden Sprachdateien einspielen. Gehen Sie dazu auf Komponenten • JCE Administrator • Install, und laden Sie dort im Feld Paketdatei die Datei langpack_de_jce15_RC1.zip hoch.

Nicht komplett

Die deutsche Übersetzung war zum Zeitpunkt der Drucklegung dieser Auflage nicht vollständig verfügbar.

30.1.2 Unterschiede zum TinyMCE

Der JCE besitzt sehr viele Funktionen, die wir schon in unserer Beschreibung des TinyMCE (Abschnitt 3.3) erläutert haben. Wir werden daher gezielt auf die Besonderheiten des neuen Editors eingehen.

Werfen wir einen Blick auf die Symbolleisten von JCE (Abbildung 30.1).

193

Page 194: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 30.1 Die Symbolleisten des JC-Editors

Sie haben sicherlich bemerkt, dass das Look & Feel der Oberfläche dem von TinyMCE sehr ähnlich ist: Das liegt daran, dass beide den gleichen Editor als Grundlage nehmen.

Aber Sie finden einige neue Befehle (vgl. Tabelle 30.1).

Tabelle 30.1 Zusätzliche Funktionen im JCE

Symbol Funktion

Format des markierten Textes, beispielsweise als vorformatierter Text, der in Schreibmaschinenschrift dargestellt wird.

Hintergrundfarbe

Soll die Formatierung des Textes anzeigen, hat aber momentan keine sichtbaren Auswirkungen.

Sollte eigentlich die Microsoft-Tags aus einem in Word erstellten HTML-Text entfernen. Hat in der jetzigen Version noch einige Tücken …

Rechtschreibprüfung. Ist leider nur in Englisch verfügbar.

Drucken

Vorschau

Anmerkungen zum markierten Text. Diese werden angezeigt, wenn man mit der Maus über den Text geht.

Auch hier können Sie verschiedene Anmerkungen machen.

Bearbeitung der CSS-Eigenschaften des ausgewählten Elements

194

Page 195: Joomla 1 5 Handbuch

Attribute des HTML-Elements. Hier ist es auch möglich, JavaScript-Ereignisse zu definieren.

Link zum Weiterlesen einfügen.

Fügt ein geschütztes Leerzeichen (&nbsp;) ein.

Wie oben schon angedeutet wurde, befindet sich ein wichtiges Detail in der Verlinkung zu den eigenen Artikeln. Dazu betätigen Sie die Schaltfläche Link einfügen/bearbeiten. Danach öffnet sich ein Dialogfenster, in dem unter anderem alle Artikel der Homepage aufgelistet sind (Abbildung 30.2).

Hier klicken, um das Bild zu vergrößern

Abbildung 30.2 Möglichkeit der Verlinkung zu anderen Artikeln

Sie können nun einen beliebigen Text aussuchen und verlinken. Wenn Sie sich das Ergebnis in HTML ansehen, werden Sie verstehen, dass es wesentlich mühsamer wäre, den Pfad zu dem Artikel herauszusuchen und anzugeben:

<a href="index.php?option=com_content&amp;view=article&amp;id=9: 1-million-laecheln&amp;catid=1:aktuelle-nachrichten&amp;Itemid=50">

Auch das Einfügen von Bildern ist stark vereinfacht. Wenn Sie auf die Schaltfläche Bild einfügen/bearbeiten klicken, gelangen Sie in den entsprechenden Dialog (Abbildung 30.3).

195

Page 196: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 30.3 Bilder einfügen

Aus diesem Dialog heraus können Sie Bilder nicht nur auswählen, sondern auch direkt hochladen. Betätigen Sie dazu die Schaltfläche .

In einem Dialogfenster (Abbildung 30.4) können Sie nun festlegen, welche Datei(en) Sie hochladen möchten. Erledigen Sie dies komfortabel über den Add File-Button.

Hier klicken, um das Bild zu vergrößern

Abbildung 30.4 Das Hochladen einer Datei

31 Standard-Erweiterungen

196

Page 197: Joomla 1 5 Handbuch

Dass Joomla! eine ganze Reihe von Erweiterungen mitbringt, wissen Sie bereits seit Kapitel 9, »Module, Plug-ins, Komponenten«. Dort haben wir einen Rundgang gemacht, die verschiedenen Typen besprochen und einige Module, Plug-ins und Komponenten als Beispiele angesehen. In diesem Kapitel folgt eine systematische Beschreibung aller restlichen Erweiterungen. Hier finden Sie viel Funktionalität, aber auch viel Detail. Wenn Sie also an einzelnen Erweiterungen nicht interessiert sind, können Sie diese getrost überspringen und die entsprechenden Passagen später bei Bedarf nachschlagen.

31.1 Module

Bei den Modulen finden sich einige Anzeigeelemente, die insbesondere Ihre Startseite um viele zusätzliche Informationen bereichern und die Navigation erleichtern können. Alle nicht aufgeführten Module wurden entweder schon erwähnt oder sind eigentlich Menüs.

31.1.1 Banner

Dieses Modul dient zur Anzeige von Werbebannern. Es spielt eng mit der Banners-Komponente zusammen und wurde in diesem Zusammenhang bereits in Abschnitt 9.3.1, »Banner«, besprochen.

31.1.2 Syndication

Syndicates oder Newsfeeds sind Zusammenfassungen Ihrer Seite, die mit einer entsprechenden Lesesoftware (z. B. FeedReader) abgerufen werden können. Dabei wird der Inhalt der Startseite in ein XML-Dokument umgewandelt, das einem bestimmten Standard entspricht. Diese Umwandlung wird in Joomla! von einer Komponente vorgenommen. Damit die Besucher Ihrer Webseite allerdings wissen, unter welcher URL die Newsfeeds zu finden sind, gibt es das Syndication-Modul, das diese anzeigt.

Tabelle 31.1 Syndication

Detail Bedeutung

Text Wird neben dem Feed-Symbol ausgegeben.

197

Page 198: Joomla 1 5 Handbuch

FormatHier können Sie wählen, ob der Feed im Format RSS 2.0 oder Atom 1.0 ausgegeben werden soll. In der Darstellung ergeben sich kaum Unterschiede.

Zahl der Feedeinträge

Die Anzahl der Einträge, die beim Feed erzeugt werden, können Sie in der Konfiguration unter Site • Site-Einstellungen • Feedlänge festlegen.

31.1.3 Statistik

Wenn Sie ein Fan von Zahlen und harten Fakten sind, können Sie das Statistik-Modul aktivieren. Hier finden Sie Angaben über den Server, auf dem Joomla! läuft, sowie über das System selbst und die Anzahl der Seitenaufrufe.

Tabelle 31.2 Details für Statistiken

Detail Bedeutung

ServerinfoZeigt Informationen über das Betriebssystem, die PHP- und MySQL-Version, die Zeit und den Status von GZip (Packprogramm) und das Caching auf dem Server.

SeiteninfoZeigt die Anzahl der Mitglieder, Inhalte und Weblinks der Seite.

ZugriffszählerZeigt die Anzahl der Besucher, die sich bisher angemeldet haben.

Zähler hochsetzen

Gibt an, um wie viel der Zähler pro Besucher erhöht werden soll. Über Sinn und Unsinn dieser Option lässt sich streiten.

31.1.4 Archiv

Das Modul Archiv stellt im Frontend einen nach Monaten geordneten Zugriff auf Inhalte dar, die ins Archiv (siehe Abschnitt 5.1, »Neue Inhalte einfügen«) übernommen wurden.

198

Page 199: Joomla 1 5 Handbuch

31.1.5 Bereiche

Das Modul Bereiche zeigt eine Liste aller Bereiche an, die auf der Seite verfügbar sind. Bereiche, die für den aktuellen User nicht erlaubt sind, werden auch nicht angezeigt, es sei denn, Sie haben die Option Nicht zugängliche Links anzeigen aktiviert.

31.1.6 Verwandte Beiträge

Das Modul Verwandte Beiträge zeigt eine Liste mit Inhalten, die die gleichen Schlüsselwörter enthalten wie das aktuelle Element. Diese Schlagwörter werden in den jeweiligen Beiträgen im Bereich Metadaten im Feld Schlüsselwörter vergeben.

31.1.7 Wrapper

Mit dem Modul Wrapper haben Sie die Möglichkeit, den Inhalt anderer Webseiten in Ihre Seite einzubinden. Das Modul erzeugt dazu einen sogenannten IFrame, in dem die Seite angezeigt wird, die sich hinter der angegebenen URL befindet. Ein IFrame ist ein abgeschlossener Bereich innerhalb einer Webseite, in den eigene Inhalte geladen werden können.

Tabelle 31.3 Wrapper einstellen

Detail Bedeutung

URLDie Adresse der Webseite, die angezeigt werden soll. Wenn Sie die Option Protokoll hinzufügen nicht gesetzt haben, müssen Sie hier »http://« oder »https://« voranstellen.

ScrollbalkenGibt an, ob der IFrame mit Scrollbars ausgestattet werden soll. Autom. legt fest, dass dies nur geschieht, wenn Scrollbars wirklich benötigt werden.

Breite

Geben Sie hier die Breite des IFrames absolut in Pixel oder relativ in Prozent (mit nachfolgendem %) an. Relative Angaben beziehen sich auf den enthaltenden Bereich, d. h. in unserem Fall auf das <div>-Element, das den IFrame enthält.

199

Page 200: Joomla 1 5 Handbuch

Höhe Geben Sie hier die Höhe des IFrames ein (siehe Breite).

Autom. HöhePasst die Höhe an die tatsächliche Höhe der anzuzeigenden Seite an. Funktioniert nur in einigen Versionen.

Protokoll hinzufügen

Ist diese Option aktiviert, wird vor die URL automatisch »http://« gesetzt.

ZielnameHier können Sie den Namen des IFrames festlegen. Das ist dann hilfreich, wenn Sie diesen von außen steuern wollen, beispielsweise per JavaScript.

Vorsicht: Performance-Bremse

Das Einbinden fremder Inhalte in die eigene Seite verlangsamt den Seitenaufbau signifikant.

31.1.8 Umfragen

Das Modul Umfragen dient als Frontend für die Umfragen-Komponente, die bereits in Abschnitt 9.3.4, »Umfragen«, besprochen wurde. Haben Sie mehrere Umfragen erstellt, so können Sie im Feld Umfrage aus einer Dropdown-Liste bestimmen, welche genau in diesem Modul angezeigt werden soll.

31.1.9 Wer ist online

Dieses Modul zeigt eine Liste der User an, die gerade im System arbeiten. Der Parameter Anzeige bestimmt dabei, ob nur die Anzahl der User, nur die Namen der angemeldeten User oder beides angezeigt werden soll.

31.1.10 Zufallsbild

Mit dem Modul Zufallsbild haben Sie die Möglichkeit, ein zufällig aus einem Verzeichnis ausgewähltes Bild anzeigen zu lassen.

200

Page 201: Joomla 1 5 Handbuch

Tabelle 31.4 Parameter für Zufallsbilder

Detail Bedeutung

BildtypHier müssen Sie angeben, welchen Typ das anzuzeigende Bild haben soll. Beispiele sind »JPG« oder »GIF«.

Bildverzeichnis

Die Bilder werden aus diesem Ordner geladen. Der Pfad muss dabei relativ zum Verzeichnis der Joomla!-Installation angegeben werden. Ein Beispiel wäre images/stories.

LinkDiese URL wird aufgerufen, wenn das angezeigte Bild angeklickt wird.

Breite (px) Geben Sie hier die Breite des Bildes an.

Höhe (px) Geben Sie hier die Höhe des Bildes an.

31.1.11 Schlagzeilen

Diese Erweiterung zeigt Beiträge aus einer bestimmten Kategorie an. Dies kann auch zufällig geschehen. Daher eignet sich dieses Modul gut für die Startseite, um den Besucher auf bestimmte Inhalte aufmerksam zu machen, ohne dabei eintönig zu werden.

Tabelle 31.5 Schlagzeilen konfigurieren

Detail Bedeutung

KategorieDie Kategorie, aus der die Inhalte ausgewählt werden sollen.

Layout

Die Ausgabe kann entweder vertikal oder horizontal erfolgen. Daneben ist es möglich, zufällig einen einzigen Inhalt auswählen zu lassen (Einen Beitrag zufällig wählen).

Bilder anzeigenGibt an, ob die Bilder, die in einem Inhaltselement enthalten sind, angezeigt werden sollen.

Verlinkte Titel Wenn eingeschaltet, dann kann man die angezeigten

201

Page 202: Joomla 1 5 Handbuch

Inhalte über einen Klick auf den Titel aufrufen. Achtung: Dazu muss natürlich die Anzeige der Titel eingeschaltet werden (siehe Beitragstitel).

Letztes Trennelement anzeigen

Legt fest, ob nach dem letzten Beitrag noch eine Trennlinie ausgegeben werden soll.

Weiterlesen-LinkGibt an, ob der mehr-Link angezeigt wird, mit dem der Rest des Inhalts (der Haupttext) ausgegeben werden kann.

Beitragstitel Bestimmt, ob der Titel mit angezeigt werden soll.

Anzahl der Beiträge

Hier bestimmen Sie die Anzahl der Elemente, die berücksichtigt werden. Dies gilt auch für die Zufallsausgabe. Wenn Sie keinen Wert eingeben, werden alle Elemente mit einbezogen.

31.1.12 Neueste Nachrichten und Meist gelesen

In diesem Modul werden die Titel der neuesten (»Neueste Nachrichten«) bzw. beliebtesten (»Meist gelesen«) Inhaltselemente ausgegeben, sofern sie noch aktuell sind.

Tabelle 31.6 Neueste Nachrichten und Meist gelesen

Detail Bedeutung

ReihenfolgeLegt fest, ob der Zeitpunkt der Erstellung oder der Zeitpunkt der letzten Änderung maßgeblich für die Sortierung der Beiträge ist.

Autoren

Hier bestimmen Sie, ob alle Beiträge in die Anzeige einbezogen werden oder nur die des angemeldeten Benutzers (mit Zugefügt oder von mir geändert) bzw. nur die der anderen Benutzer (mit Nicht zugefügt oder von mir geändert).

Startseitenbeiträge

Hier haben Sie die Möglichkeit, (mit Verstecken) Elemente auszublenden, die ohnehin schon auf der

202

Page 203: Joomla 1 5 Handbuch

Startseite angezeigt werden.

Kategorie-ID

Wenn Sie nur Inhalte aus einer oder mehreren Kategorien ausgeben wollen, dann können Sie hier die ID angeben. Diese finden Sie in der Kategorieverwaltung unter Kategorie-ID. Mehrere IDs können Sie durch Kommas getrennt angeben.

Bereich-ID Wie oben, nur für Bereiche.

31.1.13 Suche

Das Modul Suche zeigt Ihnen, wie der Name schon sagt, ein Suchfeld an, mit dem Sie die Seite nach bestimmten Begriffen durchsuchen können. Wenn Sie nach einem Begriff suchen, wird Ihnen im Inhaltsbereich eine Liste mit Titeln der Seiten angezeigt, die den Suchbegriff enthalten. Die entsprechende Passage wird mitangezeigt, wobei das Suchwort jeweils hervorgehoben ist.

Tabelle 31.7 Suche konfigurieren

Detail Bedeutung

Boxbreite Gibt die Breite des Suchfeldes an.

Text

Hier können Sie das Suchfeld mit einem Text vorbelegen, z. B. »Geben Sie hier einen Suchbegriff ein«. Dieser Text verschwindet, wenn Sie auf das Feld klicken.

Suchen-SchaltflächeSoll ein Knopf zum Starten der Suche angezeigt werden? Wenn nicht, dann kann die Suche nur mit der -Taste gestartet werden.

SchaltflächenpositionenLegen Sie hier die Position des Such-Buttons in Bezug auf das Suchfeld fest.

Suchen-Schaltfläche als Bild

Wenn man hier Ja wählt, so wird ein Bild als Such-Button verwendet. Dieses muss den Namen searchButton.gif haben und im Verzeichnis images/M_images liegen.

203

Page 204: Joomla 1 5 Handbuch

Schaltflächentext Dieser Text erscheint auf dem Such-Button.

31.1.14 Fußzeile

Das Modul Fußzeile gibt am Ende der Seite (Position »footer«) die Copyright-Information von Joomla! aus, die in Abbildung 31.1 dargestellt ist.

Hier klicken, um das Bild zu vergrößern

Abbildung 31.1 Die Fußzeile

Sie dürfen diesen Hinweis gemäß der Lizenz von Joomla! ohne weiteres entfernen, da nur die Software selbst, nicht aber die erzeugten Ausgaben unter der GPL liegen.

31.1.15 Navigationspfad

Anzeige eines Pfades durch die Seitenhierarchie von der Startseite bis zur aktuellen Seite. Jedes Element ist anklickbar und ermöglicht so eine einfache Navigation zurück in die übergeordneten Bereiche.

Hier klicken, um das Bild zu vergrößern

Abbildung 31.2 Der Navigationspfad

Das Modul bietet Ihnen einige Konfigurationsmöglichkeiten, um Ihren Benutzern die Übersicht zu erleichtern.

Tabelle 31.8 Den Navigationspfad konfigurieren

Detail Bedeutung

Startseite anzeigen

Legt fest, ob die Startseite als Element mit in den Pfad aufgenommen werden soll.

Text für die Dieser Text wird als Link für die Startseite verwendet.

204

Page 205: Joomla 1 5 Handbuch

Startseite

Letztes Element

Legt fest, ob das aktuell dargestelte Element mit in den Pfad aufgenommen werden soll. Ist hier nichts angegeben, so wird »>>« als Trennzeichen verwendet.

TrennzeichenDieses Zeichen wird zwischen den einzelnen Hierarchiestufen angezeigt.

32 MehrsprachigkeitGerade im Netz, das ja symbolisch dafür steht, dass die Welt zusammenwächst, besteht der Bedarf, eine Homepage nicht nur einem lokalen Publikum zugänglich zu machen. Im deutschen Sprachraum wird man vielfach auch versuchen, zumindest eine englische Version der Seite zur Verfügung zu stellen, um die internationalen Internetnutzer zu erreichen. Bei einer Übersetzung von dynamischen Seiten sind drei Bereiche betroffen:

Alle Inhalte, die von den Redakteuren in die Seite eingepflegt wurden, müssen übersetzt werden. Dabei ist es ratsam, zumindest eine Übersicht zu haben, welche Inhalte noch zu bearbeiten sind.

Die Ausgaben, die vom System generiert werden, wie beispielsweise Servicemeldungen oder Beschriftungen von Buttons und Funktionen, müssen in der jeweiligen Zielsprache ausgegeben werden.

Wenn Sie Erweiterungen von Drittanbietern verwenden, müssen auch diese Mehrsprachigkeit unterstützen.

Daneben ist es nötig, dass der Besucher seine Sprache auf der Titelseite über ein Auswahlfeld bestimmen kann.

32.1 Joom!Fish einrichten

Glücklicherweise gibt es eine Komponente, die diese Aufgaben für uns erledigt. Sie wurde in Anlehnung an einen berühmten Übersetzungsdienst Joom!Fish genannt und ist auf der DVD im Verzeichnis Erweiterungen/Joomfish zu finden.

205

Page 206: Joomla 1 5 Handbuch

Die Komponente ist mittlerweile mit einem komfortablen Installer ausgestattet. Früher mussten Sie viele Einzelkomponenten installieren, jetzt reicht es aus, die Datei jf2.0package_rc.zip einzuspielen. Wenn Sie Joom!Fish mit deutschem Backend betreiben wollen, installieren Sie zusätzlich das Sprachpaket JoomFish German Language.zip, ebenfalls über den Installationsassistenten.

Die Ausgabe der Systemmeldungen im Frontend wird über die Sprachverwaltung gesteuert, die Sie im Menü über Erweiterungen • Sprachen aufrufen können. Hier können Sie die Seitensprache einstellen und neue Sprachen installieren (vgl. Abschnitt 10.2, »Länder und Sprachen«). Die Sprachen, die dort vorhanden sind, dienen als Grundlage für den Joom!Fish. Daher ist auch die Sprache, die hier eingestellt wird, standardmäßig diejenige, in die Joom!Fish die Seite übersetzt.

Rufen Sie nun das Kontrollzentrum des Joom!Fish im Menü über Komponenten • Joom!Fish auf (Abbildung 32.1).

Hier klicken, um das Bild zu vergrößern

Abbildung 32.1 Das Joom!Fish-Kontrollzentrum

33 SuchmaschinenoptimierungBei der Fülle von Internetseiten, die mittlerweile online sind, reicht es nicht mehr aus, einfach nur gute Inhalte zu haben und ein paar Freunde darüber zu informieren. Man will ja schließlich gesehen werden! Zentraler Dreh- und Angelpunkt für die Generierung von Aufmerksamkeit für die eigene Seite sind die Suchmaschinen, oder – um das Kind beim Namen zu nennen – momentan im deutschsprachigen Raum vor allem Google. Um dort auf einen guten Platz zu kommen, ist viel Geduld und Geschick notwendig. Wenn Sie jedoch einige Regeln beachten, so haben Sie gute Chancen, die Zahl der Besucher Ihrer Seite deutlich zu erhöhen.

206

Page 207: Joomla 1 5 Handbuch

33.1 Suchmaschinenlogik

Die schier unglaubliche Masse von mittlerweile über 150.000.000 Webseiten kann durch intellektuelle, also durch Menschen erstellte Kataloge nicht mehr erschlossen werden. Der Schlüssel zu einer immer noch vorhandenen Zugänglichkeit der Seiten sind die Suchmaschinen, die Tag und Nacht unermüdlich das Web durchforsten und die Inhalte zutage bringen.

Suchmaschinen wie Google oder Yahoo! bestehen vereinfacht gesagt aus zwei Komponenten: zum einen natürlich aus einer Komponente, nennen wir sie den Rechercheur, die Suchanfragen entgegennimmt, in das riesige Archiv der Internetseiten geht und über mehr oder minder intelligente Vergleiche und Schlussfolgerungen eine Zahl von Seiten zurückbringt, von denen sie glaubt, sie seinen für den Fragenden relevant. Die Algorithmen, mit denen diese Vergleiche angestellt werden, sind das am besten gehütete Geheimnis der Suchmaschinenbetreiber, da sie über die Qualität der Suchergebnisse entscheiden.

Zum anderen gibt es die Crawler, Robots oder Spider, die sich über registrierte Domains und die dort gesetzten Links von Seite zu Seite hangeln, die Inhalte herunterladen, analysieren und so abspeichern, dass die Recherche-Komponente sie schnell und effizient verarbeiten kann.

Beide Teile der Suchmaschine bestehen nur aus bestimmten, vorhersehbaren Verarbeitungsregeln. In den Anfangszeiten dieser Programme war es daher relativ leicht, die Bewertungskriterien für die Relevanz einer Seite zu manipulieren und dadurch ein gutes Ranking, also einen guten Platz in der Trefferliste zu einem bestimmten Stichwort, zu erlangen. Dadurch wurden die Suchergebnisse jedoch wieder schlechter und die Ergebnisse durch Suchmaschinen-Spam verwässert. Die Suchmaschinenbetreiber erfanden neue, effizientere Mechanismen. Und so sind die Algorithmen von Google, Yahoo! und Co. mittlerweile sehr effizient. Um ein gutes Ranking zu erhalten, müssen Sie tatsächlich qualitativ guten Inhalt bereitstellen. Das ist die Faustregel. Daneben gibt es einige Bereiche, von denen bekannt ist, dass die Crawler sie besonders beachten. Diese werden im folgenden Abschnitt aufgeführt. Sie nicht zu beachten, heißt, dem Erfolg der Webseite unnötige Steine in den Weg zu legen. Aber klar ist auch: Es gibt keine Garantie, dass die folgenden Tipps zum gewünschten Erfolg führen. Das liegt allein in der Hand der Suchmaschinenbetreiber.

33.1.1 Keywords

207

Page 208: Joomla 1 5 Handbuch

Das A und O einer erfolgreichen Optimierung der Seiteninhalte für Suchmaschinen ist die Kenntnis der Suchbegriffe, unter denen Ihre Seite gefunden werden soll. Was gibt ein Besucher in das Suchfeld ein? Wenn Sie beispielsweise eine Seite zum Thema »Tanzen« haben, kann es sein, dass die meisten Leute nach »Salsa tanzen« suchen. Haben Sie also einen Beitrag zu diesem Thema, erhöht das die Wahrscheinlichkeit, gefunden zu werden.

Hier klicken, um das Bild zu vergrößern

Abbildung 33.1 Das Google-Keyword-Tool

Um sich über Suchwortkombinationen zu informieren, stehen einige Dienste im Netz zur Verfügung. Einer davon kommt direkt von Google und kann unter dieser URL aufgerufen werden:

https://adwords.google.de/select/KeywordToolExternal

Wenn Sie dort nach »joomla« suchen, stellen Sie fest, dass viele Suchanfragen zum Thema »Template« stattfinden. Es lohnt sich also, dazu einen Beitrag auf Ihrer Seite zu schreiben.

33.1.2 On-Page-Optimierung: Inhalt

Optimierung kann an mehreren Stellen ansetzen. Von On-Page-Optimierung spricht man, wenn auf der Seite selbst Maßnahmen getroffen werden, die die Auffindbarkeit verbessern. Zunächst sollten Sie Ihre Seite inhaltlich fit für die Suchmaschinen machen. Die inhaltliche Gestaltung einer Seite ist die Basis für eine Indizierung durch den Robot.

Dieser sucht nach verschiedenen Anhaltspunkten, um die Seite einzuordnen:

Suchmaschinen neigen dazu, einen Artikel mit einem Keyword zu assoziieren. Vermeiden Sie also, thematisch auf einer Seite zu

208

Page 209: Joomla 1 5 Handbuch

springen. Vielmehr sollten Sie versuchen, sich auf ein Konzept zu konzentrieren.

Der Seitentitel (im <TITLE>-Tag) sollte aussagekräftig sein und zum Thema der Seite passen. Klar ist, dass es nicht zielführend ist, eine Seite über »Tanzen« mit »Motorsport« zu überschreiben.

Ähnliches gilt für die Überschriften. So sollten Sie das <H1>-Tag nur einmal auf der Seite verwenden und dort auch eine aussagekräftige Bezeichnung eingeben.

Der Text eines Beitrags sollte eine vernünftige Länge aufweisen. Als Faustregel gelten fünf Absätze. Hier ist es möglich, wichtige Wörter kursiv oder fett hervorzuheben.

Vermeiden Sie doppelte Inhalte, und kopieren Sie schon gar nicht von anderen Seiten. Das wird von den Suchmaschinen mit einem Malus bestraft und schiebt Sie auf die hinteren Ergebnisseiten. Dazu zählen leider auch doppelte Domainnamen, beispielsweise la-joomla.de und lajoomla.de, wenn diese nicht sauber über Umleitungen (Redirects) aufeinander bezogen werden.

Generell sollten Ihre Texte so gestaltet sein, dass sie nicht nur Suchmaschinen, sondern vor allem Ihre Besucher überzeugen.

33.1.3 On-Page-Optimierung: Technisches

Einige Eigenschaften Ihrer Seite, die nicht direkt Einfluss auf den darstellbaren Inhalt haben, sind dennoch bedeutend für die Suchmaschinen. Hier gibt es einiges zu beachten:

Verwenden Sie sprechende URLs statt kryptischer PHP-Parameter. Am besten ist im Pfad der URL schon das eine oder andere Keyword mit enthalten.

Vermeiden Sie doppelte Inhalte. Sollten Sie Seiten umgezogen haben oder eine alternative Webadresse verwenden wollen, so gehen Sie wie folgt vor: Bestimmen Sie eine der Seiten als maßgebliche Seite für den Suchindex. Von den anderen Seiten leiten Sie mithilfe des Fehlercodes 301 (Redirect permanent) auf die Zielseite um.

Versteckte Inhalte im <Body>-Bereich sind Gift für das Ergebnisranking und führen mittlerweile bei einigen Suchmaschinenbetreibern zum Ausschluss aus der Trefferliste. Also: Verwenden Sie keine weiße Schrift auf weißem Hintergrund, keine Divs, die über Keyword-Listen liegen, etc. Diese Tricks kennen die Suchmaschinen mittlerweile.

209

Page 210: Joomla 1 5 Handbuch

Verwenden Sie keine Bilder, um die Texte in der Navigation darzustellen. Diese können von den Robots nicht gelesen werden. Wenn Sie Bilder verwenden, statten Sie diese mit Alternativ-Texten aus.

Meta-Tags haben mittlerweile nicht mehr die Bedeutung für die Beschreibung einer Seite, die sie schon mal hatten. Dennoch wird beispielsweise der Bereich aus <Description> bei Google in der Trefferliste mit angezeigt. Es lohnt sich also schon deshalb, dieses Tag zu setzen.

Verwenden Sie beim Aufbau Ihrer Seite sauberes HTML-Markup. Kennzeichnen Sie beispielsweise Überschriften konsequent mit den <Hx>-Tags. Ein <div class=«heading«> wird von den Suchmaschinen nicht verstanden.

Achten Sie auf die interne Verlinkung. Robots steigen häufig auf der Startseite Ihrer Homepage ein und folgen den Links in die Seite hinein. Seiten, die Sie nicht indizieren wollen (beispielsweise das Impressum) können Sie mit dem Attribut rel=«nofollow« im Link versehen. Einige Robots verstehen dieses Attribut und folgen dem Link nicht.

33.1.4 Off-Page-Optimierung

Neben dem Erscheinungsbild und der Struktur der eigenen Seite ist für Suchmaschinen die »Nachbarschaft« von Bedeutung. Diese wird im Internet durch Links hergestellt. Dabei spielen sowohl eingehende als auch ausgehende Links eine Rolle. Links zu externen Seiten stellen eine thematische Beziehung mit Ihrer Seite her. Suchmaschinen nutzen diese zur Einordnung. Sparen Sie also nicht mit externen Links, am besten zu thematisch verwandten Webseiten.

Der weitaus schwierigere, aber auch wichtigere Part ist das Sammeln von Links. Je mehr Seiten auf die Ihre verlinken, desto höher wird diese von den Suchmaschinen eingestuft. Auch dabei sollten Sie darauf achten, dass diese Links von thematisch relevanten Seiten kommen. Zudem ist es hilfreich, wenn die verlinkenden Seiten selbst hoch bei den Suchmaschinen eingestuft sind.

34 StatistikJeder Webmaster hat ein großes Interesse daran, zu erfahren, wer die Homepage besucht, wann das erfolgt und welche Seiten besonders häufig aufgerufen werden. Dabei geht es nicht nur um die Eitelkeit herauszufinden,

210

Page 211: Joomla 1 5 Handbuch

wie beliebt die erstellte Seite ist. Vielmehr wird man die gewonnenen Informationen nutzen, um die Gestaltung der Seite an die Gruppe der Besucher und deren Interessen und Vorlieben anzupassen. Das kann beispielsweise dadurch geschehen, dass man wenig beachtete Seiten besser in den Vordergrund bringt, häufig aufgerufenen Bereichen eine besondere inhaltliche Tiefe gibt oder einfach die Seitendarstellung für die Browser optimiert, die von den Besuchern am häufigsten verwendet werden.

34.1 Joomla!-Funktionen

Joomla! bringt von Haus aus nur sehr wenig an statistischen Erhebungen mit. Im Backend-Modul Beliebt, das Sie auf der rechten Seite des Kontrollzentrums finden, sehen Sie die zehn Artikel Ihrer Homepage, die am häufigsten aufgerufen werden.

Hier klicken, um das Bild zu vergrößern

Abbildung 34.1 Die beliebtesten Seiten

Daneben finden Sie im Menü unter Komponenten den Punkt Suchen. Dort werden alle Suchbegriffe angezeigt, die auf Ihrer Homepage im Suchfeld eingegeben werden. Normalerweise ist die Suchstatistik deaktiviert. Sie können diese über das Symbol Einstellungen aber einschalten, indem Sie Suchstatistiken auf Ja umstellen. Wenn Sie nun ein paar Suchanfragen im Frontend stellen, können Sie sehen, wie sich die Statistik füllt (Abbildung 34.2).

Hier klicken, um das Bild zu vergrößern

211

Page 212: Joomla 1 5 Handbuch

Abbildung 34.2 Suchstatistik

Suchergebnisse anzeigen

Der Link Suchergebnisse anzeigen sollte Ihnen die Anzahl der Ergebnisse pro Suchanfrage zeigen. In der alten Version 1.5.6 erzeugt er jedoch lediglich eine Fehlermeldung.

35 PerformanceDie Ausführungsgeschwindigkeit von Joomla! hängt von sehr vielen Variablen ab, die nichts mit der Software selbst zu tun haben. Die Hardware, auf der der Server läuft, sowie die Durchsatzrate der Internetanbindung sind nur zwei Faktoren, die hier zu nennen sind.

Aber unabhängig von der Hardware gibt es einiges an Optimierungspotenzial, das man nutzen kann, um zu einer schnellen Seite zu kommen. Dabei kann man an mehreren Stellen ansetzen: auf dem Server, beim Client-Browser und bei der Verbindung. Diese Möglichkeiten wollen wir und im Folgenden systematisch ansehen.

35.1 Seitenaufbau

Eine Joomla!-Seite besteht nicht nur aus HTML-Code. Es werden Stylesheets, JavaScripts und zusätzliche Elemente wie Bilder und andere Medien geladen. Viele Elemente sind einer der größten Performance-Killer für Seiten.

Um herauszufinden, wie die Ladestruktur einer Seite aussieht, gibt es einige Analysetools. Als sehr hilfreich hat sich für die Autoren eine Erweiterung des Firefox-Browsers herausgestellt: Firebug. Diese finden Sie auf der beigefügten DVD unter tools/firebug.

Wie Sie mit Firebug umgehen, wird in Kapitel 13, »Tools zur Template-Erstellung«, ausführlich besprochen.

Ist die Komponente installiert, sehen Sie in der Statusleiste von Firefox ein neues Zeichen (Abbildung 35.1).

Hier klicken, um das Bild zu vergrößern

212

Page 213: Joomla 1 5 Handbuch

Abbildung 35.1 Das Firebug-Symbol

Klicken Sie auf dieses Symbol, dann öffnet sich die Erweiterung. Die Analyse der Netzwerkverbindungen ist standardmäßig deaktiviert. Um sie einzuschalten, gehen Sie auf den kleinen Pfeil neben Netzwerk und klicken auf Aktiviert. Wenn Sie nun die Joomla!-Seite neu laden, können Sie genau verfolgen, welche einzelnen Dateien beim Seitenaufbau geladen werden (Abbildung 35.2).

Hier klicken, um das Bild zu vergrößern

Abbildung 35.2 Die Analyse der Seite

Generell gilt: Je weniger Elemente eine Seite hat, desto schneller lässt sie sich laden. Hier einige Tipps, um die Anzahl der Elemente zu reduzieren:

Überprüfen Sie, ob wirklich alle Bilder, die Sie für die Gestaltung des Layouts verwenden, notwendig sind. Oftmals lassen sich die gleichen Effekte auch mit CSS-Elementen erreichen.

Fassen Sie CSS-Dateien zusammen. Auch wenn die Aufteilung auf mehrere Stylesheets übersichtlicher ist, sollten Sie überprüfen, ob wirklich separate Dateien notwendig sind. Das ist beispielsweise der Fall, wenn Sie CSS-Beschreibungen für spezielle Browser oder Ausgabemedien verwenden, nicht aber, um die Gestaltung von Farben von der Positionierung der Elemente zu trennen.

Ähnliches gilt für JavaScript. Ist es wirklich nötig, dass Sie für jede Funktion eine eigene Datei anlegen und laden?

Im Firebug lässt sich auch sehr effektiv prüfen, ob wirklich alle Dateien, die geladen werden sollen, auf dem Server vorhanden sind. Ist das nicht der Fall, wird die entsprechende Datei in Rot dargestellt, und Sie sehen im Statusfeld die Ausgabe »404 Not Found«. Diese Fehler sollten Sie dringend vermeiden, da sie unnötig Transferzeit beanspruchen. Geben Sie entweder eine korrekte Zieladresse an, oder löschen Sie den Aufruf aus dem Code.

213

Page 214: Joomla 1 5 Handbuch

Neben der Zahl der Elemente spielt selbstverständlich auch deren Größe eine Rolle. So können Sie Traffic einsparen:

Entfernen Sie Kommentare und unnötige Elemente aus dem HTML-Template.

Optimieren Sie Bilder für das Netz. Verkleinern Sie Bilder mithilfe eines Grafikprogramms auf die Größe, in der sie tatsächlich dargestellt werden. Verwenden Sie die Formate jpg, gif oder png mit einer passenden Kompressionsrate. Damit lassen sich Einsparungen von bis zu 90 % gegenüber unkomprimierten Bildern erzielen.

CSS-Dateien lassen sich komprimieren, indem man unnötige Zeilenumbrüche und Leerzeichen sowie Kommentare entfernt.

Um JavaScript-Dateien zu verkleinern, gelten dieselben Regeln wie für CSS. Zudem ist es möglich, lange Funktions- und Variablennamen durch kürzere zu ersetzen.

Die letzten beiden Maßnahmen von Hand durchzuführen, ist sehr mühsam. Daher wurden dafür Programme, sogenannte Kompressoren, entwickelt. Minify von Google ist ein Beispiel dafür. Wenn es schnell gehen soll, können Sie auch Online-Versionen verwenden. So steht unter der URL

http://shygypsy.com/cssCompress

ein CSS-Kompressor. Geben Sie Ihre CSS-Datei dort einfach in das Formularfeld ein, und Sie erhalten in einem zweiten Feld die komprimierte Version. Ähnlich ist die Lage für JavaScript-Dateien. Hier können Sie beispielsweise

http://jscompress.com

aufrufen, um eine komprimierte Version Ihres Skripts zu erhalten.

Ein weiterer Punkt, an dem man ansetzen kann, um den Seitenaufbau zu beschleunigen, ist die Anordnung der Elemente innerhalb der Seite. Dazu muss man wissen, dass beim Laden einer Seite zuerst der Head-Bereich abgearbeitet wird. Währenddessen sieht der Benutzer eine weiße Seite. Erst, wenn der Browser zum Body-Bereich des HTML kommt, wird etwas angezeigt. Während allgemein dazu geraten wird, CSS im Head des HTML-Codes unterzubringen, sollte man darauf achten, dass aufwendige JavaScript-Operationen (wie das Nachladen von Dateien per AJAX) erst ausgeführt werden, wenn der restliche HTML-Code geladen wird. Dazu gibt es das Attribut onload, mit dem Sie JavaScript-Funktionen starten können:

<body onload="javascript-funktion()">

In diese Funktion packen Sie alle Aktionen, die nicht für die ersten Sekunden der Anzeige relevant sind. Die Seite wird dann bereits angezeigt, und der

214

Page 215: Joomla 1 5 Handbuch

Besucher kann sich bereits ein wenig orientieren, bis die volle Funktionalität zur Verfügung steht.

Weitere nützliche Tipps zur Optimierung Ihrer Seite wurden von den Yahoo!-Entwicklern bereitgestellt und können unter der URL

http://developer.yahoo.com/performance/rules.html

abgerufen werden.

36 Datentransfer und FTP-ModusDie wenigsten Seiten entstehen ohne Vorlage. Meistens gibt es schon eine alte Homepage oder Textvorlagen im Intranet. Damit die bisherige Arbeit nicht umsonst war, liegt es nahe, die Texte in Joomla! zu integrieren. Eines vorweg: Dieser Weg ist nicht einfach und mit einigen Einschränkungen verbunden. Umgekehrt kann es sein, dass Sie eine Seite offline reproduzieren wollen, beispielsweise auf DVD. Auch hierzu gibt es Mittel und Wege.

36.1 Migration von Daten nach Joomla!

Sie kennen gewiss folgendes Problem: Sie haben bereits bestehende Daten und wollen diese in Joomla! übernehmen. Das ist nicht immer ganz einfach, da neben der Codierung der externen Daten meist auch deren Struktur eine ganz andere ist. Dennoch gibt es kleine Hilfsmittel und Tricks, die Ihnen die Bewältigung dieser Aufgabe erleichtern.

36.1.1 Statische Homepage

Die Übertragung einer Seite von einem bereits existierenden System ist immer mit etwas Aufwand verbunden, kann aber eine lohnenswerte Sache sein. Haben Sie die Seite einmal in Joomla! importiert, stehen Ihnen all die vielfältigen Möglichkeiten offen, die Sie sonst in mühsamer Klein- und Einzelarbeit integrieren müssten. Wie kann eine Übertragung vor sich gehen?

Als Erstes muss das Template erstellt werden. Da haben Sie ja schon einige Vorarbeit geleistet, indem Sie die statische Seite erstellt haben. Wie Sie Templates in Joomla! entwickeln, haben Sie bereits in Kapitel 12, »Was macht ein Template aus?«, gelernt. Fügen Sie in die HTML-Datei als Erstes

215

Page 216: Joomla 1 5 Handbuch

die notwendigen PHP-Befehle zu Beginn des Templates ein. Den gesamten Header ersetzen Sie durch den Header des Beispieltemplates. Nun müssen Sie die Stelle suchen, in der der konkrete Seiteninhalt steht. An dessen Stelle setzen Sie den Befehl zur Ausgabe des Main Body. Die Bereiche Ihrer alten Homepage, die dynamische Inhalte wie Menüs, Suchfelder, Login-Formulare etc. bekommen sollen, müssen Sie mit dem Load Module-Befehl und der jeweiligen Position überschreiben.

Haben Sie bereits eine CSS-Datei verwendet, so kopieren Sie deren Inhalt in die CSS-Datei des Templates, oder modifizieren Sie den HTML-Header so, dass das alte Stylesheet mit eingebunden wird.

Etwas knifflig wird die Übernahme des Menü-Layouts. Wenn Sie das alte Menü bereits mit CSS und Listen formatiert haben, sind Sie aus dem Schneider, weil Joomla! die Option hat, Menüs als Listen auszugeben. Haben Sie Ihr Menü mit HTML-Elementen gestaltet, so sollten Sie am besten versuchen, das Layout in CSS abzubilden. Es ist zwar prinzipiell auch möglich, die HTML-Ausgabe des Menü-Moduls zu modifizieren, das ist aber eine sehr unschöne Lösung, weil sie Ihnen genau die Flexibilität nimmt, die den Einsatz eines CMS so reizvoll macht.

Im nächsten Schritt müssen Sie die Struktur der Seite in Joomla! abbilden. Das bedeutet, die Inhalte, wenn möglich, in Bereiche und Kategorien einzuteilen und die Menüstruktur zu erzeugen. Denken Sie daran, dass man im Menü auch direkt auf Content-Elemente verlinken kann und dass Menüs hierarchisch aufgebaut sein können.

Zuletzt holen Sie die Inhalte ins System. Hierbei ist es am einfachsten, direkt den entsprechenden HTML-Code mit Copy & Paste in Joomla! einzutragen. Verwenden Sie dazu nicht den WYSIWYG-Editor, da dieser die spitzen Klammern in HTML-Entitys verwandelt und dadurch unbrauchbar macht. Die meisten Editoren haben einen HTML-Modus, in dem man die Daten problemlos übertragen kann.

36.1.2 Einbinden von Seiten mit der StaticXT-Komponente

Haben Sie sehr viele alte HTML-Seiten, beispielsweise ein Archiv, das Sie in Joomla! einbinden wollen, so ist die Copy-&-Paste-Lösung relativ mühsam. Hier kann Ihnen die StaticXT-Komponente helfen, die Sie unter der URL www.joomlaxt.com oder auf der DVD unter Erweiterungen/StaticXT finden. Diese Erweiterung bindet bestehende HTML-Seiten ähnlich wie ein Wrapper in den Inhaltsbereich der Joomla!-Page ein. Der Vorteil von StaticXT ist, dass die Seite verarbeitet wird. So werden relative Links so verändert, dass sie wieder über die StaticXT-Erweiterung angezeigt werden. Wenn Sie als Einstiegspunkt beispielsweise Ihre alte index.htm-Datei verwenden, kann sich der User in Joomla! durch Ihre gesamte alte Seite klicken.

216

Page 217: Joomla 1 5 Handbuch

Nachdem Sie die Komponente über die Datei com_staticxt.zip im Backend installiert haben, müssen Sie noch ein neues Verzeichnis innerhalb des Joomla!-Ordners erstellen, in dem die statischen HTML-Dateien liegen. Kopieren Sie zum Testen ein paar Seiten in dieses Verzeichnis.

Nun müssen Sie diesen Pfad für die Komponente sichtbar machen. Gehen Sie dazu auf die Konfigurationsseite, die Sie im Menü unter Komponenten • staticxt aufrufen können. Klicken Sie dann auf den Button Global Settings. Im folgenden Fenster können Sie im Feld Path to static files den Pfad relativ zum Joomla!-Verzeichnis angeben. Vergessen Sie nicht, danach zu speichern.

Hier klicken, um das Bild zu vergrößern

Abbildung 36.1 Die Komponente StaticXT

Um den Zugriff auf die Seiten zu ermöglichen, müssen Sie mindestens eine Einstiegsseite im Menü definieren. Erzeugen Sie also im Hauptmenü einen neuen Eintrag mit dem Typ Interner Link, und wählen Sie staticxt als Komponente. Jetzt müssen Sie im Parameter Staticfile den Namen der HTML-Datei angeben, die angezeigt werden soll. Wenn Sie mehrere untereinander verlinkte Seiten haben, reicht es, hier nur einen Link auf die Hauptseite zu erzeugen, da die anderen durch die oben erwähnte Linkersetzung mit eingebunden werden. Alternativ können Sie auch den Parameter Show File List auf Ja setzen und so bewirken, dass statt einer einzelnen Seite eine Liste mit allen Dateien des angegebenen Verzeichnisses ausgegeben wird. Dann kann der Besucher selbst aussuchen, welche Datei er sehen will.

36.1.3 Konvertierung aus anderen CMS

Jedes CMS hat in der Organisation und im Aufbau der Inhalte seine spezifischen Eigenheiten. Dennoch haben Sie den Vorteil, dass die vorliegenden Dokumente bereits in Strukturen und Inhalte aufgeteilt sind. Meistens ist bei einer Migration leider Handarbeit angesagt. Wenn Sie beispielsweise von TYPO3 nach Joomla! migrieren wollen, sind prinzipiell die folgenden Schritte notwendig:

217

Page 218: Joomla 1 5 Handbuch

Haben Sie das Template nur in HTML geschrieben, so können Sie es übernehmen, indem Sie die Positionsangaben aus TYPO3 durch die entsprechenden Ladefunktionen für die Modulpositionen ersetzen. Ansonsten ist es nötig, die TypoScript-Befehle im neuen Template nach PHP zu portieren.

Dateien und Bilder aus dem fileadmin-Verzeichnis kopieren Sie einfach in Ihr Upload-Verzeichnis (Daten) bzw. ins images/stories-Verzeichnis, damit sie in Joomla! eingebunden werden können.

TYPO3-Inhalte, die als Text mit Bild oder HTML abgelegt sind, können im Prinzip direkt aus der Datenbanktabelle tt_content nach jos_content übertragen werden. Die Metadaten müssen jedoch angepasst werden. Bei kleineren Seiten ist es sicher sinnvoller, die Inhalte mit Copy & Paste vom TYPO3-Backend ins Joomla!-Backend zu übertragen.

Eine sehr einfache Möglichkeit der Datenübertragung haben Sie, wenn das entsprechende System als Komponente in Joomla! eingebunden werden kann. Dann reicht es, die Datenbankinhalte einfach in die entsprechenden Tabellen der Komponente einzuspielen. Das ist beispielsweise für MediaWiki, phpBB oder WordPress der Fall.

36.1.4 Office-Dokumente

Viele Nutzer haben sich mittlerweile gut in Office-Produkten zurechtgefunden und dort zahlreiche Dokumente erstellt. Die Erfahrung zeigt, dass eine Umstellung auf ein neues System durchaus zu Widerständen führen kann. Daher stellt sich die Frage, ob man Dokumente aus Büroanwendungen in Joomla! importieren kann,

Leider ist die Unterstützung für diese Art der Datenkonvertierung bisher sehr dürftig und nur über Umwege zu realisieren:

HTML-Export Wenn die Anwendung textbasierte Dokumente erzeugt, wie das beispielsweise bei Schreib- oder Präsentationsprogrammen der Fall ist, so bietet sie meistens die Möglichkeit eines HTML-Exports. Speichern Sie Ihr Dokument also in diesem Format. Jetzt können Sie es wie oben beschrieben als statische HTML-Seite in Joomla! importieren.

WYSIWYG-Editor Die grafischen Editoren von Joomla! arbeiten alle mit dem RTF-Format. Daher ist es möglich, Teile aus Office-Dokumenten mit Copy & Paste direkt in den Editor zu übernehmen. Dieser nimmt dann die Konvertierung nach HTML vor. Hier ist allerdings etwas Vorsicht geboten, denn diese Konvertierung ist nicht immer verlustfrei. Sie sollten sich nach dem Import also immer vergewissern, dass die Daten so angekommen sind, wie Sie das beabsichtigt hatten.

218

Page 219: Joomla 1 5 Handbuch

Screenshot Bei Anwendungen, die komplexere grafische Ausgaben erzeugen, ist ein HTML-Export nicht immer möglich oder sinnvoll. Die einfachste Option ist in diesem Fall, einen Screenshot mit + zu erzeugen, diesen in einem Grafikprogramm auf den entsprechenden Ausschnitt zurechtzuschneiden und als Bild in ein Joomla!-Inhaltselement einzubinden. Das geht natürlich nur, wenn Sie auf interaktive Bereiche verzichten können.

Generell ist es vorzuziehen, neue Dokumente direkt in Joomla! zu erstellen, um Datenverluste, die durch die genannten Konvertierungen entstehen, zu verhindern.

37 SicherheitSobald Ihr Rechner mit dem Internet verbunden ist, müssen Sie damit rechnen, dass ungebetene Gäste versuchen, sich an Ihren Daten zu vergreifen. Dabei handelt es sich in den wenigsten Fällen um echte Hacker oder Cracker, sondern vielmehr um sogenannte Scriptkiddies, die irgendwo im Netz eine Anleitung gefunden haben, wie man in ein System eindringt, und das jetzt ausprobieren wollen. Angriffe auf Webserver richten sich in der Regel gegen drei Ziele:

Seiteninhalt: Es wird versucht, den Inhalt einer Homepage zu verändern und eigene Botschaften einzuschleusen.

Software: Das Programm, das eine dynamische Seite steuert, wird vom Missetäter verändert.

Rechner: Es wird versucht, über die Software den Rechner, auf dem die Webapplikation läuft, unter Kontrolle zu bringen. Diese Art von Angriff ist die gefährlichste. Falls sie erfolgreich ist, kann der Angreifer Ihren Computer weitreichend ändern und als Basis für weitere Angriffe auf andere Computer nutzen.

Absolute Sicherheit vor Angriffen wird man niemals garantieren können. Es gibt jedoch eine Reihe von Maßnahmen, um das Risiko zu minimieren. Die wichtigste ist: Halten Sie Ihre Software, also Webserver, PHP, MySQL und Joomla! auf dem neuesten Stand. Wie man Joomla! aktualisieren kann, wird weiter oben in diesem Kapitel beschrieben. Verfolgen Sie dazu auch die Nachrichtenticker auf www.joomla.org.

219

Page 220: Joomla 1 5 Handbuch

37.1 Angriffstypen

Das Einfallstor für Angreifer ist in webbasierten Applikationen immer die Kommunikation zwischen Browser und Server. Dabei kann man folgende häufige Angriffstypen unterscheiden:

SQL Injection

Parametermanipulation

Cross Site Scripting

Man in the Middle

Diese Typen werden im Folgenden genauer erläuert.

37.1.1 SQL Injection

Nehmen wir an, Sie verwenden ein Login-Formular, das die Authentifizierung mittels einer Datenbankabfrage durchführt. Der PHP-Code sieht folgendermaßen aus:

$query = "SELECT * FROM users WHERE username = '"         .$_POST['username'].'"'; $result = mysql_query($query); if (mysql_num_rows($result) > 0) $auth = true else $auth = false;

Es wird also in der Datenbank nachgesehen, ob der Username existiert. Ist das der Fall, wird eine Variable $auth, die den Autorisierungsstatus festlegt, so gesetzt, dass der Zugriff gewährt wird. Stellen Sie sich nun vor, Sie sind ein bösartiger Angreifer. Natürlich geben Sie keinen gültigen Usernamen ein, da Sie ihn ja nicht kennen. Da Sie findig sind, versuchen Sie, das SQL-Statement zu manipulieren. Sie geben also diese Zeichen ein:

nix' OR '' = '

Wenn das SQL-Statement nun zusammengesetzt wird, so wird diese Abfrage gestartet:

SELECT * FROM users WHERE username = 'nix' OR '' = ''

Da die zweite Bedingung in der WHERE-Klausel immer wahr ist, werden wir im System angemeldet.

Ein ähnlich gelagerter Fall ist die sogenannte Command Injection, die möglich ist, wenn das Skript auf dem Server beispielsweise mittels exec ein

220

Page 221: Joomla 1 5 Handbuch

Betriebssystemkommando ausführt, das direkt Parameter aus den übergebenen Formulardaten übernimmt.

Um solche Angriffe zu verhindern, müssen Sie bei der Programmierung sorgfältig darauf achten, dass die übergebenen Daten auch wirklich dem entsprechen, was erwartet wird, und auf keinen Fall SQL-Statements oder Kommandos enthalten.

37.1.2 Parametermanipulation

Diese Art des Angriffs macht sich ungeschützte Parameter einer Seitenabfrage zunutze. Die Gefahr geht dabei davon aus, dass Daten, die sicherheitsrelevant sind, in diesen Parametern gespeichert werden, oft aus dem falschen Glauben heraus, dass man diese nicht manipulieren könne. Zwei Beispiele, die so schon vorgekommen sein sollen, mögen dies verdeutlichen:

Mittels POST-Parameter

Eine Seite (nicht Joomla!) hatte die Mail-Adresse, an die eine Anfrage gesendet werden sollte, nicht auf dem Server, sondern direkt in ihrem Kontakt-Mail-Formular in einem <hidden>-Feld gespeichert.

<form action="mail.php" method="POST">    <input type="hidden" name="an" value="[email protected]">

Dies wurde von einem findigen Spammer ausgenutzt, der die Adresse aus diesem Feld einfach austauschte und so eine Menge unerwünschter E–Mails über diese Seite – und deren Namen – verschickte.

Mittels Cookie

Bei einer anderen Seite hatte der Betreiber zur Erleichterung der Kommunikation die Zugriffsparameter des Nutzers in einem Cookie auf seinem Rechner gespeichert. Das sah in etwa so aus:

Cookie: admin=no; time=10:00;

Es wurden also der Adminstatus und der letzte Zugriff (zur Sicherheit) protokolliert. Cookies sind allerdings nur Textdateien auf dem Computer. Ein nachfolgender schlitzohriger Benutzer änderte also einfach die beiden Werte in

Cookie: admin=yes; time=13:00;

und schon hatte er Zugriff auf die Seite. Und das auch noch mit Administratorrechten!

221

Page 222: Joomla 1 5 Handbuch

Eine mögliche Lösung für Probleme dieser Art ist, alle sicherheitsrelevanten Daten auf dem Server mittels Sessions zu verwalten, die auf jeden Fall sicherer sind als die vorgestellten Methoden.

37.1.3 Cross Site Scripting (XSS)

Mit dieser Methode wird weniger der Webseite selbst als vielmehr ihren Usern geschadet. Der Angreifer versucht, bösartigen Code, beispielsweise in JavaScript, auf der Seite zu platzieren, der den User dann dazu bringt, Daten preiszugeben oder eine bestimmte Seite aufzurufen. Sehen wir uns das einmal genauer an. Der bösartige Code soll nur ein Hinweisfenster sein:

<script>alert ("Ich bin böse")</script>

Ein Angreifer hat zwei grundlegende Möglichkeiten, diesen Code zu platzieren. Erstens kann er versuchen, ihn in Foren, Gästebücher, Seiteninhalte etc. einzuschleusen, auf die er Zugriff hat. Ruft der nichts ahnende User eine dieser Seiten auf, wird der Code ausgeführt.

Zweitens kann der Code über eine URL eingeschleust werden. Häufig werden Usereingaben beispielsweise auf Bestätigungsseiten noch einmal ausgegeben. Der Angreifer kann nun eben so eine URL auf der Seite platzieren. In Joomla! werden beispielsweise Rückmeldungen an den Benutzer auf diese Weise erzeugt. Keine Angst: Joomla! filtert hier bösartigen Code. Der Mechanismus kann dennoch benutzt werden, um den Besucher übel zu beschimpfen:

http://localhost/joomla/index.php?mosmsg=Sie+sind+wohl+doof

Wird diese URL aufgerufen, so steht über dem Content-Bereich »Sie sind wohl doof«.

Die Gegenmaßnahme ist auch hier wieder die sinnvolle Filterung der Eingaben. Lassen Sie auf keinen Fall <script>-Tags in irgendwelchen Foren zu!

37.1.4 Man in the Middle

Eine Gefahr für die sichere Kommunikation zwischen Client und Server stellt immer der Mitleser dar, der sich zwischen die beiden stellt und die Botschaften, die ausgetauscht werden, abhört und unter Umständen manipuliert. Aufgrund der Natur des Internets kann man diese Mithörer nie

222

Page 223: Joomla 1 5 Handbuch

ausschließen, da die Informationspakete auf dem Weg zwischen den beiden Endpunkten über viele Computer laufen.

Dies verdient insbesondere deshalb unsere Aufmerksamkeit, weil Zugangsdaten wie Passwörter zwar im Browserfenster maskiert werden, bei der Übertragung jedoch im Klartext gesendet werden. Ein Mitleser kann sie also sehr leicht abfangen und für seine Zwecke missbrauchen.

Die einzig sichere Variante, diesem Problem zu entkommen, ist, eine verschlüsselte Verbindung zu verwenden. Dies ist über das HTTPS-Protokoll möglich. Um wirklich sicherzugehen, benötigen Sie dafür allerdings eine feste IP-Adresse und ein Vertrauenszertifikat. Das ist durchaus mit einigen Kosten verbunden.

38 TroubleshootingTrotz aller Vorsicht kann es vorkommen, dass Sie eine Einstellung geändert haben und daraufhin das System nicht mehr läuft oder dass nach der Installation einer Erweiterung eine Fehlermeldung ausgegeben wird. Keine Panik, in diesen Fällen besteht immer noch die Möglichkeit, direkt über den Server auf die Konfiguration Einfluss zu nehmen. Dazu sind im Wesentlichen zwei Bereiche wichtig. Erstens sind alle wichtigen Einstellungen in der Datei configuration.php im Joomla!-Verzeichnis gespeichert. Dies ist also der Ort, an dem Sie alle oben genannten Parameter direkt steuern können. Zweitens finden sich einige Informationen, z. B. das Administrator-Passwort, in der Datenbank. Diese können Sie entweder über eine SQL-Konsole oder (meistens) über das Web-Interface phpMyAdmin abfragen und auch verändern.

38.1 Installation

38.1.1 Apache läuft nicht

Problem

223

Page 224: Joomla 1 5 Handbuch

Sie konnten XAMPP erfolgreich installieren und auch das Control Panel starten. Jedoch startet der Webserver nicht. Immer, wenn Sie auf den Startbutton im Control Panel klicken, erscheint eine kurze Meldung, aber beim Aufruf im Browser wird gemeldet: »Server nicht gefunden.«

Lösung

Das Problem dabei ist höchstwahrscheinlich, dass ein anderes Programm den Port 80 benutzt. Ports kann man sich wie Radiofrequenzen vorstellen. Jeder dieser Ports kann auf einem Rechner nur ein einziges Mal verwendet werden. Übliche Verdächtige, die auch den Port 80 verwenden, sind der Internet Information Server oder das Kommunikationsprogramm Skype.

Um herauszufinden, welches Programm diesen Port belegt, können Sie auch das Programm apache-portcheck.exe verwenden, das im Wurzelverzeichnis von XAMPP liegt.

Sollte das nichts helfen, ist es am besten, den Webserver von der Konsole aus zu starten und die Fehlermeldungen zu beobachten. Starten Sie dazu unter Windows die Eingabeaufforderung und unter Linux oder MacOS die Konsole. Wechseln Sie in das XAMPP-Verzeichnis, und geben Sie die entsprechenden Startbefehle ein. Unter Windows ist das:

xampp_start

unter Linux:

/opt/lampp/lampp start

und unter Mac OS

/opt/lampp/lampp start

Hier werden Sie beispielsweise auf Fehler in der Konfiguration hingewiesen.

38.1.2 MySQL läuft nicht

Problem

XAMPP wurde erfolgreich installiert, dennoch kann die Datenbank im XAMPP-Control-Panel nicht gestartet werden.

Lösung

Ein möglicher Fehler ist, dass bereits ein anderer MySQL-Server läuft, beispielsweise als Dienst. Der Portcheck, der oben genannt wurde, kann hier Hilfestellung leisten. Unter Windows finden Sie die Verwaltung der Dienste im Startmenü unter Verwaltung • Dienste. Wenn Sie hier einen gestarteten

224

Page 225: Joomla 1 5 Handbuch

MySQL-Server finden, klicken Sie mit der rechten Maustaste auf diesen Dienst und wählen Beenden. Versuchen Sie dann noch einmal, den SQL-Server zu starten.

Wenn das nichts hilft, ist es wie oben gesagt ein guter Rat, XAMPP über die Konsole zu starten und die Fehlermeldungen zu analysieren.

38.1.3 Mac OS X Apache läuft, findet aber kein Joomla!

Problem

Unter Mac OS X haben Sie XAMPP erfolgreich installiert und den Webserver sowie die Datenbank gestartet. Wenn Sie aber in der URL Joomla! aufrufen, kommt eine Fehlermeldung. Geben Sie nur localhost ein, so wird eine Apache-Seite angezeigt.

Lösung

Das Problem ist, dass es unter Mac einen Apache-Server gibt, der unter Umständen bereits aktiv ist. Dieser liegt im Systemsharing. Man kann dort unterschiedliche Bereiche für andere Computer zugänglich machen. Versuchen Sie, das komplette Sharing abzuschalten und dann den Server mittels XAMPP noch einmal zu starten. Jetzt sollte unter localhost der Startbildschirm von XAMPP erscheinen.

38.1.4 Mac OS X vor Version 10.4

Problem

Sie wollen Joomla! unter MacOS X in einer Version installieren, die älter ist als 10.4. Für diese Versionen gibt es keine XAMPP-Zusammenstellung.

Lösung

Hier ist das MAMP-Paket als Testumgebung zu empfehlen, das Sie unter dieser URL herunterladen können:

http://www.mamp.info/en/download.html

Achten Sie darauf, die Version MAMP 1.4.1 zu verwenden, denn die neueren Pakete laufen ebenfalls erst ab Mac OS 10.4. MAMP wird im Applications-Ordner abgelegt. Dort sollten Sie auch einen Ordner htdocs finden, in den Sie die Joomla!-Dateien entpacken. Dann können Sie mit dem Installationsdialog von Joomla! weitermachen. Was die Lese-/Schreibrechte anbelangt, können

225

Page 226: Joomla 1 5 Handbuch

Sie direkt über das Terminal dieselben Befehle verwenden, die im Abschnitt »Installation unter Linux« besprochen werden.

39 Mein erstes ModulWie Sie bereits gesehen haben, bietet Joomla! von »Natur« aus eine große Fülle an Funktionalität. Wo diese nicht ausreicht, kann man sich Erweiterungen zu allen möglichen und unmöglichen Aufgaben aus dem Netz holen und installieren. Gibt es da überhaupt noch Bedarf, eigene Extensions zu schreiben? Die Antwort ist ganz klar: ja.

Ein wesentlicher Grund ist, dass Sie Joomla! in den meisten Fällen nicht im luftleeren (Software-)Raum verwenden, sondern in einem Arbeitskontext, in dem viele andere Programme für die Erfüllung von Aufgaben verwendet werden und Daten produzieren. Wollen Sie aus Joomla! heraus an diese Daten kommen, so brauchen Sie eine eigene Lösung.

Noch immer gibt es genügend Funktionen, die noch nicht in Extensions verpackt sind. Open-Source-Programmierer sind wie alle anderen Menschen auch viel beschäftigte Leute, die nur das machen, was sie für sinnvoll erachten. Dabei sehen sie die Dinge oft aus einem eigenen Blickwinkel, der für Sie wichtige Funktionen möglicherweise nicht berücksichtigt.

Auch bei schon bestehenden Erweiterungen ist es oft genug der Fall, dass diese nicht fertiggestellt wurden oder zumindest nicht über die Alpha-Phase hinauskommen. Oder Sie vermissen eine Funktion, die das ursprüngliche Team vergessen hat. Um hier eingreifen zu können, müssen Sie zumindest einen Überblick darüber haben, wie man Erweiterungen programmiert.

Nicht zuletzt ist Joomla! ein Open-Source-Programm, das davon lebt, dass sich Menschen freiwillig an der Weiterentwicklung beteiligen. Die Programmierung von Erweiterungen ist dazu ein guter Einstieg. Joomla! wurde unter anderem dadurch so beliebt, dass es eine große Fülle von Plug-ins, Modulen und Komponenten gibt. Vielleicht fühlt sich der eine oder andere Leser auch dazu berufen, seinen eigenen Beitrag zu dieser Erfolgsgeschichte zu leisten.

Um eigene Erweiterungen schreiben zu können, benötigen Sie zumindest grundlegende Programmierkenntnisse, am besten in PHP. Sie sollten Ahnung von HTML haben, und auch ein Grundverständnis von XML kann sicherlich nicht schaden. Diese Kenntnisse hier zu vermitteln, würde den Rahmen dieses Buches sprengen, es sei deshalb auf die einschlägige Fachliteratur verwiesen.

226

Page 227: Joomla 1 5 Handbuch

Die Joomla!-Gemeinde begrüßt es ausdrücklich, wenn sich Entwickler die Mühe machen, neue Funktionen zu programmieren. Um es den Programmierern möglichst einfach zu machen, gibt es standardisierte Vorgehensweisen, um Erweiterungen mit der Core-Software zu verbinden.

Joomla! selbst ist in der Sprache PHP geschrieben. Es liegt daher nahe, dass auch die Erweiterungen in dieser Sprache entwickelt werden müssen. Zusätzlich gibt es eine Beschreibung der Erweiterung, die im XML-Format vorliegen muss. Beide Bereiche, das PHP-Skript und die XML-Datei, müssen bestimmten Konventionen folgen und in den richtigen Verzeichnissen liegen, um von Joomla! erkannt zu werden.

Eigentlich sind Module, Plug-ins und Komponenten PHP-Skripte oder -Sammlungen, die während der Ausführung von Joomla! an bestimmten Stellen aufgerufen werden. Daher hat man auch Zugriff auf einige Standardfunktionen, die das System bereitstellt. Diese Funktionen werden unter dem Begriff Joomla!-API (Application Programming Interface) geführt und stellen eine Schnittstelle zwischen der Erweiterung und dem eigentlichen System dar.

Wenn Sie Erweiterungen entwickeln wollen, die auch für andere Joomla!-User gedacht sind, so ist es sinnvoll, sich an die Coding Standards von Joomla! zu halten. Das betrifft die Formatierung des Quelltextes sowie die Art und Weise der Kommentierung. Die Joomla!-Entwickler halten sich dabei an den Standard der PEAR-Entwickler (eine große PHP-Bibliothek), den Sie unter der URL pear.php.net/manual/en/standards.php finden.

Der Code in den folgenden Beispielen ist aus Gründen der Übersichtlichkeit auf die Funktionalität beschränkt und nicht auf Sicherheit optimiert. Hier klaffen weite Lücken für Eindringlinge. Sie sollten Ihre eigenen Skripte auf alle Fälle in dieser Hinsicht prüfen. Insbesondere sollten Sie alle Zeichenketten, die aus Parametern kommen, auf schadhaften Code überprüfen.

Aber genug der Vorrede. Sehen wir uns einmal ganz praktisch an, wie man beispielsweise ein eigenes Modul erstellt. Die Listings für dieses und die folgenden beiden Kapitel finden Sie auf der DVD im Verzeichnis listings.

39.1 Tools

Um für Joomla! zu entwickeln, reicht im Prinzip ein einfacher Editor. Wenn Sie schnell loslegen wollen, können Sie also diesen Abschnitt getrost überspringen. Wollen Sie allerdings etwas mehr Komfort, ist es ratsam, mit einer Entwicklungsumgebung für PHP zu arbeiten. Diese markiert Ihren Code farbig, hilft Ihnen bei der Fehlersuche und ist in der Lage, Funktionen und Objekte zu erkennen und Ihnen die verfügbaren Elemente zu zeigen. Entwicklungsumgebungen gibt es sehr viele. Wir wollen Ihnen hier Eclipse

227

Page 228: Joomla 1 5 Handbuch

vorstellen, eine freie Variante, die sehr weit verbreitet ist. Eclipse ist eigentlich nur ein Rahmenprogramm, mit dem sehr viele verschiedene Programmiersprachen bearbeitet werden können. Standardmäßig bringt die Entwicklungsumgebung eine Unterstützung nur für Java mit. Um sie mit PHP zu verwenden, müssen Zusatzpakete installiert werden.

Das Projekt PDT (PHP Developer Tools) bietet eine vorkonfigurierte Zusammenstellung solcher Tools. Sie finden das Archiv auf der DVD unter tools/pdt. Entpacken Sie den Inhalt auf Ihrer Festplatte. Es ist keine weitere Installation nötig. Sie starten Eclipse mit einem Doppelklick auf eclipse.exe. Beim ersten Start werden Sie gefragt, wo Ihr Standard-Workspace sein soll. Das ist der Ort, wo Eclipse seine eigenen Dateien hinterlegt. Geben Sie hier ein Verzeichnis innerhalb von xampp/htdocs an, beispielsweise xampp/htdocs/joomla_development. Wenn Sie auf OK klicken, öffnet sich der Willkommensbildschirm des Programms. Diesen können Sie über das X auf dem Reiter links oben schließen. Jetzt sind Sie in der Programmieransicht.

Kodierung

Stellen Sie sicher, dass Ihre Programmdateien im UTF-8-Format gespeichert werden. Gehen Sie dazu über das Menü Window • Preferences… zu den Einstellungen. Öffnen Sie über die Baumansicht links den Bereich General • Workspace. Im Bereich Text file encoding aktivieren Sie Other und wählen UTF-8.

Entwicklungsumgebungen arbeiten immer mithilfe sogenannter Projekte. Diese verwalten alle zugehörigen Dateien, wissen, woran Sie zuletzt gearbeitet haben, und kennen den Kontext. Erstellen Sie ein neues Projekt über File • New • Project…

Hier klicken, um das Bild zu vergrößern

Abbildung 39.1 Ein neues Projekt erstellen

228

Page 229: Joomla 1 5 Handbuch

Wählen Sie im Dialogfenster im Bereich PHP den Punkt PHP Project, und klicken Sie auf Next > (Abbildung 39.1). Geben Sie im folgenden Fenster als Project name »joomla_module« ein, und klicken Sie wiederum auf Next >.

Hier klicken, um das Bild zu vergrößern

Abbildung 39.2 Der Projektname

Im nun folgenden Fenster können Sie zusätzliche Pfade angeben. Das ist nicht zwingend nötig. Bei der Programmierung für Joomla! ist es aber für die Code-Vervollständigung sinnvoll, das Wurzelverzeichnis von Joomla! mit einzubinden. Öffnen Sie den Reiter Libraries, und klicken Sie auf Add External Folder… Hier wählen Sie den Ordner, in dem Ihr Joomla! liegt, z. B. c:\apachefriends\xampp\htdocs\joomla.

Hier klicken, um das Bild zu vergrößern

Abbildung 39.3 Joomla! mit einbinden

Mit einem Klick auf Finish wird das Projekt erstellt. Wenn alles geklappt hat, sollten Sie jetzt im PHP Explorer einen Baum sehen, der so wie in Abbildung 39.4 aussieht.

229

Page 230: Joomla 1 5 Handbuch

Hier klicken, um das Bild zu vergrößern

Abbildung 39.4 Unser Joomla!-Projekt

Am besten organisieren Sie Ihr Projekt so, dass Sie für jedes Modul einen eigenen Unterordner erstellen. Klicken Sie dazu am einfachsten mit der rechten Maustaste auf joomla_module, und wählen Sie New • Folder. Geben Sie für das erste Testmodul im Feld Folder name »mod_hallojoomla« ein. In diesem Ordner brauchen wir im Folgenden mehrere Dateien. Das geht so: Klicken Sie mit der rechten Maustaste auf den Ordner mod_hallojoomla. Wählen Sie New • PHP File. Im Feld File Name geben Sie den Namen der Datei ein, z. B. mod_hallojoomla.php. Mit einem Klick auf Finish wird die Datei erstellt, die Sie in Abbildung 39.5 sehen können.

Hier klicken, um das Bild zu vergrößern

Abbildung 39.5 Eine neue PHP-Datei

Hilfestellung (Code Completion)

In Abbildung 39.5 sehen Sie ein Hilfefenster, das zur Funktion passt, die gerade eingegeben wird. Dieses Fenster ist sehr hilfreich und kann mit der Tastenkombination + aufgerufen werden.

230

Page 231: Joomla 1 5 Handbuch

40 Die Joomla!-APIUnser nächstes Anliegen ist es, nicht nur irgendwelchen Text auszugeben, sondern auch auf die Umgebung von Joomla! zu reagieren. Dazu stellen die Programmierer uns eine Schnittstelle zur Verfügung, über die wir auf die Daten und Funktionen des Systems zugreifen können: die sogenannte API. Damit erhalten wir Informationen über den angemeldeten Benutzer, das aktuelle Dokument, die Datenbank und viele weitere Elemente der Seite. Es ist natürlich auch möglich, diese Daten zu verändern und so die Seite programmiertechnisch zu gestalten. Der Weg dazu wird in diesem Kapitel beschrieben.

Die komplette API ist so umfangreich, dass man über darüber ein eigenes Buch schreiben könnte. Sie ist mittlerweile jedoch auch von den Entwicklern selbst relativ gut beschrieben:

Es wurde ein Dokumentations- und Entwicklerportal eingerichtet, das Sie unter der URL developer.joomla.org aufrufen können.

Eine Referenz finden Sie unter api.joomla.org. Wählen Sie in der Dropdown-Liste Packages den Eintrag Joomla-Framework, um die im Folgenden beschriebenen Klassen zu finden.

Die wertvollste Ressource für Tipps zur Entwicklung ist das Joomla!-Wiki, das man unter der URL docs.joomla.org/Category:Development aufrufen kann.

40.1 Zugriff auf die Interna von Joomla!

Um an die Daten und Funktionen von Joomla! heranzukommen, bietet das System dem Entwickler einige Objekte an. Diese können Sie in Ihren eigenen Programmcode einbinden, um ihre Eigenschaften und Methoden zu verwenden. Es liegt daher nahe, sich mit dem Objektmodell von Joomla! auseinanderzusetzen.

Viele Objekte finden sich im Joomla!-Framework-Paket. Tabelle 40.1 listet die wichtigsten auf. Daneben verwendet Joomla! noch einige externe Bibliotheken, z. B. PEAR oder geshi, die aber im Folgenden weitestgehend keine Rolle spielen.

Tabelle 40.1 Wichtige Objekte des Joomla!-Frameworks

231

Page 232: Joomla 1 5 Handbuch

Objekt Aufgabe

Anwendung

JApplicationStellt den Zugriff auf viele grundlegenden Eigenschaften von Joomla! her.

JModel Grundlage für ein Model nach der MVC-Architektur.

JView Grundlage für eine View nach der MVC-Architektur.

JControllerGrundlage für einen Controller nach der MVC-Architektur.

JModuleHelper Bietet einige Hilfsfunktionen für Module an.

Datenbank

JDatabaseErlaubt Ihnen, auf die Datenbank zuzugreifen, und bietet verschiedene Methoden für Abfragen.

Dokument

JDocumentZugriff auf das aktuell erstellte Dokument. Das ist die Beschreibung der Ausgabe, bevor sie in HTML gegossen wird.

JDocumentRenderer

Erstellt eine HTML-Ausgabe aus einem Dokument.

Umgebung

JRegistry Zugriff auf die Konfiguration von Joomla!

JParameter Bietet den Zugriff auf Einstellungen von Erweiterungen.

JRequestSchnittstelle für den Zugriff auf die Variablen, die der Seite beim Aufruf vom Browser übergeben werden.

JURIDamit können Sie gültige URLs erstellen und analysieren.

HTML

232

Page 233: Joomla 1 5 Handbuch

JHTMLDiese Klasse stellt Ihnen Methoden zur Verfügung, die komplexe HTML-Bestandteile für die Seite erzeugen.

Sprache

JLanguageKlasse für die Verwaltung von Sprachen und Internationalisierung.

JText Gibt einen Text in der aktuellen Sprache aus.

Mail

JMailMit diesem Objekt können Sie E–Mails erstellen und versenden.

Benutzer

JAuthentication Übernimmt die Anmeldung eines Benutzers im System.

JUserErlaubt es Ihnen, die Daten eines registrieren Benutzers abzufragen und zu verändern.

Wie sieht nun der Zugriff auf diese Objekte aus? Grundsätzlich sind drei Fälle zu unterscheiden. Haben wir es mit einem statischen Objekt zu tun, dann wird dieses wie eine normale PHP-Funktion verwendet. Diese Aufrufe werden in der Regel verwendet, wenn es sich um Hilfsfunktionen handelt, die keine eigenen Daten verwalten. Das Schema ist:

$variable = Objekt::funktion(argument);

Beispielsweise liefert dieser Aufruf den Inhalt eines Übergabeparameters action und steckt ihn in die Variable mit dem gleichen Namen:

$action = JRequest::get('action');

Das Ergebnis eines solchen Aufrufs ist im Regelfall ein einfacher Datentyp, beispielsweise eine Zeichenkette oder eine Zahl.

Normalerweise hat man es jedoch nicht mit statischen Objekten zu tun, sondern mit Instanzen. Diese müssen nach der objektorientieren Lehre zunächst aus der Klasse erstellt werden, bevor man sie benutzen kann. Das sieht so aus:

$objektvariable = new Objekt(argument);

233

Page 234: Joomla 1 5 Handbuch

Das Ergebnis ist eine Referenz auf die Instanz. Man spricht auch von einer Objektvariablen. Der folgende Code liefert beispielsweise den Zugriff auf die Einstellungen, die für ein Plug-in vorgenommen wurden. Als Argument wird eine Eigenschaft des entsprechenden Plug-ins übergeben.

$pluginParams = new JParameter( $plugin->params );

Diese Art des Aufrufs findet man im Joomla!-Code jedoch relativ selten. Ein Grund dafür ist, dass man in der Regel auf Objekte zugreifen will, die es bereits gibt. Der angemeldete Benutzer ist ein Beispiel dafür. Es macht wenig Sinn, diesen im Programm mehrfach zu verwalten. Im Gegenteil, dadurch steigt die Gefahr von Inkonsistenzen enorm. Daher gibt es für diese Objekte in Joomla! einen eigenen Zugriffsmechanismus, die sogenannte Factory. Diese hat wiederum einige statische Methoden, über die Sie auf die entsprechenden Objekte zugreifen können.

$objektvariable =& JFactory::getObject(argument);

Wie Sie sehen, wird wiederum eine Referenz auf ein Objekt erzeugt, dieses Mal jedoch auf ein bereits bestehendes. Daher verwendet man als Zuweisungsoperator auch nicht ein einfaches Gleichheitszeichen, sondern eine Referenzzuweisung. Damit wird sichergestellt, dass das Objekt nicht dupliziert wird. Das folgende Beispiel gibt Ihnen Zugriff auf das Datenbankobjekt:

$db =& JFactory::getDBO();

Wie Sie sich denken können, kommt damit der JFactory eine zentrale Rolle zu. In der Tabelle 40.2 wird aufgelistet, welche Objekte Sie über welche Methoden erreichen können. Zudem sind wichtige Objekte auch in vielen Kontexten direkt über eine Variable erreichbar. Diese finden Sie ebenfalls in der Tabelle.

Tabelle 40.2 Einige Methoden von »JFactory«

Methode Variable Rückgabetyp

Anmerkung

getApplication()

$mainframe

JApplicationRahmenklasse für die Ausführung von Joomla!

getConfig() JRegistryZugriff auf die Einstellungen von Joomla!

getDate() JDate Die aktuelle Uhrzeit

getDBO() JDatabase Zentraler Zugriff auf die

234

Page 235: Joomla 1 5 Handbuch

Datenbank

getDocument() JDocument Daten der eben erstellten Seite

getMailer() JMailEin Objekt zum Versenden von E–Mails

getTemplate() JTemplate Zugriff auf das aktuelle Template

getURI() JURIURL, mit der die Seite aufgerufen wurde

getUser() $my JUser Daten zum aktuellen Benutzer

$params JRequestDie Parameter, die mit der aktuellen URL übergeben wurden

Eine Übersicht über die Methoden und Eigenschaften der Joomla!-Objekte finden Sie in der Referenz in Anhang B. Um ein Gefühl für die API zu bekommen, wollen wir unser Modul nun dahingehend erweitern, dass als Ausgabe der Name eines eingeloggten Users erscheint. Hinter dem Namen soll ein Info-Icon stehen, das einen Tooltip einblendet, wenn man mit der Maus darüber fährt. Das Ganze wird internationalisiert und reagiert auf Einstellungen im Backend.

41 Plug-ins erstellenIm Gegensatz zu Modulen operieren Plug-ins zumeist direkt auf dem eigentlichen Inhalt. Technisch gesehen werden sie in Abhängigkeit von verschiedenen Vorfällen (Events) im Hauptprogramm aufgerufen. Ein solcher Event ist beispielsweise die Vorbereitung eines Inhaltselements für die Ausgabe. Ein anderer Event kann der Aufruf des Editors sein.

Plug-ins tauchen, wie bereits erwähnt, in verschiedenen Formen auf. Sie können direkt den Inhalt verändern, einen Editor einbinden, über einen Editor-Button eigenen Text einfügen, bei der Suche Ergebnisse zurückliefern, die Benutzeranmeldung übernehmen und Aufgaben im Joomla!-System verrichten. Mit dem neuen Event-System von Joomla! sind die Anwendungsmöglichkeiten enorm gestiegen. Wir werden uns einige Ausprägungen im Folgenden genauer ansehen.

235

Page 236: Joomla 1 5 Handbuch

Vieles davon wird Ihnen aus Kapitel 39, »Mein erstes Modul«, schon bekannt vorkommen. Auch Plug-ins benötigen für die Installation eine XML-Datei, über die auch Parameter angegeben werden können. Ebenso ist es aus Plug-ins heraus möglich, die Funktionen und Objekte der Joomla!-API zu verwenden.

41.1 Funktionsweise

Plug-ins werden in Objekten programmiert. Das Grundgerüst sieht dabei immer gleich aus:

1  jimport('joomla.plugin.plugin'); 2  class plgSystemTest extends JPlugin { 3     function plgSystemText (&$subject, $config) { 4        parent::__construct( $subject, $config ); 5     } 6     function onEvent() { 7        //code 8     } 9  }

Listing 41.1 Das Grundgerüst eines Plug-ins

Zunächst wird über den Befehl jimport die Basisklasse für ein Plug-in geladen. Von dieser wird das neue Plug-in über den Befehl extends abgeleitet. Der Effekt ist, dass viele Methoden, die ein Plug-in benötigt, hier gleich mit eingebunden werden. In den Zeilen 3–5 wird der Konstruktor der Basisklasse aufgerufen. Dieser führt einige grundlegenden Vorbereitungen durch. Achten Sie darauf, dass der Name der Methode identisch mit dem Namen der Klasse sein muss. Ab Zeile 6 wird eine weitere Methode erstellt, die den Namen eines Events trägt. Wird dieser Event von Joomla! ausgelöst, so erfolgt automatisch ein Aufruf dieser Methode.

Events kann man sich als eine Art Botschaft des Joomla!-Grundsystems an seine Plug-ins vorstellen. Diese Botschaften werden gesendet, wenn bestimmte Aktionen durchgeführt werden oder durchgeführt worden sind. So gibt es beispielsweise einen onLogin-Event, der ausgelöst wird, nachdem sich ein Benutzer erfolgreich angemeldet hat. In einigen Plug-ins gibt es dann Methoden, die auf diese Botschaften reagieren und ihrerseits Code ausführen. So kann an verschiedenen Punkten während der Erstellung einer Joomla!-Seite eingegriffen werden.

Sie ahnen sicher schon, dass eine gute Kenntnis der Events ziemlich wichtig für die Programmierung von Plug-ins ist. In Tabelle 41.1 finden Sie eine Liste der verfügbaren Ereignisse.

Tabelle 41.1 Eventhandler

236

Page 237: Joomla 1 5 Handbuch

Ereignis Beschreibung

Authentication

onAuthenticateWird bei der Anmeldung eines Benutzers ausgeführt. Hier können Sie festlegen, ob der Benutzer im System angemeldet wird.

Content

onPrepareContent Ein Inhaltselement wird zur Ausgabe aufbereitet.

onAfterDisplayTitleHier haben Sie die Möglichkeit, Daten zwischen Titel und Inhalt eines Beitrags einzufügen.

onAfterDisplay Content

Tritt unmittelbar nach der Ausgabe des Inhalts ein.

onBeforeDisplay Content

Tritt unmittelbar vor der Ausgabe des Inhalts ein.

onAfterContentSave Ein Inhaltselement wurde gespeichert.

onBeforeContentSaveEs soll ein Inhaltselement gespeichert werden. Hier können Sie noch eingreifen.

onAfterDisplayWird ausgelöst, nachdem die Inhalte ausgegeben worden sind.

onBeforeDisplayWird ausgelöst, wenn Joomla! bereit ist, die Inhalte darzustellen.

Editors

onInitDer Editor wird gestartet. Hier können Sie noch zusätzliche Einstellungen vornehmen.

onGetContent Der Text wird für den Editor aufbereitet.

onSetContent Inhalte werden in den Editor geladen.

onSave Ein Text soll gespeichert werden.

onDisplayNach dem Editor-Feld werden zusätzliche Buttons ausgegeben.

Search

onSearch Eine Suchanfrage wird bearbeitet.

onSearchAreas Hier können Sie zusätzliche Suchräume definieren.

System

onAfterInitialiseWird ausgelöst, nachdem das Joomla!-Framework geladen wurde.

onAfterRouteAn dieser Stelle weiß Joomla! bereits, welche Aufgaben auf das System warten.

onAfterDispatchWird ausgelöst, wenn der Inhalt der aufgerufenen Komponente verfügbar ist.

onAfterRenderWird ausgelöst, wenn die Ausgabe zusammengesetzt wurde und verfügbar ist.

User

237

Page 238: Joomla 1 5 Handbuch

onLoginUserWird ausgeführt, nachdem ein Benutzer erfolgreich am System angemeldet wurde.

onLoginFailureHat der Benutzer ungültige Daten bei der Anmeldung eingegeben, wird dieser Event ausgelöst.

onLogoutUserWird ausgelöst, nachdem ein Benutzer sich aus dem System abgemeldet hat.

onLogoutFailureTritt ein Fehler bei der Abmeldung auf, so können Sie hier reagieren.

onBeforeStoreUserTritt ein, bevor die Daten eines neuen Benutzers gespeichert werden.

onAfterStoreUserTritt ein, nachdem die Daten eines neuen Benutzers gespeichert worden sind.

onBeforeDeleteUserTritt ein, bevor die Daten eines Benutzers gelöscht werden.

onAfterDeleteUserTritt ein, nachdem die Daten eines Benutzers gelöscht worden sind.

XML-RPC

onGetWebServicesWird ausgelöst, wenn eine Anfrage von außen kommt, die herausfinden soll, welche Webservices die Joomla!-Installation anbietet.

Sie sehen in der Tabelle, dass die Events nach Plug-in-Typen geordnet sind. Diese Typen sind wichtig für die Registrierung des Plug-ins, die in der XML-Datei festgelegt wird. Denn nur die Ereignisse, die auch dem Plug-in-Typ entsprechen, werden tatsächlich berücksichtigt. So ist es nicht möglich, in einem User-Plug-in die Ausgabe des Inhalts zu verändern.

Die einzelnen Event-Methoden werden von Joomla! gegebenenfalls noch mit Parametern gefüttert. Dazu finden Sie mehr in Anhang B.

42 Eine eigene KomponenteKomponenten sind wesentlich komplexere Elemente als Plug-ins oder Module. Neben der Darstellung im Frontend gibt es auch im Backend einen Manager und ein eigenes Menü. Zudem greifen Komponenten auf die Datenbank zu, so dass auch hier eine Schnittstelle geschaffen werden muss. Daher besteht eine Komponente in der Regel auch aus mehreren Dateien. Wir wollen im Folgenden eine Komponente entwickeln, in der Tanzpaare zusammen mit einem internen Turnier-Ranking gespeichert werden können, so dass man sich immer die aktuelle Vereinswertung ansehen kann. Dazu

238

Page 239: Joomla 1 5 Handbuch

benötigen wir im ersten Schritt die folgenden Dateien in einem separaten Installationsverzeichnis, z. B. pairrank_inst:

Installationsdateien

pairrank.xmlDaten für die Installation.

install.phpEin zusätzliches Installationsskript. Wird auch dazu genutzt, um nach der Installation Informationen für den Benutzer anzuzeigen.

install.sqlErstellt die notwendigen Datenbanktabellen und füllt diese mit ersten Daten.

uninstall.sqlLöscht bei der Deinstallation der Komponente die eigenen Datenbanktabellen.

Frontend

pairrank.phpDie Basis des Frontend-Teils der Komponente.

controller.phpEnthält die Verarbeitungslogik der Komponente.

views/pairrank/view.html.phpDie View-Klasse, die die Daten zur Darstellung aufbereitet.

views/pairrank/tmpl/default.phpDas HTML-Template für die Frontend-Ausgabe.

models/pairrank.phpEnthält das Datenmodell und Methoden für den Zugriff und die Speicherung.

Backend

admin.pairrank.phpEnthält die Programmlogik für das Backend.

Hoffentlich sind Sie nicht erschrocken über die Fülle der Dateien, die erstellt werden müssen. Wir werden sie im Folgenden im Einzelnen durchsprechen. Vielleicht haben Sie sich gewundert, warum im Backend-Bereich nur eine Datei zu finden ist. Diese fungiert momentan nur als Platzhalter; später in diesem Kapitel werden wir sie weiter ausbauen.

239

Page 240: Joomla 1 5 Handbuch

Basis-Skript und Controller?

Vielleicht fragen Sie sich, warum der Controller nicht gleich im Basis-Skript enthalten ist. Eine mögliche Erklärung ist, dass die Joomla!-Entwickler aus Kompatibilitätsgründen noch Raum für »Spaghetti-Komponenten« lassen wollten, die alles in einer Datei verwalten. Zudem ist der Controller ein Objekt, das erst aus einem »Hauptprogramm« heraus erstellt werden muss.

Bevor wir beginnen, sollten wir uns noch Gedanken über den Aufbau unserer Datenbasis machen. Die Tabelle #__pairrank soll die folgenden Spalten enthalten:

Tabelle 42.1 Die Spalten der Datenbankeinträge

Spalte Wert Beschreibung

id IntegerEine fortlaufende Nummer zur eindeutigen Identifizierung des Datensatzes.

pair Text Die Namen der Tänzer.

points Integer Die Anzahl der Punkte.

publishedSmall Integer

1 für publiziert, 0 für versteckt.

42.1 Die Installationsdateien

Der Installationsprozess bei einer Komponente ist aufwendiger als bei den anderen Erweiterungen. Komponenten bestehen aus einem Frontend- und einem Backend-Bereich und verwalten häufig eigene Daten.

42.1.1 Die Komponenten-Beschreibung

Die XML-Datei, die die Installation beschreibt, enthält einige Tags, die wir bisher noch nicht verwendet haben.

1  <?xml version="1.0" encoding="UTF-8"?> 2  <install type="component" version="1.5"> 3    <name>pairrank</name> 4    <files folder="site"> 5      <filename>pairrank.php</filename> 6      <filename>controller.php</filename> 7      <filename>views/pairrank/view.html.php</filename> 8      <filename>views/pairrank/tmpl/default.php</filename> 9      <filename>models/pairrank.php</filename>

240

Page 241: Joomla 1 5 Handbuch

10    </files> 11    <install> 12      <sql> 13        <file charset="utf8" driver="mysql">install.sql</file> 14      </sql> 15    </install> 16    <uninstall> 17      <sql> 18       <file charset="utf8" driver="mysql">uninstall.sql</file> 19      </sql> 20    </uninstall> 21    <installfile>install.php</installfile> 22    <uninstallfile>install.php</uninstallfile> 23    <administration> 24      <menu>Paar-Ranking</menu> 25      <submenu> 26        <menu act="all">Verwalten</menu> 27      </submenu> 28      <files folder="admin"> 29        <filename>admin.pairrank.php</filename> 30        <filename>install.sql</filename> 31        <filename>uninstall.sql</filename> 32      </files> 33    </administration> 34  </install>

Listing 42.1 pairrank.xml

Zu den Zeilen 1–3 ist lediglich anzumerken, dass der Eintrag type in Zeile 2 natürlich den Wert component haben muss. Im <files>-Tag der Zeilen 4 –10 werden die Dateien vermerkt, die für den Frontend-Teil zuständig sind. Beachten Sie das Attribut folder="site". In den Zeilen 11–15 und 16 –20 wird die SQL-Datei angegeben, die bei der Installation bzw. der Deinstallation ausgeführt wird. PHP-Skripten, die bei Installationsvorgängen zusätzlich ausgeführt werden sollen, werden in den Zeilen 21 und 22 festgelegt. Der Bereich <administration> legt die Daten für das Backend fest (Zeilen 23–33). Bestimmen Sie zunächst den Namen des Eintrags im Components-Menü mit <menu> (Zeile 24) und dann im <submenu>-Tag die Untermenüs (Zeilen 25–27). Hier können Sie im Attribut act einen Wert angeben, der später beim Aufruf an die Komponente übergeben wird. Danach folgt nach bekanntem Schema eine Liste der Dateien, die zur Administrationsseite der Komponente gehören (Zeilen 28–32). Beachten Sie, dass hier die SQL-Dateien nochmals angegeben sind.

Die Dateistruktur im Installationsverzeichnis sieht dann folgendermaßen aus:

mod_pairrank    install.php    pairrank.xml    site       controller.php       pairrank.php       views          pairrank

241

Page 242: Joomla 1 5 Handbuch

             view.html.php             tmpl                default.php       models          pairrank.php    admin       admin.pairrank.php       install.sql       uninstall.sql

42.1.2 Die Datenbank

Sehen wir uns als Nächstes die Dateien an, die mit der Datenbank zu tun haben. In install.sql finden Sie Anweisungen, die bei der Installation ausgeführt werden.

1   DROP TABLE IF EXISTS `#__pairrank`; 2   CREATE TABLE `#__pairrank` ( 3      `id` INT NOT NULL AUTO_INCREMENT, 4      `pair` TEXT NOT NULL, 5      `points` SMALLINT NOT NULL, 6      `published` TINYINT(1) NOT NULL, 7      PRIMARY KEY (`id`) 8   ); 9   INSERT INTO `#__pairrank` VALUES (1,'Josef/Maria',200,1); 10  INSERT INTO `#__pairrank` VALUES (2,'Hans/Agathe',400,1);

Listing 42.2 install.sql

Sollten sich noch alte Daten (beispielsweise aus einer früheren Version der Komponente) in der Datenbank befinden, so werden diese in Zeile 1 gelöscht.

Nicht zwingend

Wenn Sie nicht wollen, dass die alten Daten bei jeder Installation gelöscht werden, können Sie diese Zeile auch weglassen. Dann müssen Sie jedoch sicherstellen, dass sich die Tabellenstruktur nicht ändert.

In den Zeilen 2–8 wird die Datenbank gemäß der Struktur angelegt, die wir in Tabelle 42.1 beschrieben haben. Beachten Sie, dass statt des Tabellenpräfixes die Zeichenkette #__ verwendet wird. Diese wird bei der Installation automatisch durch das im entsprechenden System gültige Präfix ersetzt.

Wenn die Komponente deinstalliert wird, sollten die entsprechenden Datenbanktabellen ebenfalls gelöscht werden. Die nötigen Befehle werden in der Datei uninstall.sql hinterlegt:

242

Page 243: Joomla 1 5 Handbuch

1   DROP TABLE IF EXISTS ´#__pairrank´;

Listing 42.3 uninstall.sql

Diese besteht in unserem Fall nur aus einer Zeile, mit der die Tabelle pairrank entfernt wird. Beachten Sie auch hier das #__ als Präfix.

42.1.3 Zusätzliche Installationsanweisungen

Das zusätzliche Installations- und Deinstallationsskript sieht in unserem Fall sehr bescheiden aus und könnte zur Not auch weggelassen werden. Dann müssen Sie allerdings auch die Zeilen 21–22 aus der XML-Datei löschen.

1  <?php 2  defined('_JEXEC') or die('Restricted access'); 3  function com_install() { 4    echo 'Schön, dass Sie unsere Komponente benutzen'; 5  } 6  function com_uninstall() { 7    echo 'Bis bald'; 8  } 9  ?>

Listing 42.4 install.php

In der Datei sind die Funktionen für beide Aktionen, Installation und Deinstallation, hinterlegt. Wichtig ist, dass Sie dabei die Namenskonvention einhalten: Sie brauchen eine Funktion com_install für die Installation und eine Funktion com_uninstall für das Entfernen der Komponente. Wir haben in beiden Funktionen nur beispielhaft eine Ausgabe implementiert. Diese wird mit der Erfolgsmeldung angezeigt, die ausgegeben wird, wenn die Installation oder Deinstallation korrekt ausgeführt wurde.

A Parameter der unterschiedlichen Menütypen

A.1 Die Funktionen des TinyMCE

243

Page 244: Joomla 1 5 Handbuch

Tabelle A.1 Die Formatierungsoptionen des TinyMCE

Schaltfläche Funktion

Fett; Kursiv; Unterstrichen; Durchgestrichen

Linksbündig; Zentriert; Rechtsbündig; Blocksatz

CSS-Stile

Formatierung der verschiedenen Überschriften 1 bis 6 sowie Sonderformate wie z. B. Preformatted

Schriftart

Aufzählung; Nummerierung

Absatz ausrücken, Absatz einrücken

Rückgängig; Vorwärts

Link einfügen; Link entfernen

Anker einfügen

Bild einfügen

Aufräumen

Ansicht HTML

Aktuelles Datum/aktuelle Uhrzeit/Smiley einfügen

Multimedia-Dateien wie z. B. Flash-Filme einbinden

Felder auf linksbündig bzw. rechtsbündig stellen

Neues Feld einfügen

Feld nach vorn/nach hinten

Feld absolut positionieren

244

Page 245: Joomla 1 5 Handbuch

Schriftfarbe

Horizontale Linie einfügen

Formatierung entfernen

Unsichtbare Elemente wie z. B. Tabellenhilfslinien ein- und ausschalten

Hochgestellt, tiefgestellt

Sonderzeichen

Horizontale Linie mit der Möglichkeit der Detaileinstellung

Umschalten in die Vollbildansicht

CSS editieren

B Die Joomla!-APIDie Joomla!-API ist die Schnittstelle, die Joomla! den Programmierern von Erweiterungen zur Verfügung stellt. Sie umfasst eine Vielzahl von Klassen und Funktionen und ist so umfangreich, dass sie allein ein ganzes Buch füllen würde. Wir wollen Ihnen im Folgenden die wichtigsten Bestandteile vorstellen.

B.1 Funktionen

Wenn Ihr Skript innerhalb des Joomla!-Frameworks ausgeführt wird, sind viele Methoden über Objekte des Systems verfügbar. Einige Funktionen sind aber auch direkt implementiert.

Tabelle B.1 Funktionen im Joomla!-Framework

245

Page 246: Joomla 1 5 Handbuch

Funktion Beschreibung

jexit(string $msg)

Beendet Joomla!. Sie können in $msg der Anwendung noch einen Exit-Code mit geben.

jimport (string $path)

Bindet Dateien und Klassen in Joomla! ein. Der Pfad wird durch Punkte getrennt angegeben.

C GlossarAccessibility → Barrierefreiheit.

Accesskey Tastenkombinationen für schnellen Zugriff auf Programmfunktionen.

Add-on Eigenständiges Programm, das für eine bestimmte Software zusätzliche Dienste leistet. → Plug-in.

Administrator (Admin) Softwarenutzer mit besonderen Rechten. Der Administrator hat die Aufgabe, die Software zu installieren, zu warten, zu erneuern und die Bedingungen herzustellen, damit normale User ihrem Tagesgeschäft mit der Software nachgehen können.

AdSense Werbeprogramm von Google, bei dem Werbeanzeigen gegen Entgelt auf eigenen Webseiten platziert werden. Die Auswahl der Anzeigen ist inhaltsbezogen und wird automatisch durch Google erzeugt.

AdWords Gegenstück zu → AdSense, bei dem die Werbetreibenden Geld auf bestimmte Begriffe bieten, um in AdSense-Anzeigen genannt zu werden.

Ajax Technik, die es ermöglicht, Teile einer Seite neu zu laden, ohne dass die ganze Seite nachgeladen werden muss. Dadurch verhalten sich viele Internetapplikationen wie lokale Anwendungen.

API (Application Programming Interface) Die Schnittstelle, die ein Programm anderen Anwendungen bereitstellt, damit diese auf die Funktionen des Programms zugreifen können.

ASCII (American Standard Code for Information Interchange) Standardisierter Zeichensatz zur Textdarstellung.

Atom Bezeichnung für ein plattformunabhängiges Feed-Format und ein Protokoll zum Ver- und Bearbeiten von Webinhalten.

246

Page 247: Joomla 1 5 Handbuch

Backend Bezeichnet den Teil einer Software-Anwendung, die auf dem Server läuft und die Daten verwaltet. Dagegen wird das Programm, das die Daten auf dem Client darstellt, als → Frontend bezeichnet. Der Backend-Bereich ist nur → Administratoren zugänglich.

Backup Eine Sicherungskopie bestehender Daten.

Barrierefreiheit Dabei handelt es sich um ein Designprinzip, bei dem versucht wird, die Nutzung einer Webseite unabhängig von körperlichen Behinderungen des Nutzers und technischen Hürden zu ermöglichen.

Beiträge Stellen die unterste Ebene der Joomla!-Hierarchie dar. Ähnliche Beiträge werden in → Kategorien zusammengefasst.

Bereiche Ein Bereich beinhaltet → Kategorien. Bereiche sind die oberste Ebene in der Joomla!-Hierarchie.

Blog (»Weblog«) Eine Art webbasiertes Tagebuch, in dem der Blogger schnell Artikel publizieren kann. Die Einträge werden beginnend mit dem aktuellsten Eintrag in einer Liste angezeigt. Sie können meistens von den Besuchern kommentiert, aber nicht verändert werden.

Blogosphäre Bezeichnung für die Gesamtheit aller Blogs und ihrer Verbindungen untereinander.

Captcha Bild mit einem verzerrten Text, der für Menschen ohne Probleme lesbar ist, Computern aber Schwierigkeiten bereitet. Wird eingesetzt, um sicherzustellen, dass man es mit einem Menschen als Kommunikationspartner zu tun hat.

Chat Kommunikationsform im Internet. Mehrere Teilnehmer sind gleichzeitig in einem Chatroom (ein Textfeld) anwesend und unterhalten sich schriftlich.

Community (»Gemeinde«) Die Gruppe der Menschen, die zusammen in Wikis, Blogs, CMS etc. arbeiten und interagieren.

Content (»Inhalt«) Bezeichnet den Inhalt bzw. den Inhaltsbereich einer Seite.

Content Management System (CMS) Software zur Speicherung, Verwaltung und Suche nach Dokumenten oder Inhalten. Webbasierte CMS werden oft verwendet, um gemeinsam eine Homepage zu erstellen.

Copyleft Lizenzmodell, das die freie Möglichkeit der Vervielfältigung, Verbreitung und Veränderung eines Werks garantiert, indem es diese Rechte nur einräumt, wenn bei der Weitergabe oder Modifikation die freie Lizenz erhalten bleibt.

Cracker Computerfreaks, die Software durch eigene Programmcodes oder sonstige Veränderungen manipulieren. Sie stehen als Synonym für destruktive → Hacker.

247

Page 248: Joomla 1 5 Handbuch

Creative Commons Freie Lizenz, die die Nutzung eines Dokuments in verschiedenen Abstufungen regelt. Der Urheber hat die Option, die Nennung seines Namens vorzuschreiben, eine kommerzielle Nutzung zu erlauben und Veränderungen zu verbieten, unter Beibehaltung der Lizenz zu erlauben (»Share Alike«) oder generell zu genehmigen. Creative Commons ist daher nicht zwangsläufig mit dem Copyleft-Prinzip konform. Der Lizenztext liegt in drei Fassungen vor einer für Laien verständlichen Kurzversion, der juristisch korrekten Langversion und einer maschinenlesbaren Version (z. B. für Suchmaschinen). Es gibt eine Vielzahl an Übersetzungen, u. a. auch ins Deutsche.

CSS (»Cascading Style Sheets«) Ein Formalismus, der das Aussehen einer HTML-Datei beschreibt. Mit CSS lassen sich das Layout und die Formatierungen eines Webangebots zentral und mit geringem Aufwand verwalten.

Dokumentenmanagement Verwaltung elektronischer Dokumente. Diese werden als abgeschlossen betrachtet. Der Inhalt des Dokuments ist also anders als beim Content Management nicht über das System veränderbar.

DOM (Document Object Model) Wird verwendet, um Elemente auf Websites zu erzeugen, zu löschen und ein- und auszuschalten.

Emoticon Kleines Bild oder Smiley, das den Gefühlszustand des Schreibers signalisieren soll.

Extension (»Erweiterung«) Programm, das verwendet werden kann, um die Funktionalität einer bestehenden Anwendung zu erweitern. Extensions sind nicht eigenständig lauffähig.

FDL (»Free Documentation License«) Eine aus der Software-Lizenz → GPL hervorgegangene Lizenz für Dokumente. Garantiert, dass die Nutzung des Dokuments dem → Copyleft folgt. Die Nutzer verpflichten sich zur Nennung der Namen aller an der Entstehung des Dokuments Beteiligten sowie zur ausschließlichen Weitergabe unter der FDL. Dabei muss der Lizenztext mit abgedruckt werden, was besonders bei kleineren Dokumenten problematisch ist. Außerdem liegt die FDL bisher nur in Englisch vor. Eine Alternative stellt die → Creative Commons-Lizenz dar.

Feedreader Feedreader oder RSS-Reader sind Programme, die Feeds einlesen und verarbeiten können. In den meisten Browsern und E–Mailclients sind bereits RSS-Reader integriert.

Forum Webanwendung, die sich zur Diskussion eignet. Es können Beiträge eingereicht werden, auf die andere Benutzer dann antworten können.

Frontend Für alle User zugänglicher Bereich einer webbasierten Software. Das Gegenteil von → Backend.

248

Page 249: Joomla 1 5 Handbuch

GNU GPL (»General Public License«) Software-Lizenz, die das → Copyleft-Prinzip begründet hat. Garantiert, dass Programme, die unter dieser Lizenz stehen, vervielfältigt, verbreitet und weitergegeben werden dürfen, unter der Bedingung, dass sich die Lizenz nicht ändert. Für Dokumente wurde die → FDL als Ableger entwickelt.

Hacker Talentierter Computerspezialist, der in fremde Systeme eindringt oder Sicherheitsbarrieren überwindet. Sein Wissen verwendet er jedoch meist zur Aufklärung der gefundenen Sicherheitslücken.

Hash Das Zeichen »#«.

HTTPS Protokoll zur Verschlüsselung und Authentifizierung der Kommunikation zwischen Webserver und Browser im World Wide Web.

Implementation Konkrete Umsetzung eines Programms in einer Programmiersprache.

Inhalt → Content.

Instant Messenger (IM) Programme, die es ermöglichen, in Echtzeit Nachrichten über ein Netzwerk zu verschicken und zu empfangen. Der bekannteste IM ist ICQ von der Firma Mirabilis.

Kategorie Eine Kategorie beinhaltet einzelne, thematisch ähnliche Inhaltsseiten. Kategorien werden Sektionen untergeordnet und stellen das zweite Element in der Joomla!-Hierarchie dar. An oberster Stelle befinden sich die → Bereiche, und nach den Kategorien folgen die → Beiträge.

Klickpfad (»Breadcrumbs«) Zeigt den zurückgelegten Weg in einer Menüstruktur an und ermöglicht es, an einen beliebigen Punkt zurückzuspringen.

Komponente Erweiterungen von Joomla!. Sie können eigene dynamische Inhalte verwalten und im Backend und in der Datenbank separate Bereiche haben. Üblicherweise werden Ihre Daten im Frontend direkt im Inhaltsbereich angezeigt.

Kontrollzentrum Bereich auf der Startseite des Backends mit vielen Symbolen, über die verschiedene Aufgaben bewältigt werden können.

Lizenz Einräumung und Regelung von Nutzungsrechten an einem Werk oder Dokument durch den Urheber. Die Lizenzierung von Dokumenten ist ein sehr neues Phänomen, das eng mit deren digitaler Existenz und Kopierbarkeit verbunden ist. Hier sind in den nächsten Jahren einige Neuerungen zu erwarten. → Copyleft, Creative Commons, FDL.

Login Die Anmeldung bei einer Website mit Name und Passwort. Ermöglicht häufig den Zugang in einen geschützten Bereich.

249

Page 250: Joomla 1 5 Handbuch

Mashup Vermischen von Webanwendungen, wie etwa das Einbinden von Google Maps-Karten oder YouTube-Videos in die eigene Website.

Modul Erweiterung von Joomla!, die zur Anzeige spezieller Inhalte im Front- und Backend dient. Die Ausgabe erfolgt an speziellen Positionen außerhalb des Inhaltsbereichs.

MySQL Quelloffene Datenbank, die häufig im Zusammenhang mit Webanwendungen verwendet wird.

Newsfeed Computerlesbare Zusammenfassungen einer Webseite, die in regelmäßigen Abständen von einem Leseprogramm abgefragt und für den User aufbereitet werden. So ist er immer über aktuelle Veränderungen informiert. → RSS.

Open Source Lizenzmodell für Software, bei dem der Quelltext eines Programms frei verfügbar ist und von jedem verändert und weitergegeben werden darf.

PHP Eine Skriptsprache, die häufig dazu verwendet wird, dynamische Webanwendungen zu betreiben.

Pipe Das Zeichen »|«.

Plug-in Programmteil, der in eine bestehende Software eingeklinkt werden kann, um diese um weitere Funktionalität zu ergänzen. In Joomla! geht es dabei speziell um systemnahe Erweiterungen.

Podcast Liste mit Medienbeiträgen, zumeist Audiodateien. Ähnlich wie der → Blog eine Webanwendung, die den neuesten Beitrag als ersten Beitrag anzeigt.

Produktionsbetrieb Bezeichnet den Einsatz einer Software »im richtigen Leben«. Das Gegenteil dazu ist der Testbetrieb.

Programmierschnittstelle → API.

Root-Verzeichnis Ausgangspunkt (Wurzel) einer Verzeichnisstruktur.

RSS Standard für → Newsfeeds.

Safe Mode Sicherheitsoption von → PHP, bei der ein Skript, das auf eine Datei zugreifen will, und diese Datei selbst den gleichen Eigentümer haben müssen. Das bringt im Allgemeinen Einschränkungen für den Betrieb von PHP-basierten Webanwendungen mit sich.

Screenshot Ein Schnappschuss des aktuellen Bildschirminhalts. Besonders hilfreich bei Layout-Entwürfen, die noch keine Funktionalität haben sollen.

250

Page 251: Joomla 1 5 Handbuch

SEF (»Search Engine Friendly«) Technische Maßnahmen, um eine Seite für Suchmaschinen besser lesbar zu machen.

SEO (»Seach Engine Optimization«) Der Prozess aus technischer und inhaltlicher Arbeit, um einen möglichst guten Platz bei der Trefferanzeige von Suchmaschinen zu erhalten.

Sitemap Übersicht über alle Beiträge auf einer Homepage.

Skript Kleines Programm, das über einen Interpreter ausgeführt wird, der die Skriptsprache versteht. Liegt im Klartext vor, ist also nicht in Maschinensprache übersetzt.

Skriptkiddie Der Begriff leitet sich von »Skript« und »Kid« ab und hat zwei unterschiedliche Bedeutungen. Er bezeichnet angehende Programmierer, die sich anfangs auf Skriptsprachen beschränken. Er ist auch Bezeichnung für Personen, die auf vorgefertigte Programme zugreifen, um Sicherheitsbarrieren zu überwinden oder Vandalismus zu betreiben. Diese Skriptkiddies verfügen im Gegensatz zu → Hackern oder → Crackern nur über geringe Computerkenntnisse.

Slice Ausschnitt aus einem »zerschnittenen« Layout oder Bild. Die einzelnen Ausschnitte werden später in der HTML-Datei wieder zu einer Seite zusammengesetzt.

Spam Unerwünschte Werbebeiträge jeder Art, insbesondere in Form von E–Mails oder Forenbeiträgen. Spam wird häufig automatisch generiert.

Statischer Beitrag Ein Inhaltselement, das keiner Kategorie oder keinem Bereich angehört. Es ist also auch keiner Hierarchie untergeordnet und kann nicht dynamisch in einem Blog oder einer Liste aufgeführt werden.

Stylesheet → CSS.

Syntax Schreibweise oder -konvention, hier für Computerdateien. Muss zeichengenau eingehalten werden, damit der Computer »versteht«, was gemeint wird.

Tag Element einer Auszeichnungssprache, das bestimmte Bereiche in einem Dokument kennzeichnet. HTML verwendet Tags, um Formatierung und Strukturierung eines Textes anzugeben.

Tag Cloud Eine Tag Cloud zeigt alle vergebenen Tags an, wobei die meistvergebenen Tags größer erscheinen und so die Relation untereinander angegeben wird.

Tagging Beschreiben von Lesezeichen, Bildern oder auch Bloginhalten mit Schlagwörtern, sogenannten Tags. Die dadurch erstellten Sammlungen von Tags heißen auch Folksonomien.

251

Page 252: Joomla 1 5 Handbuch

Teaser Der Teil eines → Contents, der auch in Übersichtsseiten und Kurzfassungen angezeigt wird, um den Besucher zum Weiterlesen anzuregen.

Template Layout-Prototyp, in den von einer Software (z. B. einem CMS) weitere Inhalte eingebunden werden.

Thumbnail Miniaturansicht eines Bildes, die zunächst angezeigt wird, damit der Besucher sehen kann, ob ihn die Darstellung so sehr interessiert, dass er gegebenenfalls längere Ladezeiten auf sich nehmen würde.

Update Maßnahme zur Aktualisierung einer Software, die vor allem zur Behebung von Fehlern und zum Stopfen von Sicherheitslücken dient.

Upgrade Die Aktualisierung einer Software auf eine neue Hauptversion.

URL Die Adresse einer Internetseite.

URI (Uniform Resource Identifier) → URL.

Verweis, intern Verlinkt Seiten innerhalb der Joomla!-Site und kann auch relativ adressiert werden.

Verweis, extern Verlinkt auf fremde Inhalte im WWW und verlässt so den Bereich der Site. Die Adressierung muss immer absolut erfolgen.

Webhoster Dienstleister, der Speicherplatz und Adresse für Ihre Homepage zur Verfügung stellt.

Wiki Webanwendung, in der gemeinsam Texte erstellt werden können. Im Gegensatz zum CMS ist die Bearbeitung dabei für alle Besucher möglich. Die Überprüfung der Inhalte erfolgt durch die → Community.

WYSIWYG (»What you see is what you get«) Bezeichnet Editoren, mit denen ein Text gleich in der richtigen Formatierung bearbeitet werden kann. Sie sehen also während der Eingabe schon, wie der Text im Druck oder in der Anzeige aussieht.

XML (»Extensible Markup Language«) Standardisierter Formalismus, mit dem Dokumente so gekennzeichnet werden können, dass ihre Struktur sowohl für Menschen als auch für Computer lesbar ist.

252