HTML und CSS lernen?

Das Buch und Änderungen in Contao 2.11

In diesem Artikel beschreibe ich kapitelweise Änderungen in Contao 2.11.*, die beim Durcharbeiten des Buches relevant sein könnten. In nicht erwähnten Kapiteln hat sich nichts Wichtiges geändert. 

Auf contao.org gibt es bei Bedarf den kompletten Changelog für 2.11 zum detaillierten Studium. 

Dieser Artikel wurde am 11. April 2012 das letzte Mal geändert. 

Kapitel 4 - Installation

Die Installation verläuft mehr oder weniger genauso wie in Kapitel 4 beschrieben.

Auf Seite 78 wird »Die richtige Contao-Version für dieses Buch« beschrieben. Wenn Sie auf der Downloadseite der Website zum Buch die aktualisierten Beispieldateien herunterladen können Sie das Buch problemlos mit Contao 2.11.* durcharbeiten. 

Kapitel 5 Rundgang im Backend

Seite 112: In Abbildung 5.1 ist die Startseite des Contao-Backend zu sehen. Statt der Tastenkürzel werden dort jetzt die einzelnen Backend-Module aus der linken Navigationsleiste kurz vorgestellt. Die Backend-Tastenkürzel sind per Link erreichbar: http://www.contao.org/de/keyboard-shortcuts.html


