»Aber WordPress ist doch nur für Blogs und so...«
Ich wünschte, ich würde für jedes Mal, wenn ich diesen Satz höre, einen Euro bekommen – dann würde es bald »Aloha Hawaii« heißen. Natürlich steckt in dieser Aussage ein Funken Wahrheit. WordPress als Basis an sich ist ein Blog-Content-Management-System (CMS), was sich anfangs eigentlich nur auf die Anlage von einzelnen Seiten und Artikeln einschränkt. Hinzu kommen Seiten wie Archive, die Suche und es gibt ja auch noch eine Kommentarfunktion.
In einer Unterhaltung komme ich spätestens jetzt an den Punkt, an dem man mir vorwirft: »Wieso sprichst du dann von einem CMS?« Die Begründung ist einfach. Ich kenne persönlich kein anderes CMS, dessen »Grenzen« so einfach zu »erweitern« sind wie die von WordPress.
Immer wieder dieses eine Plugin
Wer sich schon einmal mit WordPress auseinandergesetzt hat – oder vielleicht gar ein Template dafür gebaut hat (Hast du? Unsere Jobs findest du übrigens hier!) wird an kleinen Dingen, wie zum Beispiel einem Avatar für einen Autor, schnell merken, dass spätestens jetzt der Punkt erreicht ist, an dem der WordPress-Kern an sich nicht mehr reicht.
Befassen wir uns doch mal intensiv mit dem Beispiel »Autoren-Avatar« und welche Möglichkeiten sich bieten:
- »Da gibt’s 'n Plugin« – Richtig, gibt es. Aber für ein Foto pro Autor ein Extra-Plugin? Eher nicht so cool.
- »Der Autor muss sich halt mit der E-Mail da registrieren ...«, hm ja stimmt. Aber jeden der zehn Redakteure des mittelständischen Kunden extra auf WordPress.com mit der Firmen E-Mail-Adresse registrieren lassen, damit er ein Autoren-Foto hat?
- »Du könntest Advanced Custom Fields« installieren und für die Autoren ein neues Feld anlegen. Ein Image-Feld würde sich super anbieten.« – Ja, nach der Lösung habe ich gesucht.
Advanced Custom Fields – was ist das und wie funktioniert es?
Im Endeffekt ist das Prinzip hinter ACF simpel. In WordPress hat eigentlich alles eine Maske mit einigen Eingabefeldern. Die Werte dieser Eingabefelder werden, einfach erklärt, dann in einer Datenbank gespeichert und später im Template verarbeitet und dargestellt. Warum also nicht einfach diese Masken um ein paar Eingabefelder erweitern und diese Werte ebenfalls so behandeln? Das ist im Endeffekt die Funktionsweise von ACF.
Für unsere Autoren-Fotos legen wir also ein neues Feld an, welches die Bearbeitungsmaske der WordPress-Autoren um ein Bildfeld erweitert.
Machen wir einen kleinen Vorher-nachher-Vergleich: Die Wordpress-Maske für Autoren vor der Anlage des Custom-Fields.
Die WordPress-Maske für Autoren nach der Anlage des Custom-Fields.
Hier sieht man jetzt (unten über dem großen blauen Button) ein neues Feld – »Autor-Bild«. Ein simples Image-Field, wie man es aus vielen anderen Anwendungen kennt. Oh, und sogar gleich ein Pflichtfeld. Kann ACF nämlich auch. ;)
Anhand dieses kleinen Beispiels sieht man schnell den Gedanken hinter Custom Fields und ihre Funktionsweise. Prinzipiell haben Custom Fields selbst keine Einschränkung. So lassen sie sich unter anderem für Seiten, Beiträge, Attachments oder Artikel anlegen. Natürlich würden sie auch bei »Custom Post Types« funktionieren. Aber was Custom Post Types sind, erfahrt ihr erst in meinem nächsten Blog-Beitrag, »WordPress erweitern: Custom Post Types I Teil 2.«
Ja, aber das hat WordPress doch schon – Benutzerdefinierte Felder
Richtig, an sich verfügt WordPress selbst schon über eine Art »Custom Fields«, in WordPress als benutzerdefinierte Felder bezeichnet. Diese funktionieren wunderbar, sind allerdings nur für Seiten und Artikel zugänglich und bieten zudem kein Graphical User Interface für die Steuerung. Mit Advanced Custom Fields lassen sich die benutzerdefinierten Felder nicht nur bequemer steuern, sondern sie sind für Redakteure später anhand der grafischen Benutzeroberfläche zudem kinderleicht zu bedienen. Sie erfüllen also den Grundgedanken von WordPress – Seiten »einfach einfach« pflegen und warten. Advanced Custom Fields sind im Endeffekt benutzerdefinierte Felder »on Steroids«.
Fazit:
Für mich sind Advanced Custom Fields das absolute Must-Have-Plugin in jeder WordPress-Instanz. Sie bieten eine super Lösung für zahlreiche Problemstellungen innerhalb von WordPress und erweitern die Pflegemasken innerhalb des Backends um die benötigten Felder.