siwiki: Wie man ein Wiki in eine TYPO3-Website integriert

image

Es gibt Situationen, wo man sich nicht zwischen einem Content Management System und einem Wiki entscheiden möchte, sondern beide Funktionalitäten braucht. Statt nun zwei separate Software-Pakete mehr schlecht als recht zu kombinieren kann man auch auf die Extension siwiki zurückgreifen, welche ein einfaches Wiki direkt in eine TYPO3-Website integriert.

Das Interface von siwiki wirkt modern, was es der Yahoo! User Interface Library (YUI) verdankt. Vor allem aber fällt auf, dass der Benutzer keine Wiki-Syntax schreiben muss, sondern einen Rich Text Editor benutzt. Damit ist eine wesentliche Hürde aus dem Weg geräumt, an der viele Wikis scheitern. Andererseits muss man sich natürlich fragen, ob man nicht gleich auf die CMS-Funktionalität zurückgreifen und ganz auf ein Wiki verzichten könnte, zumal TYPO3 ja über einen Frontend Editing Mode verfügt.

image

Ein Wiki lässt typischerweise das Editieren ohne Anmeldung zu und speichert dafür jeden Bearbeitungsschritt, so dass Änderungen nachvollziehbar bleiben. Diesem Konzept ist auch siwiki verpflichtet, und damit ist auch bereits der wesentlichen Unterschied zum traditionellen CMS-Betrieb genannt. Hinzu kommt die einfache Verlinkung (auch auf noch nicht existierende Seiten) sowie die Benachrichtigungsfunktion bei Änderungen an einer Seite. Es gibt also durchaus Gründe, siwiki einzusetzen.

Man darf diese Extension sicher nicht an MediaWiki oder DokuWiki messen. Andererseits erlaubt sie es, innert kurzer Zeit ein benutzerfreundliches Wiki in eine existierende TYPO3-Website zu integrieren. Die Entwickler Stefan Isak und Andreas Lappe haben zudem konkrete Pläne für den weiteren Ausbau – man darf also gespannt sein, was aus diesem Projekt noch wird.

TYPO3 Tuning: Seitenvorlagen bereitstellen mit pagewizard

image

TYPO3 ist zwar unglaublich flexibel, aber für einen technisch wenig geübten Content Manager ist dies oft zu viel des Guten: Er hätte lieber mehr Vorgaben und dafür weniger Arbeit. Neue Seite sind normalerweise leer, und so muss man mühsam Content-Elemente und Plugins einfügen, bis die Seite diejenigen Elemente bietet, die man benötigt. Findige Content Managers behelfen sich oft damit, dass sie bestehende Seiten kopieren und dann editieren – aber auf die Idee muss man auch erst einmal kommen, und dann muss man auch noch wissen, welche Seite am ehesten der neu zu erstellenden entspricht.

image Die Extension pagewizard unterstützt diesen Prozess auf einfache, aber effektive Art: Sobald man den Befehl “New Page” ausführt, wird ein leicht modifizierter Assistent für die Seitenerstellung aufgerufen, der eine Auswahl an Seitenvorlagen (Preset Pages) anbietet. Diese Seitenvorlagen sind an sich normale Seiten, die von einem Administrator in einem SysFolder bereitgestellt werden und somit auch jederzeit anpassbar sind. Indem der Administrator in die Seiten bereits passende Content-Elemente und Plugins einbaut, kann sich der Content Manager ganz auf das Erfassen von Inhalten konzentrieren.

TYPO3 Security Checklist: 47 Massnahmen, um eine TYPO3-Installation sicherer zu machen

image

UPDATE: Version 0.9.2 verfügbar (Problem mit TYPO3-Font “Share” gefixt)

Der Angriff auf die Website von Bundesinnenminister Wolfgang Schäuble hat Diskussionen über die Sicherheit von TYPO3 entfacht. Wer nun allerdings TYPO3 als unsicher abqualifiziert und denkt, dass dies mit “seinem” CMS nicht passieren könnte, macht es sich zu einfach. Grundsätzlich ist jede Software angreifbar, um so mehr, wenn sie auf einem öffentlich zugänglichen Webserver läuft. TYPO3 ist weder sicherer noch unsicherer als vergleichbare Systeme – es ist vielmehr eine Frage der richtigen Handhabung.

