Die letzten Wochen habe ich mich auf der Arbeit viel mit
t3Blog, der neuen Blog-Extension der Schweizer Firma
Snowflake beschäftigt. War die bisherige Arbeit mit tt_news und timtab doch immer eine ziemliche Fummelei, erweckte die überwiegend
positiv besprochene Extension hohe Erwartungen in mir. Sollte man doch mit wenigen Mausklicks einen Blog aufsetzen können. Doch wie die Realität zeigt: So einfach ist das nicht. Besser gesagt: So wie ich das will, ist das nicht einfach.
Möchte man die Extension Out-of-the-Box installieren und ist mit dem mitgelieferten Layout auch glücklich, dann geht es wirklich schnell und man kann bereits nach wenigen Minuten anfangen zu bloggen. Bei uns sollte das Ganze aber in eine bestehende Seite mit einer bestehenden Navigation integriert werden. Dazu sollten es die einzelnen Backend-Benutzer in ihren Zweigen jeweils einsetzen können, ohne das sich die Blogs ins Gehege kommen und ohne das die Benutzer mit TypoScript in Berührung kommen. Dafür waren einige Änderungen, Erweiterungen und ausführliche Tests nötig. Insgesamt ist das Konzept, die einzelnen Anwendungen in sogenannte Widgets zu kapseln, sehr gelungen. Dadurch weiß man recht gut wie und wo man ansetzen muss und will.
Ich möchte mich auch bei
Thorsten Schneider und beim
Kaktusteam bedanken, die mir besonders beim RSS-Feed mit ihren Einträgen geholfen haben. Den Blog bei uns im Einsatz, gut eingepasst in die bestehende Navigation und Seitenstruktur sieht man auf unseren
Seiten des Rechenzentrums. In den nächsten Zeilen werde ich grob auf einige Klippen und Hürden eingehen, die umschifft werden mussten. Einigen Code dazu in der Langfassung des Artikels.
1. TemplaVoila: Hauptproblem mit TemplaVoila ist, dass die Inhaltselemente doppelt angezeigt werden. Um dies zu umgehen habe ich ein neues TO erschaffen, dass einen zusätzlichen Inhaltsbereich, deckungsgleich mit dem eigentlich Inhaltsbereich enthält. Der eigentliche Inhaltsbereich wird über CSS ausgeblendet. Jetzt kommen die für den Blog genutzten Content Element in den nicht-sichtbaren Bereich und die Blog-Elemente in den sichtbaren Bereich. So kann man recht elegant das Problem der doppelt angezeigten Elemente bei t3blog umgehen.
2. BE-User Autorfeld: Blöd ist, dass ein eingeloggter BE-User alle anderen User als Autor auswählen kann, nicht nur die aus seiner BE-Gruppe. Das kann man umgehen, in dem man das Auswahlfeld nicht sichtbar macht und den Autor vorbelegt.
TCAdefaults.tx_t3blog_post.author :=author_return(uid)
3. Template Einstellungen: Ich finde es zwar nicht schlecht, dass man den Blog nahezu komplett über TS konfigurieren kann, aber es ist nicht immer ganz ersichtlich, ob man jetzt pi1 oder pi2 ansprechen muss. Da ist Rumprobiererei angesagt. Danach lassen sich aber Labels und Einstellungen sehr gut ansprechen. Trotzalledem bin ich nicht drumherum gekommen in den eigentlich setup.txt - Dateien Einstellungen vorzunehmen. Da diese mehrfach verschachtelt und sehr komplex sind, war es für mich weniger aufwendig schnell die setup.txt zu editieren und die Änderungen für spätere Updates zu dokumentieren, als das alles in das TS-Setup der Seite zu packen. Ich habe einige Einstellungen in den Wraps vorgenommen um z.B. das Autorenbild auszublenden, die Anzahl der Kommentare einzuklammern, Kategorie und Autor mit einem Bezeichner zu versehen und Elemente mit einer zusätzlichen umgebenden <div>-Box zu versehen, um sie mittels CSS besser stylen zu können.
4. CoolURI: Leider arbeitet t3blog noch nicht korrekt mit CoolURI zusammen. Um das zu umgehen, habe ich mir eine kleine userFunc in der localconf.php geschrieben, die abfragt ob auf der jeweiligen Seite ein Blog-Element vorhanden ist. Wenn dem so ist, dann wird CoolURI für die Seite einfach abgeschaltet.
5. Kommentar E-Mails: Bei neuen Kommentaren wird eine E-Mail an den Adminstrator verschickt. Normalerweise kann man den über den Constant Editor einstellen. Da ich diesen dem Benutzer nicht zur Verfügung stellen will, habe ich die Widget-Auswahl-Maske um ein Feld zur Eingabe einer E-Mail-Adresse erweitert. Jetzt kann der Benutzer beim Anlegen eines Blogs selber festlegen, an welche Adresse er die Mails haben möchte.
6. TagCloud: Leider sortiert die TagCloud standardmäßig nach dem Vorkommen der Begriffe. Ich wollte aber lieber eine Sortierung nach Alphabet. Dazu muss man einfach in der Datei class.tagCloud.php die Funktion sortByCountValue() auskommentieren.
7. JS-Files: Die JS-Files binden wir manuell ein und auch nur dann, wenn sich auf der Seite auch ein Blog befindet. Dazu bedienen wir uns wieder der userFunc die ich schon für CoolUri geschrieben habe.
8. CSS Styling: Das Styling des Blogs erfolgt in CSS-Dateien. Hier war auch einiges an Anpassung nötig, da die von Snowflake mitgelieferten Vorgaben nur auf das vorgegebene Layout passten. Aber mit viel Ausprobieren habe ich eine schöne Lösung gefunden, die die BlogList links und alle Widgets rechts auf der Seite positioniert. Von den Maßen her ist es sehr an unsere TYPO3-Installation angepasst, eine Weitergabe bringt nicht viel.
9. RSS-Feeds: Am meisten Probleme bereiteten die RSS-Feeds. Hier musste ich einige Eingriffe im Code vornehmen, damit nur die Beiträge aus dem zugehörigen Blog und nicht alle angezeigt werden. Außerdem wollte ich lieber einen Full-Feed statt einen Short-Feed. Auch hierzu musste der Quelltext abgeändert werden, da wir statt dem Text die UID brauchten um das zugehörige Content Element manuell zu rendern. Ansonsten habe ich keinen schönen Feed bekommen. Bei den Links musste man das vorkommende & maskieren und durch & ersetzen. Zum Schluß habe ich noch die komplette Feed-Metadaten, die man normalerweise über den Constant Editor setzen kann so umgeschrieben, dass sie entweder automatisch generiert werden, von mir allgemein vorgegeben werden oder vom Benutzer selber über zusätzliche Felder bei der Widget-Auswahl eingegeben werden können.
Fazit: Ein hartes Stück Arbeit, aber im Ergebnis eine sehr gut in TYPO3 integrierte Blog-Umgebung die jeder Benutzer komfortabel in seinem eigenen Zweig nutzen kann. Als kleinen Bonus gibt es noch einen Auszug aus dem Handbuch für unsere Benutzer zum Download: Benutzerhandbuch_Blog.pdf
"t3blog - die neue Blog-Extension für TYPO3" ... »
Kommentare
Mo, 21.11.2011 20:33
jetzt wird alles besser !Neuer Trainer und entlich ein neuer zweiter Spieler.Kann nur sage n super Wagner!!!!!!!
Mo, 21.11.2011 18:55
vom trainerverschleiß vergleic hbar mit dem hsv, vom spielern achkaufniveau vergleichbar mit den wölfen aus der vw-s [...]
Mo, 21.11.2011 16:58
Umbruch und Umbau??? Gerne hä tten das ALLE Fans "VOR" der S aison gesehen und nicht wenn e s als Zuschauer -keinen- [...]
Sa, 19.11.2011 16:08
Das mit dem Auspfeiffen sehe i ch nicht als so schlimm an. De r Fan darf sein Team bejubeln, der Fan darf schweigen, [...]
Sa, 19.11.2011 16:07
Ob das unbedingt der Center ma chen muss, darüber lässt sich natürlich streiten. Ich denke, das ist auch immer ein [...]