Seite 113: In Abbildung 5.3 gezeigte Formular zur Einstellung der »Persönlichen Daten« hat sich geringfügig geändert. Das Backend-Theme hat eine eigene Abteilung bekommen und den flashbasierten Fancy-Upload gibt es nicht mehr. Der Standard-Uploader kann in einem modernen Browser mit gedrückter STRG bzw. CMD-Taste mehrere Dateien zum Upload auswählen (#3236).

Seite 118: Die Auswahl der Zeitzone ist viel bequemer geworden, denn nach dem Herausklappen gibt es ein Suchfeld, in das man z. B. "Berlin" eintippen kann. Erspart eine Menge scrollen.

Kapitel 6 Die erste Website mit Contao

Seite 129: Es ist beim Erstellen eines Startpunktes jetzt Pflicht, wie in Abbildung 6.2 gezeigt, die Sprache einzugeben.

Kapitel 7 Interne Stylesheets

Im internen Editor wurde der Begriff "Transparenz" durchgehend durch "Deckkraft" (opacity) ersetzt.

Außerdem ist es jetzt möglich, Variablen für interne Stylesheets im Theme zu hinterlegen, sodass sie für alle internen Stylesheets gelten. Das ist superpraktisch:

  • Zur Definition eines Farbschemas für eine Website definieren Sie im Theme die Farben
  • In den Stylesheets benutzen Sie die Variablen.
  • Falls sich eine Farbe ändert, müssen nur die Variable im Theme neu definieren. 

Wieder ein Grund mehr, sich ausführlich mit dem internen CSS-Editor von Contao anzufreunden. 

Kapitel 8 Externe Stylesheets

Seite 208: Hier gibt es eine Änderung beim CSS-Framework:

"The Contao framework style sheet ('system/contao.css') is now included in the combined CSS file and can be disabled in the page layout settings (see #3609)."

Wer will kann so das Contao CSS-Framework per Klick komplett de-aktivieren. 

Kapitel 9 Navigation

Auf Seite 236 wird der veraltete Inserttag { {env::main_name} } verwendet. 

Stattdessen sollte man { {page::mainAlias} } benutzen.

Nur zur Deutlichkeit: Inserttags haben keine Leerstellen zwischen geschweiften Klammern. Die dienen nur zur Darstellung hier auf der Webseite, damit der Inserttag gezeigt und nicht gleich ausgeführt wird.

Mehr dazu im Artikel Contao 2.11: Die neuen Inserttags

Kapitel 10 Inhaltselemente

Seite 269: Im ToDo gibt es diverse neue Optionen bei der Auswahl "Exaktes Format". Wählen Sie hier die Option "Mitte Mitte", die der alten Auswahl "Exaktes Format" entspricht. Außerdem kann beim Hinzufügen eines Bildes jetzt auch das Attribut *title* definiert werden.

Seite 275: Hier wird im Buch die Variante "Exaktes Format" genauer erklärt. Während früher die eingegebenen Maße immer vom Mittelpunkt aus gemessen wurden, können Sie jetzt den Anfangspunkt genau definieren (#2422).

Seite 276ff: Beim Einfügen einer Bildergalerie kann man jetzt die maximale Gesamtanzahl der Bilder definieren (#2652)

Kapitel 14 Die Erweiterung »Nachrichten«

Es funktioniert alles wie beschrieben, aber in Contao 2.11 kann man die Frontend-Module »Nachrichtenliste« und »Nachrichtenleser« jetzt auch auf einer Seite einbinden. Dabei ist die Weiterleitungsseite nicht mehr nötig.

Nina Gerling hat im Contao-Forum einen ausführlichen Beitrag dazu geschrieben:

Wohl gemerkt: Die im Buch beschriebene Methode funktioniert einwandfrei. Einsteigern würde ich empfehlen, zuerst das Buch durchzuarbeiten, und wenn das alles funktioniert und verstanden wurde, danach Ninas Beitrag im Forum zu lesen. 

Kapitel 15 Die Erweiterungen Kalender und FAQ

Beim Kalender gibt es keine wichtigen Änderungen.

Beim FAQ-Modul können jetzt wie bei den News die Frontend-Module Liste und Leser auf einer Seite eingebunden werden.

Kapitel 17 Die Startseite gestalten

Seite 455: Im ToDo in Schritt 3 müssen Sie jetzt »Exaktes Format - Links oben« auswählen.

Kapitel 21 Benutzer

Seite 529: Bei der in Abbildung 21.2 gezeigten Rechtefreigabe für Benutzergruppen sind die Backend-Module jetzt übersichtlich gruppiert. Kleine aber feine Änderung. 

Seite 531: Bei den Rechten für Erweiterungen in Schritt 3 gibt es jetzt auch FAQ-Rechte. 

Seite 532: Bei den Feldern in Schritt 4 heißt der grüne Bereich »Ausgenommene Felder« jetzt korrekt »Erlaubte Felder«. Eine kleine Verwirrung weniger. 

Kapitel 22 Wartung

Seite 548: Im Backend-Modul »System - Einstellungen« gibt es jetzt anders als in Abbildung 22.4 gezeigt einen eigenen grünen Bereich für die »Cache-Einstellungen«.

Seite 556: In Schritt 3 ist es nicht mehr nötig, die Konfigurationsdateien im Ordner system/config zu löschen. Diese sind im Contao-Archiv standardmäßig nicht mehr vorhanden und werden erst während der Installation erstellt (#3586). 

Errata zur zweiten Auflage

Peter Müller
Websites erstellen mit Contao 
ca. 627 Seiten, 2., aktualisierte und erweiterte Auflage, geb., mit CD
34,90 EUR · ISBN 978-3-8362-1814-6

Die folgende Tabelle enthält wirklich alle bekannten Fehler, auch fehlende Leerstellen und die Korrekturen für die Fließtextverweise auf Listings. Lassen Sie sich also von der Länge der Tabelle nicht abschrecken. Sie können diese Seite auch ausdrucken und ins Buch legen. 

Fundstelle Beschreibung
  Letzte Änderung: 20. April 2012
Seite 27 Im letzten Aufzählungszeichen sollte es natürlich heißen »tạo kommt aus dem Vietnamesischen und bedeutet bilden, erzeugen, gestalten«. Dort fehlt ein "ạ" zwischen dem "t" und dem "o".
Seite 84
Mitte
Im ersten Absatz unterhalb des ToDo steht der Satz »Wenn alles geklappt hat, erscheint wie in Abbildung 4.5 in grünen Lettern die Meldung Datenbankverbindung ok.« Genau genommen stimmt dieser Satz nicht ganz, denn die Meldung ist in Abbildung 4.5 nicht enthalten und nach dem ToDo ist der Punkt "Datenbankverbindung" geschlossen. Man muss ihn erst öffnen, um die Meldung zu sehen, und diese lautet dann Datenbankverbindung hergestellt.
Seite 99
oben
Um das Beispiel von Seite 98 unten fortzusetzen, müsste der erste Satz auf Seite 99 oben so lauten:

"Ersetzen Sie in der ersten Zeile »nobody« durch den Benuternamen, mit dem Sie sich an Ihrem Computer anmelden."

Wenn Sie MAMP einsetzen, tauchen die hier beschriebenen Probleme gar nicht erst auf (siehe TIPP auf Seite 58 oben).
Seite 115
unten
Der letzte Satz im vorletzten Absatz sollte lauten:
»... ist die Taste zum Großschreiben einzelner Buchstaben und wird auch Umschalt-Taste genannt.«
Seite 133
unten
Die erste Zeile im letzen Absatz hat ein "in" zu viel. Der Satz sollte lauten:
»Besonders die Verkürzung des Seitenbaums ist zwar sehr praktisch, ...«
Seite 139
ganz oben
Der erste Satz sollte lauten:
»... zur Verfügung stellt, sind in Listing 6.1 hervorgehoben: «
Seite 187
oben
Der zweite Satz unterhalb von Listing 7.4 sollte lauten:
»Ist Ihnen in Listing 7.4 etwas aufgefallen?«
Seite 195
oben
Der Satz unterhalb von Listing 7.5 sollte lauten:
»Das ToDo ist kurz und bündig und liefert als Ergebnis ein internes Stylesheet namens navigation zur Gestaltung der Navigation mit den Styles aus Listing 7.5
Seite 205
Mitte
Der zweite Satz nach der Überschrift 8.6 sollte lauten:
»Technisch gesehen besteht das Framework aus zwei Dateien:«
Früher waren es tatsächlich drei, aber iefixes.css gibt es nicht mehr.
Seite 208
Mitte
Der letzte Satz oberhalb von Listing 8.3 sollte lauten:
»Das Ergebnis dieser Anweisung sehen Sie in Listing 8.3, wobei ich Unwichtiges weggelassen und einige Kommentare ergänzt habe: «
Seite 223
Mitte
Der erste Satz im letzten Absatz sollte lauten:
»Das HTML für die erste Navigationsebene haben Sie auf Seite 161 in Listing 6.3 bereits gesehen.«
Seite 228
Mitte
Der erste Satz unterhalb von Abbidlung 9.1 sollte lauten:
»Listing 9.1 zeigt das CSS zur Gestaltung dieser Navigation.«
Seite 247
unten
Der letzte Satz vor dem Listing sollte lauten:
»Listing 9.4 zeigt einen Ausschnitt daraus.«
Seite 295
oben
Der erste Satz nach Listing 11.3 sollte lauten:
»In Listing 11.3 sind folgende Details erwähnenswert: «
Seite 301
Mitte
Der letzte Satz vor Listing 11.4 sollte lauten:
»Listing 11.4 zeigt einen Ausschnitt aus dem HTML für das Inhaltselement Akkordeon: «
Seite 303
Mitte
Der erste Satz in dem Absatz vor Listing 11.5 sollte lauten:
»Das CSS zur Einbindung der Grafiken könnte so aussehen wie in Listing 11.5
Seite 307
im ToDo
In Punkt 7 muss man durch das neue YouTube Design nicht mehr auf "Weiterleiten" klicken, sondern auf "Teilen". Der Rest stimmt.
Seite 307
unten
Der letzte Satz in dem Absatz vor Listing 11.7 sollte lauten:
»Listing 11.7 zeigt diesen Code etwas übersichtlicher gestaltet als das Original.«
Seite 322
Mitte
In Tabelle 12.1 sollte der Feldname in der Spalte »Mail« kleingeschrieben sein: email. In Abbildung 12.6 und auf Seite 324 im TIPP steht alles richtig.
Seite 337
Mitte
Der Satz vor Listing 12.6 sollte lauten:
»Listing 12.6 zeigt den Quelltext des Select-Menüs aus Abbildung 12.2.«
Seite 339
unten
Der Satz vor Listing 12.7 sollte lauten:
»Listing 12.7 zeigt das komplette HTML zum Radio-Button-Menü aus Abbildung 12.14.«
Seite 340 Der letzte Satz im Absatz unterhalb von Listing 12.7 sollte lauten:
»Das Radio-Button-Menü aus Listing 12.7 sieht im Frontend so aus wie in Abbildung 12.5.«
Seite 342
oben
Der Satz oberhalb von Listing 12.9 sollte lauten:
»Listing 12.9 zeigt das HTML für das Checkbox-Menü aus Abbildung 12.16.«
Seite 342
unten
Der Satz unterhalb von Listing 12.9 sollte lauten:
»... gegenüber dem Radio-Button-Menü aus Listing 12.7 nur die Klasse radio-container ... «
Seite 387
unten
Der letzte Satz auf der Seite sollte lauten:
»Listing 14.1 zeigt die wichtigsten Passagen aus dem Quelltext.«
Seite 390
Mitte
Der Satz oberhalb von Listing 14.2 sollte lauten:
»Der Quelltext sieht so aus wie der Auszug in Listing 14.2
Seite 400
Mitte
Der Satz oberhalb von Listing 14.4 sollte lauten:
»Die Darstellung der Kommentare basiert auf dem in Listing 14.4 gezeigten HTML.«
Seite 406
Mitte
Der Satz oberhalb von Listing 14.5 sollte lauten:
»Dort steht eine verschachtelte, ungeordnete Liste, umgeben von einem div mit der Klasse mod_newsmenu (Listing 14.4).«
Seite 420
Mitte
Der Satz oberhalb von Listing 15.1 sollte lauten:
»Listing 15.1 zeigt zunächst den Kopfbereich des Kalenders.«
Seite 421
oben
Der Satz oberhalb von Listing 15.2 sollte lauten:
»Listing 15.2 zeigt den Textbereich der Tabelle in <tbody> mit einem Beispieltermin an einem Fantasiedatum.«
Seite 439
mitte
Der Satz oberhalb von Listing 16.2 sollte lauten:
»... und wird vom Modultemplate mod_newsletter_reader.xhtml generiert (Listing 16.2).«
Seite 442
unten
Der Satz oberhalb von Listing 16.4 sollte lauten:
»... , gibt es keinerlei Besonderheiten zu vermelden (Listing 16.4).«
Seite 443
oben
Der Satz oberhalb von Listing 16.5 sollte lauten:
»Das umgebende div hat die Klasse mod_unsubscribe (Listing 16.5) und das Formular die ID tl_unsubscribe
Seite 507
oben
Die Kapiteleinleitung ist eine Wiederholung von K19 und sollte eigentlich so lauten:
»In diesem Kapitel erfahren Sie gleich am Anfang den Unterschied zwischen Mitgliedern und Benutzern. Danach erstellen Sie eine An- und Abmeldung für Mitglieder und einen geschützten Downloadbereich.«
Seite 525
unten
Der Satz oberhalb von Listing 20.3 sollte lauten:
»Listing 20.3 zeigt ein paar Styles zur Gestaltung der beiden Formulare: «
Seite 564
oben
Genau genommen fehlt in Listing 23.3 das Element nav.
Seite 568
Mitte
Der letzte Satz im Absatz oberhalb von Listing 23.6 sollte lauten:
»Listing 23.6 zeigt zunächst ein einfaches Beispiel mit dem neuen HTML5-Element <header>: ... «
Seite 568
unten
Der letzte Satz im Absatz oberhalb von Listing 23.7 sollte lauten:
»Das einfache Beispiel aus Listing 23.6 sieht in IE6 bis 8 etwa so aus:«
Seite 569
Mitte
Der Satz oberhalb von Listing 23.8 sollte so lauten:
»Dahinter verbirgt sich eine Javascript-Datei namens html5.js, die mit einem Conditional Comment an IE
Seite 571
unten
Die aktuelle Version der Spezifikation von CSS 2.1 stammt vom 07. Juni 2011.
Seite 616
unten
Die Inserttags mit den Umgebungsvariablen haben sich geändert. Die Seiteneigenschaften haben jetzt eigene Inserttags bekommen. Eine aktuelle Übersicht der Inserttags finden Sie in der Contao Community Documentation:
Übersicht der Inserttags

Haben Sie einen Fehler gefunden? Kurz gucken, ob er hier schon gelistet ist und wenn nicht, gleich schreiben.

Übersicht: Neues in der zweiten Auflage

Am 28. November 2011 erscheint die zweite, aktualisierte und erweiterte Auflage von »Websites erstellen mit Contao«. 

Dieser Artikel gibt eine kurze Übersicht über die Neuerungen. 

Das Buch basiert auf Contao 2.10.2, funktioniert problemlos mit Contao 2.10.3 und ist um knapp 100 Seiten gewachsen. Das liegt zum einen daran, dass vorhandene Kapitel ergänzt und erweitert wurden, und zum anderen an zum Teil völlig neuen Inhalten, wie zum Beispiel die Kapitel »23 Contao und moderne Webstandards« und »24 Tipps und Tricks zur Arbeit mit Inhalten«. Aber der Reihe nach. 

Neuerungen in Kapitel 1 bis 6

Der Einstieg hat sich in der ersten Auflage bewährt und ist von der Struktur her gleich geblieben. In den ersten sechs Kapiteln wurden neben Aktualisierungen lediglich einige Details ergänzt: 

  • Am Ende von Kapitel 1 wird explizit auf contao-community.de hingewiesen und es gibt auch ein paar »Tipps zur Benutzung des Forums«. 
  • Der »Schnelldurchlauf« in Kapitel 2 ist fast unverändert. 
  • In Kapitel 3 gibt es einen Hinweis auf MAMP und die Vorstellung der XAMPP-Komponenten ist ein bisschen erweitert worden. Unter anderem wird jetzt kurz erläutert, wie eine relationale Datenbank aufgebaut ist. 
  • Die Installation von Contao in Kapitel 4 ist an die Version 2.10.x angepasst worden. Nach der Offline-Installation unter XAMPP wird kurz beschrieben, wie man auf seinem Rechner mehrere Contao-Installationen betreiben kann. 

Nach Einführung und Installation geht es wie gehabt weiter mit der Erstellung der ersten Website mit Contao: 

  • Kapitel 5 beschreibt die wichtigsten Stationen im Backend. Am Ende des Kapitels wird die Erweiterung [dbbackup] installiert und beschrieben. 
  • In Kapitel 6 erfolgt die Erstellung der ersten eigenen Website mit Contao. Es gibt kleinere Änderungen bei der Erstellung der Beispielsite wie zum Beispiel, dass die h1-Überschrift auf einer Seite von Anfang an in einem eigenen Inhaltselement steht, aber als Ausgabeformat wird nach wie vor XHTML gewählt. Wer neugierig ist: HTML5 kommt in Kapitel 23. Die wichtigste Änderung in diesem Kapitel ist die Beschreibung des neuen Template-Systems mit den Endung .xhtml und .html5

Neuerungen in Kapitel 7 bis 13

Die Einführung in das Gestalten von Webseiten mit Contao per CSS besteht jetzt aus zwei Kapiteln: 

  • In Kapitel 7 wird der interne CSS-Editor von Contao ausführlicher vorgestellt als in der ersten Auflage, mitsamt Screenshots und Tipps zum effektiven Arbeiten. Ich habe als klassischer Vertreter der Kategorie "Ich-schreibe-mein-CSS-selbst" den anfangs eher ungeliebten Contao-CSS-Editor in den letzten anderthalb Jahren immer häufiger eingesetzt und diese Änderung wird auch hier reflektiert. 
  • Die Beschreibung der Arbeit mit externen Stylesheets und des aktuellen Contao-CSS-Frameworks erfolgt jetzt in Kapitel 8.  
  • In Kapitel 9 geht es um die diversen Möglichkeiten zur Erstellung von Navigationen. In dem Kapitel ist nur ein bisschen aufgeräumt worden. 

Nach diesem Kapitel ist der Rohbau der Beispielsite fertig gestellt und es beginnt die Arbeit mit Inhalten und Formularen: 

  • Kapitel 10 und 11 sind aktualisiert aber von der Struktur her unverändert. Überschriften am Seitenanfang stehen durchgehend in einem eigenen Inhaltselement, sodass die Klasse .seitenanfang komplett entfällt. 
  • Der Formulargenerator von Contao wird in Kapitel 12 beschrieben, inklusive der Änderungen bei den Radio-Button- und Checkbox-Menüs. Es gibt auch einen neuen Abschnitt, um Formulardaten auf der Seite »Vielen Dank« ausgeben die eingegebenen Formulardaten auszugeben und ein paar ausführliche Hinweise auf nützliche Formular-Erweiterungen. 
  • Die Beschreibung der Suchfunktion zum Durchsuchen der Beispielsite in Kapitel 13 ist gegenüber der ersten Auflage komplett überarbeitet worden und ist jetzt wesentlich einfacher als früher. 

Neuerungen in Kapitel 14 bis 22

Die Beschreibung der zum Contao-Core gehörenden Erweiterungen ist im Wesentlichen unverändert: 

  • In Kapitel 14 wird die Nachrichten-Erweiterung beschrieben. Das Menü zur Monatsauswahl erhält noch einen zusätzlichen Link zur Anzeige aller Nachrichten. 
  • Kapitel 15 und 16 enthalten die aktualisierte Beschreibung der Erweiterungen »Kalender«, »FAQ« und »Newsletter«. 
  • Die Gestaltung der Startseite in Kapitel 17 ist etwas anders als früher: Die Vorstellung der Arbeit mit Artikelteasern ist hier verschwunden und wird dafür in Kapitel 24 ausführlicher beschrieben. Dafür werden verschiedene Methoden vorgestellt, wie man das »Datum der Nachrichten ohne Uhrzeit darstellen« kann. 

Nach dieser Beschreibung der Core-Erweiterungen geht es weiter mit einer Einführung in die Systemwartung. Die Kapitel struktur ist in diesem Abschnitt unverändert: 

  • Nach der Vorstellung des Theme-Managers in Kapitel 18 werden in Kapitel 19 diverse Maßnahmen zur Optimierung der Beispielsite für Suchmaschinen beschrieben. 
  • In den Kapitel 20 und 21 geht es wie bisher um die Verwaltung von Mitgliedern und Benutzern. 
  • Das Kapitel 22 zur Wartung ist hingegen komplett überarbeitet worden. Neu sind Abschnitte zum »Cache-Flow« von Contao und Fragen rund um das Thema »Updates« werden wesentlich ausführlicher behandelt als in der ersten Auflage. 

Neuerungen in Kapitel 23 bis 25

Die Überschrift trifft den Sachverhalt nur zum Teil, denn Kapitel 23 und 24 sind komplett neu: 

  • In Kapitel 23 geht es um das Thema »Contao und moderne Webstandards«, also um HTML5 und CSS3. Darin wird beschrieben, wie pfiffig die von Contao angebotene Auswahl des Ausgabeformates und die damit einhergehende Änderung des Templatesystems ist. Außerdem erkläre ich, warum ich nach langem Überlegen für die Beispielsite letztendlich doch das Ausgabeformat XHTML Strict gewählt habe.  
  • Ebenfalls in Kapitel 23 wird beschrieben, dass Contao den IE6 nicht mehr unterstützt und wie man CSS3 bereits heute auf seinen Websites einsetzen kann. 
  • Im komplett neuen Kapitel 24 geht es um die Arbeit mit Inhalten für Fortgeschrittene. Themen sind zum Beispiel »Text im Fußbereich mit dem TinyMCE pflegen«, »Recycling: Inhalte auf mehreren Seiten wiederholen«, »Newsbeiträge mit Inhaltselementen«, »Artikelteaser auf Übersichtsseiten« und »Mehrere Artikel auf einer Seite«.

Den Abschluss des Buches bildet Kapitel 25, in dem einige »Tipps zur Systemverwaltung« beschrieben werden. 

Der Inhalt auf einen Blick

Zum Abschluss hier der Inhalt der zweiten Auflage auf einen Blick. 

Teil I Contao kennenlernen  
1 Das ist Contao 27
2 Schnelldurchlauf: So funktioniert Contao 35
Teil II Contao installieren  
3 XAMPP: Der Offline-Webspace 55
4 Die Installation von Contao 77
Teil III Schritt für Schritt zur ersten Website  
5 Ein kurzer Rundgang im Backend 111
6 Die erste Website mit Contao 127
Teil IV Webseiten gestalten mit Contao  
7 Contao und CSS: Interne Stylesheets 169
8 Externe Stylesheets und CSS-Framework 197
9 Navigationen erstellen in Contao 215
Teil V Artikel und Inhaltselemente  
10 Inhaltselemente für Text und Bilder 257
11 Weitere nützliche Inhaltselemente 291
Teil VI Contao und Formulare  
12 Der Formulargenerator von Contao 317
13 Suchfunktion: Die Beispielsite durchsuchen 349
Teil VII Die Erweiterungen von Contao  
14 Die Erweiterung »Nachrichten« 375
15 Die Erweiterungen »Kalender« und »FAQ« 415
16 Die Erweiterung »Newsletter« 433
17 Die Startseite gestalten 447
Teil VIII Systemverwaltung  
18 Der Theme-Manager in Aktion 467
19 SEO: Die Optimierung für Suchmaschinen 485
20 Mitglieder: Im Frontend angemeldete Besucher 509
21 Benutzer: Im Backend angemeldete Mitarbeiter 529
22 Wartung: Die Website im Alltag 545
Teil IX Contao für Fortgeschrittene  
23 Contao und moderne Webstandards 563
24 Tipps und Tricks bei der Arbeit mit Inhalten 579
25 Tipps und Tricks zur Systemverwaltung 601

Ich wünsche allen neuen und alten Lesern viel Spaß mit der zweiten Auflage des Contaobuchs und vor allem mit Contao. Bis demnächst im Forum. 

Grüße aus Groningen
Peter Müller  

Kommentare

Kommentar von Anni Linden | 03.12.2011

Hallo Peter,
ich würde sehr gerne die zweite Auflage deines Buchs erwerben, jedoch als download und nicht als gebundenes Buch (die ersta Ausgabe habe ich als gebundenes Buch, ist aber für Reisen doch zu umständlich). WIrd in absehbarer Zeit auch die zweite Auflage als Download erhältlich sein?
Grüsse
Anni

Antwort von Peter Müller

Die Frage müssten Sie an den Verlag Galileo Computing stellen. Soweit ich weiß, gibt es das Buch dort auch als Online-Version für 29,90 €. Einfach im Browser lesen, mit Lesezeichen, Volltextsuche, Zoom und so.  Mehr Infos dazu auf booksonline.galileo-press.de

Kommentar von Gabe Heger | 11.12.2011

Hallo Herr Müller,

sind in Ihrer neuen Buch-Auflage auch Informationen zum Thema Contao + das mobile Netz? Falls nicht, gibt es Möglichkeiten brauchbaren Input zu erwerben?
Danke und Gruß aus dem "Tatort-Dorf"
G. Heger

Antwort von Peter Müller

Das Thema "Contao + das mobile Netz" wird im Buch nicht explizit erwähnt, aber Sie können im internen Editor "media queries" einsetzen (Seite 574).

Nach "brauchbarem Input" würde ich im Forum fragen. Im Bereich "Mobile Web" gibt es momentan aber ganz allgemein mehr Fragen als Antworten und es wird noch ein bisschen dauern, bis sich der Rauch gelegt und wirklich brauchbare Strategien zum Vorschein kommen. Mir kommt die Situation momentan so vor wie bei CSS-Layouts ungefähr im Jahre 2002. Jeder experimentiert, aber es gibt noch nicht wirklich "Best Practices". 

Kommentar von Frank Schmidt | 15.12.2011

Hallo Herr Müller,

kann man die "neuen" Kapitel 23 und 24 auch separat als PDF-Datei bekommen. Das wäre eine ideale Ergänzung für Besitzer des Buches in der ersten Auflage.

Vermutlich liegt es aber am Galileo-Verlag...

Viele Grüße

Frank Schmidt

Antwort von Peter Müller

Ich glaube nicht, dass das möglich ist, aber wie sagt man: Fragen kost' nichts. Die Mailadresse des zuständigen Lektors steht bei Galileo-Büchern immer vorne im Buch... 

NACHTRAG vom 08. Januar 2012:
Für registrierte Käufer der ersten Auflage stellt der Galileo-Verlag auf der Bonus-Seite das das Buch die Kapitel 23 und 24 als "Bonuskapitel" kostenlos zur Verfügung. Wie man sich registriert, steht auf der allerersten Seite des Buches, oberhalb von "Ihr persönlicher Zugangscode". 

Kommentar von Compadre | 25.01.2012

Hallo Peter Müller,

habe auf der letzten Contao Konferenz in Bad Soden Ihren erfrischenden Vortrag genossen - die Little Boxes stehen schon länger im Regal.
Seit drei Jahren nutze ich Contao für Kundenprojekte; jetzt kämpfe ich mit 2.10. Meine Frage: Geht die Neuauflage auf die Neuerungen in 2.10 schon ein? D.h. vor allem auch Themen wie Html5? Was mich außerdem interessiert: Realisierung von Suckerfish bzw. mega-Menues für Contao.
Danke!

Antwort von Peter Müller

Das Buch basiert auf Contao 2.10.2, also ja, es geht auf die Neuerungen von 2.10 ein ;-) 

> HTML5 
In Kapitel 23 wird auf HTML5 eingegangen, der Rest bleibt auf XHTML 1.0. In dem Kapitel wird auch erklärt warum. HTML5-Erklärbär Peter Kröner hat zu HTML5 auf Webseiten einen sehr schönen Artikel in seinem Blog veröffentlicht. 

> Suckerfish 
Grundlagen stehen im Navigationskapitel. Ansonsten ist das eher ein CSS- denn ein Contao-Problem. "Das große Little Boxes-Buch" geht da ausführlicher drauf ein. 

> Mega-Menü 
Dafür gibt es eine Erweiterung namens [megamenu]. Und diverse Diskussionen dazu im Forum. Einfach mal nach suchen. 

Kommentar von Michael Ziegler | 26.02.2012

Hallo
alle die das Buch mit contao 2.11 nutzen. Seit contao 2.10.x sollte der Link auf externe CSS, wie "zentrale.css" im Seitenlayout eingegeben werden. Wenn der angegebene Link auf Seite 180 (1. Aufl. korr. Nachdruck 2011) so eingegeben wird, klappt es nicht, da der Zusatz "media="screen" fehlt. Also die richtige Schreibweise: <link rel="stylesheet" type="text/css" href="tl_files/themes/blaues_theme/zentrale.css" media="screen" /> benutzen.
Gruß
M. Ziegler

Antwort von Peter Müller

Hallo Michael, 

vielen Dank für deinen Hinweis. Ich habe in der zweiten Auflage sowieso empfohlen, den Link zur zentralen CSS-Datei im Seitenlayout zu hinterlegen, weil dann Updates von Contao unter Umständen einfacher sind. 

Die zentrale.css sollte aber als Medientyp media="all" bekommen. Die Einschränkungen auf die Medientypen screen und print erfolgt dann im jeweiligen Stylesheet mit @media screen { ... }.  

Das Update auf Contao 2.10.2

Diese Website lief bis heute unter Contao 2.9.5 und ich habe mir heute nachmittag mal ein Stündchen Zeit genommen, um das Update auf Contao 2.10.2 durchzuführen. Es scheint reibungslos geklappt zu haben. 

1. Vorbereitungen

Ninas Beitrag im Forum »Tipps zum Update von Contao auf die Version 2.10.x« ist als Leitfaden sehr brauchbar und die gründliche Lektüre, auch der Beiträge darunter, dringend empfohlen. 

Externe CSS-Dateien: Vom Seitentemplate ins Seitenlayout

Ich benutze auf dieser Site externe Stylesheets und habe die Links zu zentrale.css vom Seitenlayout fe_page in den Bereich "Zusätzliche Head-Tags" in die Seitenlayouts verschoben. Danach habe ich die Datei fe_page.tpl aus dem Backend-Modul Templates gelöscht.

Grund für diese Aktion ist, dass Contao dann die fe_page automatisch aktualisiert und ich sie hinterher nicht manuell abgleichen muss. Das macht wenig Spaß, denn dort hat sich eine Menge geändert. 

Erweiterungen aktualisieren und Daten bereinigen

Im Backend-Modul System habe ich folgende Vorbereitungen getroffen: 

  • Erweiterungsverwaltung
    Alle eingesetzten Erweiterungen einzeln auf die neueste Version aktualisieren. Die Erweiterungen [helpmessage], [ce_slider], [boxes], [more_tags] und [dlstats] sind offiziell noch nicht für die 2.10.2 freigegeben, scheinen aber laut Forum und eigenen Erfahrungen problemlos zu funktionieren. 
  • Systemwartung - Daten bereinigen
    Log- und temporäre Dateien gelöscht, um die Datenbank vor dem Backup zu verkleinern. 

Backup

Wenn Backups für Feiglinge sind, dann bin ich gerne einer: 

  • Backup der Dateien auf dem Webspace per FTP  
  • Backup der Datenbank mit der Erweiterung [backupdb] 

Vorsorglich habe ich noch den Contao-Check für 2.10.2 downgeloadet

2. Das Update

Das Update selbst geht recht einfach:

  • System - Systemwartung - Live Update ID 
  • Klick auf "Aktualisierung starten"

Backup der Dateien machen lassen. Diese werden übrigens in einer Datei namens lu*.zip im Hauptordner der Installation abgelegt. 

Das Update lief problemlos durch und der anschließende Check im Frontend sah gut aus. 

3. Nachbereitung

Der eigentlich spannende Teil ist die Nachbereitung. 

TinyMCE

Nach dem Update konnte ich im Backend Änderungen an Nachrichten oder Artikeln im TinyMCE nicht speichern.

Grund dafür ist, dass ich, wie im Contao-Buch ab S. 512 beschrieben, für den TinyMCE eigene Konfig-Dateien mit entschlackten Symbolleisten erstellt habe. Das Update auf Contao 2.10 enthält auch ein Update des TinyMCE, und in dem wiederum wurden die Konfig-Dateien anscheinden geändert.

Um das Problem zu lösen, habe ich Folgendes gemacht:

  • die alte Konfig-Datei tinyMini.php umbenannt
  • die drei Zeilen für die Symbolleisten aus der alten Datei kopiert
  • eine Kopie von tinyMCE.php unter dem Namen tinyMini.php erstellt 
  • die drei Zeilen für die Symbolleisten da wieder reinkopiert. 

Man muss dabei darauf achten, dass nach der dritten Zeile jetzt ein Komma folgt, weil es nicht mehr die letzte Zeile ist.

.htaccess

Ich habe eine Kopie der .htaccess als .htacces.295 gespeichert und dann manuelle Änderungen aus dieser Datei (ErrorDocument, RewriteBase etc.) in die .htaccess.default der 2.10.2 kopiert.

Anschließend die Datei umbenennen in .htaccess und dann auf den Webspace kopieren. Frontend checken. Alles okay.

Frontend-Templates

Das Template moo_accordion_active.tpl habe ich gelöscht und stattdessen in den Seitenlayouts im Bereich "MooTools Templates" den Eintrag "moo_accordion" aktiviert. Contao 2.10 enthält ein neues Templates für die Akkordeons, sodass das eigene Template mit den Änderungen für die Grafiken zur Anzeige des Zustands nicht mehr nötig ist.

Wer Google Analytics verwendet, sollte sicherstellen, das "moo_analytics" im Seitenlayout als letztes Template eingebunden wird (ggf. Reihenfolge ändern).

Anschließend habe ich im FTP-Client einfach live auf dem Webspace die Endung von .tpl in .xhtml geändert. Die alte Endung wird zwar noch unterstützt, aber wenn schon Update, dann auch richtig. 

Ein nochmaliges Daten bereinigen war danach bei mir nicht nötig, schadet aber wahrscheinlich auch nicht.

4. Fazit

Das Update lief mit ein bisschen Überlegen und Planung problemlos durch und das Schreiben dieses Artikels darüber hat wesentlich länger gedauert.

Viel Erfolg dabei, und falls was nicht klappt, bitte im Forum fragen, nicht hier in den Kommentaren. 

Anmerkungen / Kommentare

Kommentar von Chris | 18.10.2011

Interessanter Artikel. Ich hab auch noch einige Contao-Webseiten, die auf ein Update warten und da kommt mir Dein Workaround bzw. Erfahrungsbericht sehr gelegen.
Scheint aber gar nicht so wild zu sein.

Danke!
Chris

Kommentar von Norbert | 25.10.2011

Hallo Peter, danke für den ermutigenden Bericht. Hab es auch mal probiert, mit weniger Erfolg. Deine Effizienz bei der Fehlerbehebung ist nur mit dem umfangreich wissen über contao zu erreichen. Der ambitionierte Cantao Fan tut sich mit der Umstellung schwerer. Daher ist toll wenn Experten wie du die traps aufzeigen.

Nach dem CSS Problem, hatte ich sicher Nachte gesucht und das mit dem moo_accordion muss ich mir erst mal in der Praxis anschauen.

Hast du noch einen Tipp zu mehrsprachigen Sites? Find weder das changelanguage Extension noch sonst was zu i18ln10, brauche die Seite in DE/EN.

P.s. Hab die ersten 20 Kapitel geschafft :-)

Danke
Norbert

Kommentar von Peter Müller | 08.11.2011

@Norbert
Mehrsprachige Websites sind ein ziemlich komplexes Thema. Fragen dazu würde ich einfach im Forum stellen.

Ann-Kathrin Merz hat dazu auf der Contao-Konferenz 2011 einen sehr guten Vortrag gehalten: 

Auf der Seite kann man den Foliensatz zum Vortrag als PDF downloaden.  

Die erste Auflage und Contao 2.10

Mitte August 2011 erschien Contao 2.10 und das diese Version in dem 2010 erschienenen Buch noch nicht berücksichtigt wird, dürfte die meisten Leser nicht überraschen.

Meine Empfehlung ist es, das Buch mit einer 2.9.x Version durchzuarbeiten. Contao tickt auch in der neuen Version noch genauso, und wer die Prinzipien in 2.9.x verstanden hat, der findet sich in der 2.10er sehr schnell zurecht. Version 2.9.3 ist auf der Buch-DVD und wer will, kann die Contao Version 2.9.5 downloaden.  

Wer aber das Buch lieber mit Contao 2.10 durcharbeiten möchte, kann das ziemlich problemlos tun. Einfach den folgenden Artikel gut durchlesen und gegebenenfalls ausdrucken. 

Letzte Änderung am 22. August 2011 

Und los geht's.

In Kapitel 1 und 2 hat sich nicht wirklich etwas geändert, deswegen geht es gleich los mit Kapitel 3 bis 5. 

Kapitel 3 bis 5 - Installation

Das in Kapitel 3 beschriebene XAMPPlite 1.7.3 ist als Grundlage für eine lokale Installation völlig okay. 

Die in Kapitel 4 beschriebene Installation hat sich ein bisschen vereinfacht. Man muss auf Seite 75 das Standardpasswort "contao" nicht mehr eingeben und auch der "Verschlüsselungsschlüssel" auf Seite 76 wird automatisch vergeben. 

Die ab Seite 82 beschriebene Online-Installation ist ebenfalls unverändert. Man sollte allerings auf S. 83 das Contao-Systemdiagnosetool für die V2.10 benutzen. Alles andere gilt nach wie vor. 

Auch in Kapitel 5 hat sich nichts verändert. Falls eine bestimmte Erweiterung im Erweiterungskatalog nicht angezeigt wird, ist sie eventuell noch nicht für die 2.10 freigegeben. Wenn Sie auch potentiell inkompatible Erweiterungen sehen möchten, gibt es im Backend-Modul "Einstellungen" ganz unten im Bereich "Extension Repository" eine Checkbox, um sich "Inkompatible Erweiterungen anzeigen" zu lassen. 

Kapitel 6 "Die erste Website mit Contao"

XHTML versus HTML5. In Kapitel 6 sollten Sie auf Seite 127 in Schritt 8 genau wie beschrieben die Dokumenttyp-Definition XHTML Strict einstellen. Contao gibt ab der Version 2.10 dort als Standardeinstellung "HTML" vor, womit HTML5 gemeint ist. Wenn Sie nicht genau wissen, was sich dadurch ändert und wo Sie beim Einsatz von HTML5 drauf achten müssen, sollten Sie vorerst lieber bei XHTML bleiben.  

Auf Seite 128 im Listing 6.1 hat der body die ID "top" und ein paar Klassen zur Beschreibung des Browser. Außerdem gibt es im Quelltext einen per Conditional Comment ausgelieferten Hinweis an IE6-Benutzer, dass ihr Browser veraltet sei.

CSS. In Contao 2.10 gibt es im internen CSS-Editor ein paar Neuerungen wie "Media Queries" und "Globale Variablen". Diese werden im Buch natürlich (noch) nicht erwähnt, aber ansonsten funktioniert alles wie beschrieben. Außerdem gibt es in den Eingabefeldern für margin, padding und Co jetzt kleine Pfeile, die dem Benutzer helfen sollen, die Reihenfolge top, right, bottom und left zu memorieren. Seite 138 unten im TIPP: Die Stylesheets werden jetzt im Ordner system/scripts/ erzeugt, und nicht mehr wie früher im Hauptordner. 

Templates. Wirklich was geändert hat sich bei der Beschreibung der Templates ab Seite 147. Templates haben nicht mehr die Endung *.tpl, sondern die Endungen *.xhtml und *.html5. Jedes Template existiert also doppelt und die beiden Varianten unterscheiden sich nur in der HTML-Syntax, nicht in der Funktionalität. Je nach dem im Seitenlayout gewählten DOCTYPE verwendet Contao automatisch die entsprechenden Templates. Da Sie auf Seite 127 XHTML strict gewählt haben, sind im weiteren Verlauf des Buches die Templates mit der Endung *.xhtml relevant. 

Kapitel 7 Webseiten gestalten: Contao und CSS

Interne Stylesheets liegen wie erwähnt nicht mehr im Hauptordner, sondern in system/scripts, und im internen CSS-Editor gibt es ein paar neue Optionen für CSS3 wie border-radius und dergleichen. Auf Wunsch sorgt Contao dafür, dass diese auch von alten IEs verstanden werden. 

Im CSS-Framework von Contao hat sich ein bisschen was verändert. In Listing 7.8 auf Seite 187 wird das Stylesheet system/contao.css jetzt vor dem <style>-Block eingebunden und das per Conditional Comment eingebundene iefixes.css fällt weg. IE6 wird nicht mehr unterstützt und der Patch für IE7 steht mit in contao.css. Dadurch wird 7.10.6 auf Seite 191 weitgehend überflüssig. 

Alles andere funktioniert wie beschrieben. 

Kapitel 8 Navigationen erstellen in Contao

Bei den Navigationsmodulen hat sich meines Wissens nichts verändert, außer dass die Templates jetzt die Endung *.xhtml bzw. *.html5 haben. 

Kapitel 9 und 10 Inhaltselemente

Auf Seite 252 oben wird die "Maximale Frontend-Breite für Bilder" beschrieben. Hier gibt es im Backend-Modul "Einstellung" im Abschnitt "Dateien und Bilder" eine neue Option zur Einstellung der maximalen Breite und Höhe, die die GD-Bibliothek von PHP verarbeiten soll (Feature #2156). Die Standardeinstellung ist 3000px.

Beim Inhaltselement "Tabelle" (ab Seite 265) kann man jetzt auch "Reihenüberschriften hinzufügen".

Auf Seite 279 wird beschrieben, wie man mit einem neuen Template namens moo_accordion_active.tpl für das Inhaltselement "Akkordeon" unterschiedliche Grafiken zur Statusanzeige (auf- bzw. zugeklappt) einsetzen kann. Dieses Template ist nicht mehr nötig, da diese Funktionalität jetzt im Standardtemplate enthalten ist (Feature #3264).

Kapitel 11 und 12 Formulare

Bei der Erstellung des Kontaktformulars läuft alles wie beschrieben, lediglich bei der Vorstellung der Formularfelder hat sich etwas geändert. Das HTML für Radio-Button- und Checkbox-Menü enthält jetzt statt wie bisher ein div ein fieldset drumherum (Feature #1257). 

Beim Suchformular bleibt in 2.10 alles wie beschrieben. Wer die Anmerkungen zu Kapitel 12 hier auf der Website und im Contao-Forum gelesen hat, kommt da gut durch. 

Kapitel 13 bis 17 Erweiterungen

Ich habe mit Contao 2.10 bis jetzt weder ein Nachrichten-Modul, noch einen Kalender oder Newsletter aufgesetzt, glaube aber nicht, dass es in diesen Bereichen grundlegende Neuerungen gegeben hat. Die Templates haben jetzt die Endung *.xhtml bzw. *.html5, aber sonst sollte alles wie beschrieben funktionieren. 

Kapitel 17 bis 22 Systemverwaltung

Bei den in V2.9 neu hinzugekommenen und in Kapitel 17 beschriebenen Themes hat sich nichts geändert.

Auch bei der Optimierung für Suchmaschinen in Kapitel 18 ist alles wie beschrieben. 

Die Verwaltung der Mitglieder (Kapitel 19) und Benutzer (Kapitel 20) ist meines Wissens unverändert.

Kommen wir zu Kapitel 21. Dort hat sich, ähem, fast nichts geändert. Auf Seite 505 oben liegen die Stylesheets mit der Endung *.css jetzt im Ordner system/scripts, und nicht mehr im Hauptordner.

In Kapitel 22 gibt es eine kleine Änderung bei der Konfiguration des TinyMCE. Im ToDo auf Seite 513 sollten Sie in Schritt 6 doch ein Komma nah der Zeile theme_advanced_button3: "", setzen, denn das ist inzwischen nicht mehr die letzte Zeile in der Konfigurationsdatei.

Und es gibt auf Seite 528 einen neuen Insert-Tag namens { {ifnlng} }. Details dazu im Tracker: Feature #2719

Fazit

Beim Durcharbeiten des Buches mit der V2.10 dürfte es eigentlich keine grundlegenden Probleme geben.

Im September werde ich das Buch für die zweite Auflage grundlegend überarbeiten. Das basiert dann auf der 2.10, aber es wird wohl nicht vor Mitte/Ende November erscheinen.

Viel Spaß mit Contao auf jeden Fall.   

Anmerkungen / Kommentare

Kommentar von Karolina Müller | 06.09.2011

Hallo, ich arbeite seit zwei Tagen mit dem Buch, ich bin total gut zurechgekommen mit den Anweisungen, aber jetzt klappt garnichts mehr. Ich versuche schon zum zweiten Mal eine horizontale navigation zu machen. Es klappt nicht, auch wenn ich die Original CSS aus dem Buch verwende und wirklich alles genau so mache. Ich habe keine Idee mehr wie ich das Problem lösen soll. Eigentlich gefällt mir das Programm sehr gut, aber jetzt im Moment... Ich wäre für jede Hilfe sehr dankbar.
Mit freundlichen Grüßen
Sr. Karolina Müller

Kommentar von Peter | 06.09.2011

Hallo,

ab ins Forum mit der Frage. Wenn ich Zeit habe, schaue ich dort auch
nach, und es gibt dort viele Leser. Vielleicht hatte ja jemand
ähnliche Probleme.

Und im Forumsbeitrag erwähnen, was nicht klappt:

  • Welche Contao-Version?
  • Ist gar keine Navigation vorhanden?
  • Oder wollen die Navigationspunkte nicht nebeneinander stehen?
  • Bis wohin genau klappt denn alles (Seitenzahl etc.)?
  • Kann man die Site irgendwo online betrachten?

Nur mit "irgendwie geht das nicht" kann man schlecht helfen ;-)

===

NACHTRAG 

Es gab zwei Fehler

  1. Die Site basiert auf Contao 2.10 und als DOCTYPE war HTML5 eingestellt. Dann stimmen die Selektoren aus dem Buch-CSS natürlich nicht mehr. Empfohlener DOCTYPE ist XHTML Strict
  2. Das interne Stylesheet navigation war extern erstellt und dann importiert worden. Vor dem Importieren muss man die Anweisung @media { ... } entfernen, da sonst beim Import einiges kaputt geht.

Nu geht's. 

Kommentar von Markus | 28.09.2011

Unsere Schulwebsite funzt prima mit Contao 2.9.5 Sie ist gestrickt mit Contao und YAML.

Frage: Ist die Umstellung auf 2.9.10 auch mit YAML problemlos oder muss man hier was besonderes beachten?

Frage 2: Rentiert nach der Umstellung auf body css Klassen noch YAML? Die Zahl der nicht kompatiblem Browser nimmt ja stetig ab.

Kommentar von Peter | 28.09.2011

Vorweg: Ihre Frage wäre im Forum wesentlich besser aufgehoben als hier. Am besten mit Link. Und die neue Contao-Version heißt 2.10 ;-)

Wenn die Site "prima funzt", gibt es keinen dringenden Grund upzudaten. Egal ob mit oder ohne YAML.

Frage 1: Vielleicht. Vielleicht auch nicht. Die Antwort kann nicht konkreter sein als die Frage...

Frage 2: Für die meisten Websites reicht das CSS-Framework von Contao aus. Ob YAML sich lohnt oder nicht hängt von vielen Details ab, aber wenn es nur um kompatible Browser geht sicher nicht. Das sollte aber noch nie der Hauptgrund gewesen sein, um YAML einzusetzen.

Alles weitere wie gesagt lieber im Forum als hier.

Kommentar von Connie Müller-Gödecke | 27.10.2011

Moin!
Ich folge Ihrer Anleitung, eine lokale Seite auf den Webserver zu bringen. Habe alles hochkopiert und Installtool aufgerufen.

Nun kommt eine Fehlermeldung, kann die Datenbank nicht konnektieren. Ist klar, andere Anmeldedaten, aber:

Ihr Satz: "müssen Sie die Zugangsdaten zur Datenbank im Installtook aktualisieren"

Wo bitte? Ich bekomme dort keinen Dialog, sondern nur die Fehlermeldung. Hier hätte ich gerne ein wenig Erleuchtung ;=)

Viele Grüsse, CMG

Kommentar von Hagen Stadtmüller | 04.11.2011

Es scheinen aber beim durcharbeiten des Buches mit Contao 2.10.x noch mehr Probleme auf zu treten.
So habe ich beim durcharbeiten in Kapitel 17 folgende Probleme festgestellt. Nach umstellen von Blaues Theme auf Cover Theme hat sich folgendes geändert und Head-Line: zeigt folgende Unterschiede:

Blaues Theme: Kontakt | Impressum | Sitemap
Cover Theme: Impressum | Nachrichten

Und in der rechten Spalte der „Startseite“

Lesetipps (pull down Menue hat folgende Einträge:
Blaues Theme: Nachrichten | Text und Bilder | Weitere Elemente | Videos

Cover Theme: Downloads | Text und Bilder | Videos

Newsletter abonnieren:
Blaues Theme: funktioniert alles
Cover Theme: Folgende Nachricht wird angezeigt „Bitte wählen Sie mindestens einen Verteiler aus.“ (Abo geht sonst einwandfrei)

Gruß
Hagen

Kommentar von Peter Müller | 08.11.2011

@Connie Mülle-Gödecke

Falls Sie tatsächlich keinen Dialog bekommen, können Sie die Zugangsdaten auch direkt im Ordner system/config/ in der localconfig.php ändern.

Ansonsten sind solche Fragen im Contao-Forum besser aufgehoben. Da hätten Sie bestimmt auch schon lange eine Antwort bekommen, denn ich war im Urlaub Zwinkernd

Kommentar von Peter Müller | 08.11.2011

@Hagen Stadtmüller

Das scheint mir auf Anhieb nichts zu sein, was nicht in Kapitel 17.3 "Über die Anpassung von Themes" beschrieben wird. Einfach nur die IDs anpassen.

Mit der Versionsnummer 2.10 hat das ziemlich sicher nichts zu tun.

Kapitel 12: Suchfunktion zeigt kein Ergebnis an

Leo hat ab V2.9.2 im Modul "Suchmaschine" einen Bug behoben, sodass dieses kein Suchergebnis mehr ausgibt, wenn man eine Weiterleitungsseite definiert. Ich habe diesen Sachverhalt in einem Forumsbeitrag ausführlich geschildert:

Im Buch wird die Einrichtung einer Suchmaschine in Kapitel 12 geschildert. Ab Seite 319 beschreibe ich im Buch, wie man den Modultyp "Suchmaschine" einrichtet, und auf Seite 320 wird eine Weiterleitungsseite für das Modul eingerichtet. In Abbildung 12.4 auf Seite 321 sieht man diesen Vorgang abgebildet. Nun denn: Die Einrichtung einer Weiterleitungsseite führt seit V2.9.2 dazu, dass kein Suchergebnis mehr ausgegeben wird.

UPDATE: Im ersten Nachdruck des Buches ist dieser Fehler behoben. Wenn im Buch auf Seite 4 unten "1. korrigierter Nachdruck 2011" steht, hat man ein Exemplar aus dem ersten Nachdruck. 

Kurzfassung

Lösung: Keine Weiterleitungsseite definieren, dann werden die Suchergebnisse wieder ausgegeben. Falls bereits eine Weiterleitungsseite definiert ist, einfach die Option Auswahl aufheben ankreuzen und speichern.

Langfassung

Momentan steht auf Seite 320 unten folgender Text:

Das Prinzip der Weiterleitungsseite kennen Sie bereits, und es funktioniert hier genauso wie immer. Mit der Weiterleitungsseite sagen Sie dem Modul, welche Seite es aufrufen soll. Auf dieser Seite muss ein Modul vom Typ Suchmaschine eingebunden sein.  [und das ist FALSCH!]

Diese Aussage ist nicht ganz richtig. In Contao 2.9.1 hat das Suchmodul trotz Weiterleitungsseite funktioniert, aber Leo schreibt im Forum (Link in neuem Fenster), dass das genau genommen ein Bug war. Dieser Bug ist in V2.9.2 behoben, was zur Folge hat, dass das Suchergebnis nicht mehr ausgegeben wird, sobald eine Weiterleitungsseite definiert wurde. 

Auf Seite 320 sollte schlicht und einfach stehen:  

RICHTIG: 
Die Definition einer Weiterleitungsseite ist nicht nötig, wenn das Modul wie in diesem Beispiel in einem Artikel eingebunden wird. 

Damit entfällt auch auf Seite 321 im ToDo Schritt 6 und die Nummerierung der nachfolgenden Punkte auf Seite 322 oben verschiebt sich um jeweils eine Zahl. 

Ist der erste richtige Fehler im Buch, den ich entdeckt habe, obwohl er genau genommen zum Zeitpunkt des Schreibens noch keiner war Zwinkernd

Kommentare

Kommentar von makcie | 21.12.2010

Ein Buch über Contao ist nie fertig :-)

Habe gestern meine Contao-Testsite mit Version 2.9.2 aktualisiert. Ergebnis: die Suche funktionierte nicht mehr. Habe dann das Problem so wie im Beitrag beschrieben gelöst. Zitat: 

“Die Definition einer Weiterleitungsseite ist nicht nötig, wenn das Modul wie in diesem Beispiel in einem Artikel eingebunden wird.“

Einbinden des Suchmoduls in einem Artikel und Definition einer Weiterleitungsseite, das war wohl doppelt gemoppelt.
Trifft das Zitat grundsätzlich zu oder nur auf das Modul vom Typ Suchmaschine?

Kommentar von Peter Müller | 21.12.2010

> Trifft das Zitat grundsätzlich zu oder
> nur auf das Modul vom Typ Suchmaschine?

In den meisten Fällen verweisen Weiterleitungsseiten ja auf eine Unterseite und sind insofern auch sinnvoll.

Hier im Suchmodul trifft das "wohl doppelt gemoppelt" die Sache ganz gut. Eine Weiterleitungsseite ist nicht nötig, weil die Ausgabe ja auf der Seite erfolgt, auf der das Modul eingebunden ist.

Kommentar von Bernd | 11.01.2011

… und ich hatte Ihrem Buchtext blind vertraut und mich gefragt, was ich falsch gemacht habe – wo doch alles andere wunderbar funktioniert.
Naja, jetzt läuft es ja :)

Kommentar von makcie | 11.01.2011

Wie gut, dass es eine Website zum Buch mit aktuellen Hinweisen gibt.

Inzwischen habe ich mich noch mal etwas intensiver mit der Contao-Suchfunktion beschäftigt.

Im Kommentar vom 21.12.2010 heißt es:
"Eine Weiterleitungsseite ist nicht nötig, weil die Ausgabe ja auf der Seite erfolgt, auf der das Modul eingebunden ist."
Genau das ist der springende Punkt!

Die Suchseite mit dem eingebundenen Suchmaschinenmodul wird im Beispiel mit dem Suchformular aufgerufen (siehe Hinweis auf Seite 318 oben und Schritt 4 in der ToDo-Liste auf Seite 327). Es also nicht notwendig (und auch nicht sinnvoll), sie noch einmal mit dem eingebundenen Suchmaschinenmodul aufzurufen.

Bis Version 2.9.1 wurde in Contao die Angabe einer Weiterleitungsseite im Suchmaschinenmodul toleriert, ab Version 2.9.2 nicht mehr. Leo Feyer bezeichnet das als Bug, der nunmehr beseitigt wurde.

Auf seiner Demoseite "Webconsulting" hat er selbst noch nie im Suchmaschinenmodul eine Weiterleitungsseite angegeben. Das trifft auch auf die Demoseite "Music_Academy" zu. Dort wurde die Suchseite nicht im Menü versteckt, sie wird also im Navigationsmenü angezeigt; ein spezielles Suchformular zum Aufruf der Suchseite ist insofern nicht erforderlich.

Warum wird überhaupt im Eingabeformular des Suchmaschinenmoduls die Option einer Weiterleitungsseite angeboten? Falls dieses Modul in einem Seitenlayout eingebunden wird? Ich kann mir nicht vorstellen, dass das sinnvoll ist; dieses Modul ist in einem Artikel auf der Suchseite am besten aufgehoben, denn die Suchmaschine soll doch nur auf dieser einen Seite angezeigt werden.

Und braucht man wirklich eine Referenzseite?
Es besteht doch die Möglichkeit, einzelne Seiten von der Suche auszuschließen.

Also im Normalfall gilt: keine Weiterleitungsseite und auch keine Referenzseite im Suchmaschinenmodul angeben.

Kommentar von Peter | 12.03.2011

Die Weiterleitungsseite ist sinnvoll, wenn das Modul "Suchmaschine" als Suchformular im Seitenlayout eingebunden wird. Siehe auch meinen Beitrag im Forum

Kommentar von makcie | 15.03.2011

Habe den Beitrag im Forum gelesen und die neue Lösung mit dem Beispiel k22 lokal getestet.

Die neue Lösung funktioniert, sie ist verblüffend einfach.
Es waren nur ein paar Anpassungen in der bildschirm.css erforderlich.

Kommentar von andreas | 11.04.2011

Grrr.... ich habe mindestens 10x die Suchseite neu erstellt weil ich dachte das ich irgendwo wieder einen Fehler gemacht habe. :/

Leider kann ich das jetzt so nicht einfach ändern? Ich finde jedenfalls die Auswahl "Referenz" oder "Weiterleitungsseite" im Modul nicht mehr.

Kommentar von Peter | 11.04.2011

Hallo Andreas,

sorry, aber ich kann nix dafür. Zum Zeitpunkt des Schreibens stimmte alles noch. Im ersten Nachdruck Anfang 2011 ist das soweit möglich korrigiert.

Bei einem Modul vom Modultyp "Suchmaschine" gibt es zwei grüne Bereich namens "Weiterleitung" und "Referenzseite". Sind die vielleicht eingeklappt?

Ansonsten lösche die Module einfach und folge der Anleitung im Forum. Link dorthin findest du oben auf dieser Seite. Das ist die einfachste Möglichkeit, eine Suchfunktion einzubauen.

Hope it helps
Peter

Kommentar von Andreas | 11.04.2011

War nicht als Vorwurf gemeint!

Grüne Bereiche gabs bei mir nicht! Alles gelöscht und wie im Forum beschrieben neu erstellt.

Suche funktioniert aber CSS wird nicht umgesetzt. Die Suchmaske sitzt im Header rechts über der Hauptnavi, so wie auf Seite 331.
Suchergebnisse inkl. Suchmaske werden in der Sucheseite angezeigt.
Ich muß doch das CSS nicht auch nochmal neu eingeben? Ich verstehe nicht warum die CSS Anweisungen nicht mehr greifen???

Andreas

Kommentar von Andreas | 11.04.2011

Edit:

die id und klasse #suchformular , .mod_form gibts nicht wenn ich das so erstelle wie beschrieben.

Kommentar von Peter Müller | 13.04.2011

Hallo Andreas,

ich bin gerade mitten im Seminar und habe nur ganz wenig Zeit, aber es kann gut sein, dass du das CSS anpassen musst, da du ja kein Formular mehr erstellst, sondern nur das Modul einbindest.

Wenn das CSS nicht greift, ist das so gut wie sicher die Ursache, dass die Selektoren nicht mehr stimmen. Am einfachsten mit Firebug eben schauen, wie die IDs oder Klassen lauten und dann die Selektoren anpassen.

Peter

Nachtrag

Und hier das passende CSS (bildschirm.css)

* ======================================
  Das Suchformular positionieren 
  ====================================== */

/* CSS für Formular mit Formulargenerator (wie Contao-Buch K12.2)*/
#header #suchformular { margin: 0; }
#header #suchformular .text { width: 100px; }
#header .mod_form {
 position: absolute;
 right: 0;
 bottom: 0;
 padding: 5px;
}