Die TYPO3 Security Checklist ist eine Sammlung von rund 50 Tipps für die Praxis, wie man eine TYPO3-Installation sicherer macht. Sie richtet sich nicht an Entwickler, sondern an TYPO3-Administratoren, welche eine Website aufsetzen und betreiben. Die Empfehlungen lassen sich in den meisten Fällen auch in einer Shared-Hosting-Umgebung umsetzen, wo man nur beschränkten Zugriff auf Webserver und Datenbank hat.

Dies ist die erste öffentliche Version dieser Checkliste. Ergänzungen und Korrekturen nehme ich gerne entgegen – sei es als Kommentar in diesem Blog, sei es per Kontaktformular.

TYPO3 Extensions: Inline Lightbox mit rzpopeye

Beispiel einer Fotogalerie mit rzpopye

Lightbox-Effekte für die gediegene Präsentation von Fotos auf einer TYPO3-Website gibt es wie Sand am Meer: 26 verschiedene Extensions sind bisher im TYPO3 Extensions Index erfasst, und wahrscheinlich sind das nicht einmal alle. rzpopeye basiert auf dem jQuery-Plugin Popeye und ist insofern speziell, als bei der Grossansicht nicht einfach das Bild mittig positioniert und der Rest des Browserfensters abgedunkelt, sondern das Bild an Ort und Stelle aufgezogen wird. Ausserdem kann man nicht nur ein einzelnes Bild, sondern eine ganze Fotostrecke darin unterbringen. Die Extension ist selbsterklärend, unterstützt mehrsprachige Websites und ist ohne weitere Konfiguration sehr ästhetisch. Falls ein Website-Besucher JavaScript ausgeschaltet hat (so dass er die Bilder nicht sehen kann), so wird ihm eine frei wählbare Meldung angezeigt.

TYPO3 5.0: Ein komplett neues CMS?

image

Dass TYPO3 5.0 eine völlig neue technische Basis in Form des FLOW3 Frameworks erhält, ist schon länger bekannt. An der TYPO3-Konferenz T3CON09 in Frankfurt wurde nun erstmals auch die neue Benutzeroberfläche einer breiteren Öffentlichkeit vorgestellt. Bereits die hier gezeigten Screenshots machen klar, dass sich der Umgang mit TYPO3 für Content Managers und Administratoren fundamental ändern wird. Mehr Informationen zu diesem Thema gibt es bei T3N und auf der TYPO3-Website.

image

Screen Design: Jens Hoffmann, Björn Brockmann & Rasmus Skoldjan ©2009 TYPO3 Association

a2c_sponsoren: Logos von Kunden, Partnern und Sponsoren einfach präsentieren

image

Die TYPO3-Extension a2c_sponsoren ist eine elegante Lösung, um Logos von Kunden, Partnern und Sponsoren auf der eigenen Website aufzuschalten. Grundsätzlich kann man dies zwar auch mit der Standardfunktionalität von TYPO3 oder mit einer Bildergalerie-Extension erreichen, aber wer eine spezialisierte Extension sucht, die perfekt auf diese Aufgabe zugeschnitten ist, findet wahrscheinlich keine bessere Lösung.

Die Logos werden bei a2c_sponsoren als spezielle Datensätze in einem SysFolder abgelegt. Dies hat den Vorteil, dass man den Bilddateien auch noch andere Informationen mitgeben kann, konkret den Namen (der dann im ALT-Tag benutzt wird und auch unterhalb des Logos ausgegeben werden kann) und eine URL (mit welcher das Logo dann verlinkt wird). Ein weiterer Vorteil besteht darin, dass die Logos mehrfach verwendet werden können.

image

