Zum Inhalt der Seite springen
zeroseven design studiosZur Startseite
Menü und Suche ein/ausblenden

Die neue Blog-Erweiterung z7_blog für TYPO3 bringt einiges an Funktion und geht völlig neue Wege um eine noch nie dagewesene Flexibilität für TYPO3-Entwickler und Redakteure zu bieten:

 

Free Download

Seitenbasierte Blog-Posts

Um die vielseitigen Möglichkeiten aus TYPO3 voll ausschöpfen zu können, setzt die neue Blog-Erweiterung auf das Seitenkonzept von TYPO3. Alle Funktionalitäten eines modernen Internetauftritts, angefangen von Metadaten aus den Seiteneigenschaften, Canonicals und Templates bis hin zu sämtlichen Content-Elementen und Plugins der Website, stehen somit auch für die Posts der zeroseven Blog-Erweiterung zur Verfügung. Der gesamte Blog lässt sich dadurch nahtlos ins TYPO3-System integrieren und über den TYPO3-Seitenbaum einfach und übersichtlich verwalten. Dabei unterstützt die z7_blog die volle Leistung die TYPO3 und der jeweilige Internetauftritt bieten, sowohl als integrierter Blog in der bestehenden Website, als auch als separate Instanz im TYPO3-System.

Kategorien im TYPO3-Seitenbaum

Als völlig neuartiges und innovatives Konzept präsentieren sich auch Kategorien in Form von TYPO3-Seiten. Kategorien stellen somit nicht mehr nur ein reines Filter-Kriterium dar, sondern können den User über thematische Einstiegsseiten durch den Blog führen. Zusätzlich lassen sich die Kategorien dadurch mühelos in einer Navigation integrieren.

Die Verwaltung von Blog-Posts im Backend kann dadurch intuitiv per Drag&Drop erfolgen – eben ganz so, wie man es von TYPO3-Seiten gewohnt ist.

Automatische Sortierung von Post im Seitenbaum

Automatische Sortierung von Posts im Seitenbaum
Damit die Seitenstruktur auch im Backend für den Redakteur übersichtlich und aufgeräumt bleibt, übernimmt die z7_blog die Sortierreihenfolge von Blog-Posts im Seitenbaum ganz automatisch. Analog zum Frontend werden somit auch im Backend die neusten Posts an erster Stelle gezeigt.

Dadurch gelingt es dieser Blog-Erweiterung die Vorteile seitenbasierter Erweiterungen mit denen von datensatzbasierten Erweiterungen zu kombinieren.

Der Blog unter der Haube

Modulare Zusatzerweiterungen

Die konzeptionelle Ausrichtung, die Erweiterung einfach und übersichtlich zu halten und gleichzeitig die Möglichkeit zu bieten diese durch sämtliche individuellen Features erweitern zu können, verlangt einen modularen Aufbau, wie es ihn in der TYPO3-Welt bislang noch nicht gab.

Im konkreten Beispiel wird eine Kommentarfunktion als separate "Suberweiterung" zur Verfügung gestellt, welche auch nur dann geladen werden muss, wenn die Website diese Funktion wirklich unterstützen soll. Über denselben Weg können weitere individuelle und projektspezifischen Anpassungen jederzeit eingeschoben werden, ohne dass die Updatefähigkeit der Blog-Erweiterung darunter leidet.

Gleichzeitig werden Abhängigkeiten zu anderen Erweiterungen vermieden und unnötige Datenbank-Felder, Tabellen, ViewHelper, Controller, Middlewares und vieles mehr reduziert, um das TYPO3-Projekt nicht unnötig aufzublähen sowie für eine gute Performance zu sorgen.

Um dieses Vorhaben gelingen zu lassen, wurde über den klassischen Weg des TYPO3 Extbase-Konzepts hinaus eine Möglichkeit entwickelt, zum Beispiel ein Extbase-Model nicht mehr länger nur um ein weiteres Model ergänzen zu können.
Über PHP-Traits ermöglicht es der z7_blog eine Klasse dynamisch um viele weitere Klassen zu erweitern, in dem Abhängigkeiten unterschiedlicher Erweiterungen zur Laufzeit generiert werden und vom Blog eingesammelt werden.

Somit lassen sich eigenständige Funktionen und Features wie Kommentare, Content-Rating, Notifications und vieles mehr über separate Erweiterungen nahtlos im Blog integrieren.

Zentrale Verwaltung aller Anfragen

Anfragen aller Art für Posts, Tags, Kategorien und Autoren werden in der Blog-Erweiterung über zentrale "Demands" verwaltet. Diese Klassen verbinden den kompletten Weg aller Instanzen im MVC-Konstrukt von der Datenbank bis hin zum finalen Template.