/* NEU: CSS für Formular mit Modultyp "Suchmaschine" */
#header .mod_search {
 position: absolute;
 right: 0;
 bottom: 0;
 padding: 5px;
}
#header .mod_search form { margin: 0; }
#header .mod_search input.text {
 width: 100px;
 padding: 0;
}

Kommentar von Andrés | 24.02.2012

Danke!! es war so einfach!!
Ich war fast eine Woche damit beschäftigt. Na ja, ich habe immer noch die 1. Auflage 2010, aber ich bin ganz zufrieden mit Contao und mit dem Buch!

Formulardaten auf der Danke-Seite ausgeben

Wie man ein Kontaktformular erstellt, wird im Buch ab Seite 289 beschrieben. Wie Sie auf der Weiterleitungsseite ("Vielen Dank ...") die Formulardaten ausgeben, steht in diesem Beitrag.

1. Formular erstellen

Zur Erstellung eines Formulars benötigen Sie folgende Zutaten:

  • eine Seite, auf der das Formular erscheinen soll (S. 122)
  • ein Formular, das Sie mit dem Formulargenerator erstellen (S. 292 ff.)
  • einen Artikel auf der Seite, in dem Sie das Formular einbinden (S. 298)
  • eine zweite Seite (Weiterleitungsseite), die nach dem Abschicken des Formulars aufgerufen wird und auf der eine Mitteilung wie "Vielen Dank" für den Besucher erscheint (S. 290). 
  • Die zweite Seite wird in den Eigenschaften des Formulars als Weiterleitungsseite eingetragen (S. 292).