Die Logos werden im Frontend in einem Raster dargestellt, wobei die Spaltenzahl sowie die maximalen Abmessungen (Breite x Höhe) der Logos im Backend definiert werden kann. Hat man besondere Anforderungen an die Formatierung der Logo-Galerie, so kann ein eigenes HTML-Template für das Rendering genutzt werden. Die Extension unterstützt Mehrsprachigkeit, indem ein Logo-Datensatz entweder allen Sprachen oder aber nur einer bestimmten Sprache zugeordnet werden kann.

a2c_sponsoren ist schon älter, das letzte Update stammt vom 26.11.2006. Wahrscheinlich ist das der Grund, warum beim Einsatz mit TYPO3 4.2.8 ein kritischer Fehler auftritt: Die Extension enhält eine alte leere Sprachdatei und erzeugt deshalb im Frontend eine Fehlermeldung. Das Problem lässt sich allerdings einfach lösen, und ansonsten ist diese Extension eine optimale Lösung für diese Aufgabe.

TYPO3 Integrator: Zertifizierungsprogramm macht Fortschritte

image

Es gibt zwei einfache Indikatoren, um die Bedeutung einer Software für die IT-Branche abzuschätzen: der eine ist die Anzahl der Fachbücher über diese Software, der andere sind Zertifizierungsprogramme.

Fachbücher (und Schulungsvideos) über TYPO3 gibt es inzwischen in beeindruckender Menge (vgl. die Liste im TYPO3-Wiki oder das Angebot bei Amazon). Aber auch bei der Zertifizierung hat sich in den letzten drei Jahren, seit das TYPO3 Certification Team das Thema erstmals mit der Community diskutierte, einiges getan: Inzwischen gibt es den Titel des TYPO3 Integrators, und breits haben fast 200 Personen die entsprechende Prüfung absolviert.

Was aber ist ein TYPO3 Integrator? Die offizielle Definition lautet wie folgt:

“The TYPO3 integrator develops the template for a website, configures all the necessary extensions and creates the access rights for backend users. The TYPO3 integrator does not install TYPO3 on the webserver and does not programm extensions. The TYPO3 integrator knows how to configure the preinstalled TYPO3 by using the installer.”

Ein TYPO3 Integrator ist also das, was in meinem Umfeld oft auch als TYPO3 Administrator bezeichnet wird: Eine Person, welche eine TYPO3-Website aufbaut, soweit es hierfür keine selbst entwickelten Extensions braucht (das wäre dann die Arbeit eines Entwicklers) und sofern die TYPO3-Installation bereits existiert (was Aufgabe eines Systemadministrators ist). Um die Zertifizierung zu erhalten, muss sich ein TYPO3 Integrator in folgenden Themen auskennen:

  • TypoScript
  • Templating
  • Konfiguration einer bestehenden Installation über den Installer
  • Backend-Administration (Benutzer und Gruppen, Workspaces, Mehrsprachigkeit, Page TSconfig und User TSconfig)
  • Installation und Konfiguration von bestehenden Extensions
  • Anforderungen an die Serverumgebung
  • Allgemeines (Lizenz, Geschichte, Community)

Wer sich zertifizieren lassen will findet jeden Monat einen oder mehrere Termine in einem europäischen Land – im September beispielsweise in Frankfurt (11.09.2009) oder in Zürich (17.09.2009).

Insgesamt scheint mir das Zertifizierungsprogramm eine gute Sache: Das Zertifikat prüft praxisrelevantes Wissen und scheint gut organisiert. Wenn ich mir allerdings die Stellenanzeigen anschaue, dann werden fast immer TYPO3-Entwickler gesucht (also Personen, die sich so gut mit TYPO3, PHP und MySQL auskennen, dass sie auch eigene Extensions programmieren können). Insofern wäre es wünschenswert, dass möglichst bald auch der Titel eines TYPO3 Developers angeboten wird.

ke_stats 0.2.0: Statistik-Extension jetzt mit Charts, CSV-Export und IP-Filter

image

