Quelle: www.bjoerne.com
Was sind Custom Content Types?
Die Standard Content Types in WordPress sind Seiten und Beiträge. Das deckt nicht immer den Bedarf ab, wie Inhalte eingepflegt, strukturiert und dargestellt werden. Custom Content Types sind weitere Content-Typen. Auch ohne diesen Begriff zu kennen, kommen viele WordPress-Nutzer damit in Berührung, dann nämlich, wenn nach der Installation und Aktivierung eines Plugins oder Themes neue Menüpunkte erscheinen. Portfolio, FAQ, Galerien, Projekte … falls ein WordPress-Backend diese Menüpunkte enthält, dann ist die Wahrscheinlichkeit groß, dass dahinter Custom Content Types stecken.
Custom Content Type selbst entwickeln
WordPress bietet Funktionen zur Registrierung von Custom Content Types an, z.B. register_post_type, register_taxonomy. Wer einen Custom Content Type selbst entwickeln möchte, der kann auf Code-Vorlagen zurückgreifen, z.B. das Boilerplate-Projekt https://github.com/devinsays/team-post-type.
Ich habe bereits einige Custom Content Types entwickelt, zum Beispiel
- Mitarbeiter auf http://www.weinbrenner-collegen.de
- Initiative inkl. Kategorien auf http://nestwerkberlin.de
Custom Content Type Plugins
Als ich vor Kurzem für das Projekt http://greenbuzzberlin.de einen Custom Content Type entwickeln wollte, bin ich darauf gestoßen, dass es bereits fertige Lösungen in Form von Plugins gibt. Eine Eigenentwicklung, wie ich sie bisher vollzogen habe, ist scheinbar gar nicht notwendig. Auch wenn die individuelle Entwicklung nicht sehr lange dauert, die Einrichtung mithilfe eines Plugins in wenigen Minuten klingt sehr reizvoll.
Den Custom Content Type "Quickpitch" benötigte ich für GreenBuzz. Mit einer der untenstehenden Lösungen mit wenigen Klicks erledigt.
Folgende Anforderungen hatte ich an ein Plugin:
- Einfache Einrichtung eines Custom Content Types
- Unterstützung von Custom Taxonomien
- Kompatibilität mit individuellen Lösungen, z.B. Shortcodes zur Darstellung
- Weitere Anforderungen ergaben sich erst während der Evaluierung, als ich sah, was mit kleinstem Aufwand noch so möglich ist.
Drei Kandidaten habe ich mir genauer angesehen.
Gemeinsamkeiten
Alle drei Plugins haben Gemeinsamkeiten. In allen Plugins kann man Custom Content Types anlegen und dabei die folgenden Eigenschaften vergeben:
- Plural-Bezeichnung
- Singular-Bezeichnung
- Beschreibung
- Slug
- Position im Menü
- Sichtbarkeit von Bearbeitungseigenschaften, z.B. Titel, Editor, Kommentare, Revisionen, Custom Fields
Alle drei bieten auch das Erstellen von Taxonomien an mit den Eigenschaften:
- Plural-Bezeichnung
- Singular-Bezeichnung
- Slug
- Hierarchisch (wie Kategorien) oder flach (wie Tags)
Ebenfalls ist in allen Lösungen einstellbar, welche Custom Content Types mit welchen Taxonomien versehen werden können.
Toolset Types
Nach der Installation von Types oder auch Toolset Types erscheint ein Menüpunkt Toolset im Backend.
Beitragstypen anlegen
Unter dem Punkt Beitragstypen kann man neue Custom Content Types erstellen. Bei Types finde ich sehr nett, dass man Icons aus einer Icon-Bibliothek verwenden kann.
Ein weiteres interessantes Feature ist die Definition von Parent-Child-Beziehungen unter Custom Content Types. Damit lassen sich Regeln definieren für eine Datenstruktur aus verschiedenen Custom Content Types.
Custom Fields
Ein mächtiges Feature ist die Definition von Custom Fields für Content Types jeglicher Art (also auch Seiten und Beiträge), Taxonomien und Benutzer. Mit ein paar Klicks lassen sich die WordPress-Inhalte um weitere, individuelle Eigenschaften erweitern. Unter der Haube sind das zwar ganz normale Custom Fields, die WordPress bereits anbietet, jedoch angereichert mit Beschreibungen der Felder und Validierung.
Auswahl Feld-Typ
Validierungsoptionen
Custom Fields auf der Bearbeitungsseite. Mit ein paar Klicks bekommt man ein individuelles Backend-Formular
Damit die Custom Fields nur dort erscheinen, wo sie relevant sind, lässt sich eine Zuordnung zwischen Custom Fields und Content Types vornehmen. Gerade wenn die Pflichtfeld-Regel für Felder gesetzt ist, ist das wichtig.
Weitere Features
- Import/Export
- Texte können angepasst werden
- Darstellung auf dem Dashboard unter "Auf einen Blick"
- Auswahl, welche Eigenschaften eines Custom Content Types auf der Übersichtsseite als Spalte erscheinen sollen
Die Firma Toolset bietet zudem die Premium-Produkte Views und Forms, mit denen die Darstellung der Ausgabe und die Formulare individualisiert werden können. Mit 149 $ allerdings auch für einen stolzen Preis.
Custom Post Type Maker
Custom Post Type Maker ist das einfachste der drei Plugins und bietet über die Features hinaus, die alle drei gemeinsam haben, kaum weitere Features bzw. Konfigurationseigenschaften an. Vielleicht die beste Lösung für alle, die leichtgewichtige Lösungen bevorzugen.
Kleiner Funktionsumfang, kleines Menü
Custom Post Type UI
Captain UI??? Wohl doch eher Custom Post Type
Vom Funktionsumfang liegt Custom Post Type UI genau zwischen den beiden anderen Lösungen. Über die Standardfunktionen hinaus bietet es:
- Texte können angepasst werden
- Import/Export
- Icon, aber über Mediathek
Für 19 $ bekommt man die Premium-Variante Custom Post Type UI Extended. Damit lässt sich die Darstellung der Custom Content Types gestalten, was für Nicht-Programmierer eine interessante Option sein kann.
Fazit und Nutzung des Custom Content Types
An der Länge der jeweiligen Beschreibung ist schon abzulesen: Mein Favorit ist Toolset Types. Die Möglichkeit, Custom Fields und Parent-Child-Beziehungen zu definieren, ist einfach super mächtig und ermöglicht, in kurzer Zeit ein individuelles Datenmodell aufzubauen.
Auf der Webseite http://greenbuzzberlin.de habe ich Types in eine Gesamtlösung integriert. Der Custom Content Type repräsentiert einen sogenannten Quickpitch. Ein Quickpitch ist ein 1-minütiger Kurzvortrag, den Besucher auf den Veranstaltungen von GreenBuzz halten können. Da die Besucher keinen WordPress-Account haben, habe ich auf der Seite ein Formular des Plugins Anonymous Post eingesetzt, und zwar die Pro-Version für 25 $, da nur diese Custom Content Types unterstützt. Über individuell entwickelte Shortcodes steuere ich das Formular sowie die Darstellung und sorge dafür, dass diese mit dem Plugin The Events Calendar zur Verwaltung der Veranstaltungen harmoniert. Die Gesamtlösung hat damit schon eine gewisse Komplexität erreicht und ich bin froh, dass mir das Types-Plugin den Aufwand abnimmt, mich um die Custom Content Types zu kümmern. Und wer weiß, welche Anwendungsfälle noch folgen werden.