Damit funktioniert das Formular und nach dem Abschicken wird die "Vielen Dank"-Seite aufgerufen.

2. Formulardaten auf der "Vielen Dank"-Seite ausgeben

Wenn Sie auf der "Vielen Dank" - Seite die Formulardaten noch einmal ausgeben möchten, geht das am besten mit einem speziellen Insert-Tag ala { {form::feldname} }. Diese speziellen Insert-Tags für Formulare sind nicht im Contao-Core enthalten, aber es gibt zwei einfache Wege sie in Contao zu integrieren:

  • die Erweiterung [moretags]
  • die Erweiterung [efg] (Extended Formular Generator)

Wenn Sie einfach nur die Formulardaten auf der Danke-Seite ausgeben möchten, reicht [moretags]. Falls Sie auch noch eine Antwortmail mit den Formulardaten verschicken möchten, ist der [efg] die Erweiterung der Wahl. Damit können Sie die Formulardaten auch noch in der Datenbank speichern und bequem im Backend verwalten, ohne phpmyAdmin oder sowas starten zu müssen.

Nützliche Links zum [efg]

Hier noch zwei nützliche Links zum Extended Form Generator: 

Und jetzt viel Spaß mit der Erstellung von Formularen. 

Kommentare

Kommentar von Andreas Schempp | 21.12.2010