Vor gut eineinhalb Jahren ist mir die TYPO3-Statistik-Extension ke_stats erstmals aufgefallen, und sie hat sich seither langsam aber stetig weiterentwickelt. Mit der jüngsten Version 0.2.0 werden die Pageviews und Visits nun auch als Chart dargestellt, wobei dies nur für die Übersichtsdarstellung der letzten 12 Monate gilt. Hervorzuheben ist auch die Exportfunktion für Statistikdaten im CSV-Format sowie das IP-Filter (dank dem man beispielsweise alle Zugriffe aus dem eigenen Unternehmen effizient ausfiltern kann, welche die Statistik verfälschen). Ansonsten ist ke_stats weiterhin ein praxisorientiertes Statistik-Tool, das Echtzeitauswertungen erlaubt und sich auf die wesentlichen Daten konzentriert.

TYPO3 Tuning: Kontaktdaten als vCards anbieten

image

Die Idee ist bestechend: Wo immer man auf seiner Website Kontaktinformationen anzeigt, bietet man diese auch zum Download im vCard-Format an. So muss ein Website-Besucher die Daten nicht manuell in seinem Adressbuch erfassen, sondern kann sie per Mausklick importieren. vCard ist standardisiert und wird von den wichtigsten E-Mail-Programmen (darunter Microsoft Outlook, Apple Mail, Google Gmail, Mozilla Thunderbird und Lotus Notes) unterstützt.

In der Praxis ist dies leider nicht ganz so einfach wie es klingt – zumindest wenn man TYPO3 nutzt und eine geeignete Extension sucht. Dabei sind es zwei sehr verschiedene Probleme, denen man immer wieder begegnet:

  1. Kontaktdaten gibt es in TYPO3 an mehreren Orten. In der Regel setzt man dafür die Extension tt_address ein, welche ihre Daten in der gleichnamigen Tabelle speichert. Aber auch die Profile der Frontend Users sind letztlich Kontaktdaten, und diese finden sich in der Tabelle fe_users. Einzelne Extensions nutzen weder die eine noch die andere Tabelle und speichern Kontaktdaten individuell.
  2. Sonderzeichen erscheinen in der vCard-Datei nicht automatisch so, wie man sie auf der Website sieht. Probleme mit Umlauten und anderen Sonderzeichen scheinen eher die Regel als die Ausnahme zu sein, besonders wenn man sein System mit UTF-8 aufgesetzt hat. Aus “Zürich” wird da rasch einmal “Zürich”, und somit sind die vCards natürlich nicht wirklich brauchbar. Bei meinen Tests war ich fast durchgängig mit diesem Problem konfrontiert, und ich fürchte, dass man zu dessen Lösung die Extensions anpassen müsste.
    UPDATE: Zumindest bei der Extension simplevcard sollte dieses Problem nun behoben sein: Mit der Version 0.3.1 wurde die Codierung von UTF-8 auf ISO-8859-1 geändert – gemäss dem Entwickler Andrew Plank ist Microsoft Outlook nicht in der Lage, UTF-8-vCards korrekt zu verarbeiten.

vcard

image Diejenige Extension, welche aufgrund ihres Namens eigentlich die Standlösung für diesen Zweck sein sollte, macht etwas ganz anderes, als man denkt: vcard erzeugt keine vCards im Frontend der Website, sondern im Backend. Dabei wird dem Kontextmenü im Seitenbaum ein neuer Eintrag “vCard Export” hinzugefügt, welcher bei allen Seiten erscheint, die Adressdatensätze von tt_address oder fe_ussers enthalten. Der Export umfasst immer sämtliche Datensätze und erfolgt in Form eines ZIP-Archivs, das die einzelnen vCards enthält.

simplevcard

Auch bei simplevcard täuscht der Name: So einfach ist der Einsatz dieser Extension nämlich nicht. Im Prinzip ermöglicht es simplecard, bei Adresslisten, die auf tt_address basieren, durch den Marker ###VCF_LINK### im Template einen vCard-Download zu integrieren. Die Schwierigkeit liegt nicht direkt in diesem Konzept, sondern darin, dass simplevcard die Installation von realurl voraussetzt (warum auch immer), und jene ist nicht ganz trivial. Für mich war es jedenfalls Grund genug, diesen Ansatz nicht weiterzuverfolgen.

image

neeg_vcard