Wird ein Demand über eine Subextension erweitert, werden gleichzeitig Bedingungen im Repository ergänzt und ViewHelper erhalten zusätzliche Parameter. Diese Umsetzung erlaubt es Entwicklern mit nur wenigen Zeilen Code komplette und voll automatisierte Filter-Vorgänge zu implementieren.

Interaktive und vordefinierte Filter

Um dem User an den richtigen Stellen die richtige Auswahl von Blog-Posts zu geben, können diese im Plugin vorgefiltert werden. Filterkriterien können dabei beliebig kombiniert werden, sodass beispielsweise alle nicht archivierten Posts eines gewählten Autors einer bestimmten Kategorie angezeigt werden. Ebenso stehen Tags über eine Autocomplete-Funktion wie auch die Markierung von "Top Posts" zu Verfügung.

Zusätzlich können zur vorgefilterten Auswahl auch interaktive Filter im Content der Seite integriert werden, welche es dem User im Frontend erlauben, die Auswahl der Posts zu beeinflussen.

Aktive Filter erhalten dabei automatisch ein data-attribute im HTML-Tag, welche es dem Entwickler der Seite erlauben aktive Filter ohne große Mühe zu stylen.

Kommentarfunktion

Die Kommentarfunktion der Blog-Erweiterung bietet eine einfache Verwaltung über E-Mail-Benachrichtigungen, einem Dashboard-Widget oder direkt über den Blog-Post im Backend.

Eine automatische Spracherkennung der Kommentare erlaubt es, den Inhalt für Suchmaschinen und insbesondere für Accessibility-Features im HTML besonders auszuzeichnen. So können Kommentare sprachenunabhängig für alle Übersetzungen ausgegeben werden.

Die Steuerung, ob für einen Post Kommentare erlaubt sind oder nicht, lässt sich in den jeweiligen Blog-Posts im Backend einfach einstellen.

Die gesamte Kommentarfunktion im Blog wird als Subextension installiert.

Formulare mit TYPO3 form

Als Grundlage des Kommentar-Formulars dient die TYPO3-Core-Erweiterung „form“. Darüber lassen sich weitere Felder und Feld-Typen hinzufügen. Ein vordefiniertes Formular wird bereits mit der Erweiterung installiert.

Sofern die form-Erweiterung im TYPO3-Projekt bereits verwendet wird, dürfte auch hier das bereits vorhandene Styling die Integration zusätzlich erleichtern.

Paginierung von Blog-Posts

Die Paginierung der Blog-Posts kann in jedem Plugin individuell definiert werden. Dabei kann die Anzahl von Blog-Artikeln pro Seite flexibel gesetzt werden. Bei der Definition von „8“ werden pro Seite acht Artikel dargestellt. Wird beispielsweise „5, 8, 12“ eingegeben, bedeutet dies, dass für die erste Seite fünf, für die zweite Seite acht und für alle weiteren Seiten zwölf Artikel pro Seite ausgegeben werden.

Da der Blog mit unterschiedlichen Layouts ausgestattet werden kann, können diese mit der flexiblen Paginierung über alle Seiten hinweg individuell gestaltet werden.

In der Standard-Konfiguration des Blogs werden die Seiten per Ajax-Request geladen. Das bedeutet, dass bei der Paginierung nicht eine komplette Seite, sondern lediglich weitere Artikel nachgeladen werden, was die Ladezeit um ein Vielfaches verkürzt.

RSS-Feed ganz ohne Konfiguration

Wo bei den meisten Erweiterungen für einen RSS-Feed typoscript-Kenntnisse erforderlich sind und jede Menge Konfiguration hinterlegt werden muss, macht es der Blog denkbar einfach.

Wurde auf einer Seite eine Liste von Blog-Artikeln hinterlegt, kann an die URL der Seite einfach ein "/rss.xml" angehängt werden und fertig. Der RSS-Feed enthält alle Filter-Einstellungen des Plugins.

Alles was dazu nötig ist, ist die Installation der RSS-Funktion als Subextension.

Zum Abschluss

Wer seinen TYPO3-Auftritt um einem Blog erweitern möchte, sollte sich die z7_blog auf jeden Fall ansehen. Im Vergleich zu anderen Blog-Erweiterungen verspricht diese Erweiterung viel Flexibilität und eine hohe Performance. Sie bietet einen ordentlichen Umfang zum bloggen und lässt sich dank dem modularen Konzept sehr gut erweitern.

Kostenlos erhältlich überall wo es TYPO3-Extensions gibt:

Der AutorRaphael Thanner
Nach oben springen
Im Herzen Süddeutsch. Im Handeln Weltoffen
Nach oben springen