Installation und Konfiguration von typo3_blog

Anlegen des Pagetrees

Als Voraussetzung um typo3_blog nutzen zu können, muss zuerst die pagebrowse Extension und dann die typo3_blog Extension installiert werden. Über die Extension Konfiguration von typo3_blog kann jetzt noch die Doktype ID der Blog Category (Standard ist ID 73) und die globale Verwaltung von Kommentaren angepasst werden.

Im Typo3 Pagetree erstellt man nun eine neue Seite mit dem Doktype Blog Category. Diese Seite ist der Root, also die Startseite unseres Blogs. Im Pagetree verändert sich dabei auch das Icon unsere Seite (falls nur ein rotes X erscheint einfach mal das Backend aktualisieren). Jede direkte Unterseite unseres Blogs muss dabei eine weitere Blogkategorie sein, welche dann wiederum als Unterseiten die einzelnen Blogeinträge enthält. Das Bild dürfte dabei eigentlich selbsterklärend sein und zeigt, wie einfach die Verwaltung von Kategorien und Einträgen funktioniert.

Eigenschaften der Blogeinträge

Auf den einzelnen Blogeinträgen können jetzt noch über den Seiteneditor verschiedene Eigenschaften konfiguriert werden. Hier können Autor, Erstellungsdatum, Tags eingetragen werden. Zusätzlich lassen sich noch Kommentare aktivieren und deaktivieren, Links für die Blogroll eingetragen und die Seite als Exclude Page, d.h. normale TYPO3 Seite ohne Blogzugehörigkeit, festgelegt werden.

Einbindung ins Template

Die wirkliche Einbindung des Blog in unser Template erfolgt dabei in den nächsten Schritten. Da TYPO3 6.0 als Basis für Blog und Webseite dienen, soll die Einbindung dabei über das bereits genutzt Fluid-Template realisiert werden. Man erstellt also auf der Blog-Startseite, im Modul Template, zunächst einmal ein ext-Template.  Dieses ext-Template muss nun noch die beiden Extensions pagebrowse und typo3_blog einbinden. Es ist dabei darauf zu achten, dass pagebrowse oberhalb von typo3_blog steht.

Die hauptsächliche Darstellung des Blogs wird nun über Typoscript geregelt. Dabei ist jeden selbst überlassen, ob er das Typoscript direkt in das Konstanten- bzw. Setupfeld des ext-Templates schreibt, oder den Code auslagert und hier nur die entsprechenden *.ts-Dateien inkludiert. Da wir die Bearbeitung über einen Texteditor mit FTP-Modul bevorzugen, wird hier die zweite Möglichkeit besprochen.

Vom Reiter Includes wechselt man nun also auf den Reiter General und fügt schonmal den Pfad zu den *.ts-Dateien ein, die wir im nächsten Schritt erstellen werden. Die Einbindung des Typoscript geschieht dabei mit dem Befehl: <INCLUDE_TYPOSCRIPT: source="FILE: SPEICHERORT/DATEINAME.TS">

Anlegen des Typoscript Dateien

Nun müssen die beiden Dateien angelegt und editiert werden. In die Konstantendatei (bspw.: blog_constants.ts) kommt dabei die Zeile:

plugin.tx_typo3blog_pi1.startPid = X # wobei X für die Seiten ID der Blogstartseite steht


Diese und weitere Einstellungen können genauso gut über den Konstanteneditor des ext-Templates festgelegt werden. Hier muss auch unbedingt die Einbindung von jQuery, falls schon an andere Stelle eingebunden, verhindert werden. Natürlich geht das auch direkt in unserer Konstantendatei mit der Zeile:

plugin.tx_typo3blog_pi1.file.jQueryLibrary =    # Einfach leer lassen

Beide Varianten führen allerdings zu zwei unschönen, wenn auch unproblematischen, HTML 404 Fehler im Hintergrund. Besser ist die Einbindung von jQuery direkt in den setup.txt Datei der typo3_blog Extension zu unterdrücken. Man findet die Datei unter „/typo3conf/ext/typo3_blog/typoscrip/setup.txt“ und kommentiert nun einfach die gewünschten jQuery Datei aus. Dadurch reicht dann auch die einzelne Zeile für die Start PID in der Konstantendatei.

Als letztes muss noch die Setupdatei unseres Blogs (bspw.: blog.ts) mit Inhalt gefüllt werden. Hierzu wird mit:

# Erstelle ein neues COA Element
lib.blog_sidebar = COA
lib.blog_sidebar {
  # Fülle das COA mit den unterschiedlichen Elementen
  10 < plugin.tx_typo3blog_pi1.categoryList
  20 < plugin.tx_typo3blog_pi1.calendar
  30 < plugin.tx_typo3blog_pi1.archive
  40 < plugin.tx_typo3blog_pi1.relatedPosts
  50 < plugin.tx_typo3blog_pi1.latestPosts
  60 < plugin.tx_typo3blog_pi1.blogroll
}
# Überschreibe die eigene Seitenleiste mit der Blog Seitenleiste
page.10.variables.aside < lib.blog_sidebar

Die Seitenleiste erstellt und in das Fluid-Template eingebunden. "page.10.variables.aside" ist dabei das Seitenleistenelement des Cosabo Fluid-Templates.

Nun werden noch ein paar Bedingungen eingefügt, welche die Darstellung der Blogeinträge regeln. Die folgenden Zeilen werden ebenfalls in die Setupdatei eingetragen.

# Ist die Seite eine Unterseite unseres Blogs, so stelle Sie als Blogeintrag dar
[PIDinRootline = {$plugin.tx_typo3blog_pi1.startPid}]
  page.10.variables.text < plugin.tx_typo3blog_pi1.blogSingle
[end]

# Prüfen, ob die Seite den doktype Blog Category hat
[userFunc = user_typo3blog_pageTypeIsCategory()]
  # als BlogList darstellen und BlogSingle überschreiben
  page.10.variables.text < plugin.tx_typo3blog_pi1.blogList
  # Seitenleistenelemente können beliebig entfernt oder verändert werden
  page.10.variables.aside.60 >
[end]

# Wurde der Exclude Haken beim Blogeintrag gesetzt, so stelle den Content als Standardcontent dar
[globalVar = TSFE:page|tx_typo3blog_exclude_page = 1]
  page.10.variables.text < styles.content.get
[end]

Die grundsätzliche Installation von typo3_blog wäre damit abgeschlossen. Für die genaue Konfiguration von RealURL und den einzelnen Widgets der typo3_blog Extension, sei an dieser Stelle auf die Dokumentation unter www.unitlabs.ch/typo3-extensions/typo3-blog-dokumentation.html verwiesen. Dort lassen sich auch Anleitungen zum Einbinden von Kommentaren, Tagclouds, RSS Feeds und Pagehits finden.

Anmerkung

Leider scheint die Suche nach Artikeln über Tags, Datum, etc. nicht problemlos mit RealURL zu funktionieren. Temporäre Abhilfe schafft die Deaktivierung der [pageNotFoundOnCHashError] Option im Install Tool des TYPO3 Backends. Die Suche ist dann zwar nicht mehr gecacht, aber zumindest funktioniert sie und man wird nicht sofort auf die 404-Fehler Seite umgeleitet.

Kommentare

No comments

Add comment

* - required field

Fragen Sie uns zu den Themen Webdesign, Softwareentwicklung und Administration

Haben Sie schon eine Idee für ein gemeinsames Projekt? Schreiben Sie uns gleich hier oder nutzen Sie unseren Projektplaner.

Social WebDesign

Folgen Sie uns über das Social Network Ihrer Wahl