Sehr einfach in der Handhabung ist dafür bei neeg_vcard (vgl. Screenshot oben). Diese Extension stellt ein Plugin bereit, über das jeweils eine einzelne Adresse als vCard publiziert werden kann. Die Adressdaten werden dabei im Flexform des Plugins gepflegt. Als Nachteil ist zu nennen, dass diese Daten weder in tt_address noch in fe_users gespeichert werden, sondern in tt_content. Es handelt sich also um eine Insellösung, die sich nur für eine kleine Menge von Kontaktdaten eignet.

wt_directory

wt_directory ist eine mächtige und flexible Lösung, um Kontaktdaten aus tt_address im Frontend auszugeben. Während der Gesamteindruck sehr positiv ist, funktionierte bei mir ausgerechnet der vCard-Export nicht korrekt: Zwar wird eine VCF-Datei erzeugt, diese enthält allerdings nicht nur die vCard, sondern den gesamten HTML-Code der betreffenden Webpage – für E-Mail-Programme ist dies schlicht ein ungültiges Dateiformat. Ob dies nun an wt_directory liegt oder an einer anderen Extension in meiner TYPO3-Installation vermag ich nicht zu sagen – wie eine kurze Recherche zeigt haben allerdings auch andere Anwender von ähnlichen Problemen berichtet.

felists: Die TYPO3-Extension, welche die Entwicklung einer eigenen Extension erspart

image

Stellen Sie sich vor, Sie betreiben eine Website für Imker und möchten nun ein Verzeichnis mit Dokumentarfilmen über die Bienenzucht anlegen. Das Verzeichnis soll nicht einfach als Standard-Content-Element abgebildet werden, sondern in strukturierter Form, damit das Verzeichnis durchsucht und ggf. auch exportiert werden kann. Zudem möchten Sie, dass die Besucher Ihrer Website selbst neue Filme erfassen können.

Die meisten TYPO3-Administratoren werden in einer solchen Situation die Entwicklung einer eigenen Extension vorschlagen. Das ist jedoch aufwändig und anspruchsvoll, weshalb viele Dokumentarfilmsammlungen über Bienenzucht auf dieser Welt nie in die Realität umgesetzt worden sind. Das ist schade, denn mit der Extension felists von Daniel Pötzinger gäbe es eine Lösung, welche auch ohne Programmierung zum Ziel führt: Mit felists kann man beliebige Datenbanktabellen definieren, deren Inhalt im Frontend publizieren und sogar ein Bearbeitungsformular für Frontend Users bereitstellen.

image Die Extension installiert ein eigenes Modul in der Backend-Navigation, in dem die Datenbanktabellen (hier heissen sie Listen) verwaltet werden. Ein Assistent führt durch die Erstellung und Bearbeitung der Listen (vgl. Screenshot oben). Dabei steht eine grosse Auswahl an Feldtypen zur Auswahl (vgl. Screenshot rechts), inklusive Referenzen auf andere Tabellen (“Database Relation”), was auch komplexere Datenstrukturen erlaubt. Je nach Feldtyp gibt es dann mehr oder weniger zusätzliche Parameter, mit denen man das Datenbankfeld sowie das Formularelement zur Bearbeitung der Daten definiert. Der ganze Prozess ist zwar nicht trivial, aber gut strukturiert und setzt keine Programmierkenntnisse voraus.

Was mich stutzig macht ist, dass diese Extension zwar schon über zweieinhalb Jahre existiert, aber erst gut 200 Downloads verzeichnet – und dies obwohl sie sogar im Videopodcast von Kasper Skårhøj vorgestellt wurde. Das mag unter anderem daran liegen, dass das Handbuch nicht viel mehr als eine Feature-Liste umfasst – gerade bei dieser nicht ganz simplen Extension wäre eine gute Dokumentation sicher hilfreich. Ansonsten gäbe es nur zwei Erklärungen: Entweder ist die Extension unfertig bzw. fehlerhaft – oder aber wir haben es hier mit einer Perle zu tun, die schlicht nicht diejenige Beachtung gefunden hat, die sie verdienen würde. Wer hat Erfahrung mit felists?