Mit der Erweiterung "inputvar" und dem InsertTag { {post::feld} } müsste es auch gehen ;-)

Kommentar von Peter Müller | 21.12.2010

[inputvar] hatte ich nicht erwähnt, weil du im Repository die "Installation und Verwendung nur für sehr erfahrene Anwender" empfiehlst. Aber gehen müsste es ;-)

Rückblick: Contao-Konferenz 2011

Mit knapp 200 Leuten waren fast doppelt so viele Leute dort wie vor Jahresfrist auf dem Usertreffen in Essen, aber der fast familiären Atmosphäre hat das nicht geschadet.

Ich habe jede Menge Leute getroffen, die ich bis jetzt nur per Mail oder aus dem Forum kannte, und es waren mindestens noch einmal genauso viele, die ich nicht getroffen habe und gerne kennen gelernt hätte. 

Workshop und Session

Die Themen der Workshops und Präsentationen waren dem Mix aus Contao-Einsteigern und -Profis angemessen, und ich denke es war für alle was dabei.

Die Zeit verstrich unheimlich schnell, und das nicht nur, weil Thomas und ich noch intensiv am Feinschliff für den Best-Practice-Workshop und die CSS3-Präsentation gefeilt haben. Thomas hat übrigens eine Website dazu erstellt:

Hier ein paar Fotos von unserem Workshop und der Session. Die Fotos stammen von Hannes Munzinger.

Von den anderen Workshops und Sessions habe ich meist leider nur ausschnittsweise was mitbekommen. Dafür waren die Abende umso kurzweiliger. 

Jam Session

Selbst die Jam-Session nach dem BBQ am Donnerstag abend hat Spaß gemacht. Leo Feyer an der Gitarre, Georg Derks am E-Piano und Harry Boldt (Gitarre) entpuppten sich begleitet von diversen Perkussionisten als lebende Jukebox.

Musikwünsche aus dem Publikum wurden falls unbekannt oder zu kompliziert ("Bohemian Rhapsody") pointiert abgewiesen oder falls möglich improvisiert und kurzerhand umgesetzt, mit diversen Smartphones als Teleprompter für die Texte. 

Auf Facebook kursieren bereits erste Video-Aufnahmen von "My Way" und "Hotel California", und Carsten hofft inständig, dass seine Darbietung von "Stand By Me" nicht "leaken" wird. Mal sehen.

Nächstes Jahr suchen wir uns vorab noch ein paar Songs mit weniger als 37 Akkorden aus, nehmen noch ein paar Texte mit, und dann wird das noch besser.

UPDATE vom 25. Juni 2011 

Hier noch ein kurzer Ausschnitt aus "Is She Really Going Out With Him" von Joe Jackson. Vielen Dank an Hans J. Nuecke von megazine3.de, der das Video aufgenommen und zur Verfügung gestellt hat. 

Und es gibt noch zwei Videos. Habe ich gerade auf YouTube gefunden:

 

Fazit

Kurzum: Die Reise hat sich gelohnt. 

Zum Schluss noch einmal ganz vielen Dank an die Organisatoren Fabian Fauth und Alexander Bröss. Wir sehen uns spätestens im nächsten Jahr. 

Feedback

Kommentar von Alex Halm | 10.06.2011

Danke für den kurzen Einblick mit Fotos.

Ist ja ein illustre Runde, die sich da zusammengefunden hat.
Contao ist das erste CMS, mit dem ich mich ernsthaft beschäftige. Dank der Bücher von Peter Müller und Thomas Weitzel selbst für Hobbywebsitebastler wie mich kein großes Problem.

Ein hochinteressanes Experimentierfeld. Macht viel Spaß!

Gruß
Alex

Kickstart für eine Quick-Navigation

Im Forum tauchte die Frage auf (Link zum Thread), wie man einen per Quicklink erstellten "Lesetipp" auch ohne einen Klick auf dem Submit-Button "Los" aufrufen kann. 

Ich bin kein JavaScript-Guru und es geht bestimmt eleganter, aber ich habe folgende Anleitungen gefunden, die ich beim Schreiben des Buches mal an einen Testleserin geschickt hatte. 

Teil 1: "OnChange: Kickstart für die Dropdownlisten"

Damit eine Auswahl sofort ausgeführt wird und nicht erst mit einem Klick auf die Schaltfläche "Los" bestätigt werden muss, kann man im Template eine JavaScript-Anweisung ergänzen:

  • Im Backend-Modul "Templates" ein neues Template auf der Basis von mod_quicklink.tpl (oder mod_quicknav.tpl) erstellen und speichern.
  • Das Template zur Bearbeitung im Editor öffnen (zweites Symbol von rechts).
  • Die Zeile mit dem HTML-Element select suchen und folgende Zeile ergänzen (sollte in einer Zeile stehen): 
    <select name="target" id="ctrl_target" class="select" onchange='this.form.submit()'>
  • Das Template speichern.

Wenn man jetzt in einer Quicklink-Navi eine Seite aus der Auswahlliste anklicken, springt man nach dem Anklicken direkt dorthin.

Teil 2: "LOS-Button ausblenden" (Update)

Meistens kommt dann gleich hinterher die Frage, ob man den LOS-Button ausblenden kann, wenn JavaScript aktiviert ist. Kann man. Dazu gibt es zwei Möglichkeiten, eine einfache und eine komplizierte. Die komplizierte blendet den Button per JS aus und ist von mir, die einfache arbeitet mit dem Element <noscript> (siehe Kommentar unten).

Die simple Lösung mit <noscript> zuerst:

  • Im BE-Modul "Templates" das Template aus Teil 1 im Editor öffnen.
  • Den Submit-Button mit <noscript> umzingeln: 
    <noscript><input type="submit" ... /></noscript>
  • Template speichern 
  • Fertig. 

Das funktioniert wunderbar, und vielen Dank an Jonas für den Hinweis im Kommentar weiter unten. 

Und jetzt, der Vollständigkeit halber, noch die komplizierte Lösung per JavaScript, die ich mir ausgedacht hatte:  

  • Im BE-Modul "Templates" das Template aus Teil 1 im Editor öffnen.
  • Eine ID an den Submit-Button geben, z. B. so
    <input type="submit" class="submit" id="wechdamit" value="<?php echo $this->button; ?>" />
  • Im BE-Modul "Seitenlayout" das Seitenlayout für die betreffende(n) Seite(n) öffnen. 
  • Im Feld "Eigener JavaScript-Code" folgendes JavaScript eintragen, dass das Element mit der eben vergebenen ID ausblendet: 
    <script type="text/javascript">
    <!-- 
    var buttonwech = document.getElementById('wechdamit');
    buttonwech.style.display = "none";
    --></script>

Wenn alles glatt geht, ist bei JavaScript an => Button wech und bei JavaScript aus => Button da. Frag mich nicht, ob das elegant oder gutes JavaScript ist, aber es funktioniert. Ich habe es gerade auf little-boxes.de eingebaut. 

Kommentar zum Beitrag?

Kommentar von Jonas | 01.08.2011

Hallo,
man kann sich das JavaScript sparen, in dem man den Submit-Button einfach in einen <noscript>-Bereich legt. Siehe auch im Forum: Quicklink - Auswahl direkt ausführen
Liebe Grüsse
Jonas

Kommentar von Peter | 01.08.2011

Ich fand es schon pfiffig, den Button via JS auszublenden, damit er ohne wieder da ist, aber die Idee mit <noscript> ist echt besser. Funktioniert wunderbar.