Heute Nacht wird, allen widrigen Umständen zum Trotz, voraussichtlich das nächste größere WordPress-Update veröffentlicht werden – 5.4.
Wir nutzen die Gelegenheit und schauen einmal genauer auf die Änderungen, die mit dieser neuen Version anstehen.
Editor
Der Block-Editor ist seit bald drei Jahren der primäre Fokus der WordPress-Core-Entwicklung und daran ändert sich auch in dieser Version nicht viel. Zwischen WordPress-Updates testet das Team hinter dem Gutenberg-Editor neue Funktionen und Änderungen in einem eigenen Plugin und die Änderungen bis einschließlich Version 7.5 dieses Plugins sind in WordPress 5.4 enthalten.
Neue Blöcke
Zwei neue Core-Blöcke stehen zusammen mit WordPress 5.4 in den Startlöchern:
Der Social-Icons-Block kann eine Reihe von sozialen Netzwerken verlinken. Er eignet sich hervorragend um zum Beispiel auf Team-Seiten verschiedene Social-Media-Profile zu verlinken, wie wir das bei der Team-Seite der WPconf. getan haben.
Der Buttons-Block wirkt zunächst nicht nach einer großen Neuigkeit, war der Button-Block doch schon seit langer Zeit Teil des Gutenberg-Editors. Der Buttons-Block ist ein umschließender Wrapper für Blöcke und soll es einfacher machen, mehrere Buttons nebeneinander zu platzieren.
Vollbild als Standard
Die vermutlich umstrittenste Neuerung hat schon während diverser Vorabversionen für einiges an Diskussionen gesorgt und wird die nächsten Tage vermutlich umstritten bleiben.
Der Editor wird jetzt standardmäßig im Vollbildmodus angezeigt. Admin-Bar und Admin-Menü sind dann nicht mehr direkt erreichbar ohne den Editor explizit zu verlassen. Über eine Einstellung kann man weiterhin das alte Verhalten wiederherstellen. Weil das aber nur pro User und Gerät funktioniert, bietet sich für einige Anwender vermutlich der Einsatz eines kleinen Code-Schnipsels an.
Block-Kollektionen
Wenn ein Plugin mehrere Blöcke mitbringt, kann es jetzt eine Block-Kollektion registrieren. Eigene Blöcke können so in der Blockauswahl zusammengefasst werden, ohne ihre semantische Sortierung in zum Beispiel Layout- oder Inline-Blöcke zu stören.
Editor-API-Updates
Eine Reihe von Neuerungen, die vor allem für Entwickler relevant sind, finden sich im Bereich der verschiedenen Programm-Schnittstellen.
In diesen Änderungen finden sich einige interessante Fundstücke wie die Guide-API, mit der Entwicklerinnen und Entwickler eigene Schritt-für-Schritt-Tutorials für Blöcke bauen können, vereinfachte Integration von Drag-&-Drop und eine spannende Änderung im Rendering von Blöcken, die auch komplexe Blöcke deutlich performanter machen dürfte.
Der neu eingeführten Block-Variationen hat Florian Brinkmann sich in einem Beitrag bereits angenommen. Und die neue API zum Erstellen von Farbverläufen – statt einfachen Hintergrundfarben – kommt für alle Uninteressierten gleich mit dem passenden Code zum Deaktivieren des Features.
Allgemeine Editor-API-Updates
Neue API für Block-Variationen
Neue API für Farbverläufe
Änderungen im Editor-Markup
Über die Feinheiten eigener Styles im Editor haben wir hier im Blog letzte Woche ausführlich gesprochen. Für alle Anbieter von Plugins und Themes, die sich in der Vergangenheit mit den Besonderheiten der Darstellung im Gutenberg-Editor beschäftigt haben, ist es nun an der Zeit ihren Code noch einmal zu kontrollieren. Denn auch hier gibt es einige Änderungen, sowohl was die Komplexität der Verschachtelung als auch das konkrete CSS angeht.
Der Customizer
Favicons
Die Handhabung von Favicons wurde verbessert und flexibler gestaltet. Wenn eine /favicon.ico
angefragt wird und diese Datei nicht vorhanden ist, wird auf das Site-Icon weitergeleitet, das schon lange im Customizer festgelegt werden kann.
Ist hier keine Datei hinterlegt, wird das WordPress-Logo als Favicon ausgegeben. Ein Blick auf die Site-Icon-Einstellung im Customizer unter dem Punkt Website-Informationen lohnt sich also um sicher zu gehen, dass nirgendwo ein WordPress-Logo ausgespielt wird, das nicht gewünscht ist. Entwicklerinnen und Entwickler haben über verschiedene neue Funktionen und Hooks die Möglichkeit, das Verhalten anzupassen. Flo Brinkmann hat ein Code-Schnipsel gebastelt, um das alte Verhalten wiederherzustellen.
Entfernte Klassen
Wieder eher für Entwicklerinnen und Entwickler interessant: eine Reihe alter Klassen und Funktionen wurde aus dem Customizer entfernt.
Menüs
Für Menüs gibt es eine bedeutsame Neuerung. Hier können jetzt jedem Menü-Eintrag eigene Felder hinzugefügt werden, um diverse Metadaten zu speichern. Was erstmal nicht nach viel klingt, bedeutet für viele Entwicklerinnen und Entwickler, dass sie zukünftig um den Einsatz eigener Menu-Walker herumkommen werden.
Mehr zu Custom Fields in Menüs
Shortcodes
Ja, es gibt sie noch. Platzhalter in eckigen Klammern, die bei der Ausgabe von WordPress durch andere Inhalte oder Code ersetzt werden. Ab sofort gibt es analog zur Funktion do_shortcode()
den Alias apply_shortcodes()
was perspektivisch das Abschalten von do_shortcodes()
bedeuten könnte.
Wie Shortcodes ansonsten funktionieren, hat Bego vor einiger Zeit hier im KrautPress-Blog erklärt.
Datenschutz
Seit den ruhigen Tagen der DSGVO-Einführung gibt es eine Funktion, die es Benutzerinnen und Benutzern erlaubt, Exporte der eigenen, in einer WordPress-Installation gespeicherten Daten anzufordern.
Diese Funktion hat einige Verbesserungen erfahren und liefert im Export jetzt einige zusätzliche Daten mit, wie den Standort, der für die Anzeige von Community-Veranstaltungen im Dashboard ermittelt wurde.
REST-API
An der REST-API gibt es einige kleine Verbesserungen, die sich noch nicht so recht nach Fortschritt anfühlen wollen.
Bei der Abfrage von Posts wird jetzt ein ODER-Parameter unterstützt und Einbettungen können selektiver vorgenommen werden.
Was denkt ihr über WordPress 5.4, welche Änderung gefällt euch besonders gut oder schlecht?
Vielen Dank für die Zusammenfassung!
Es hat sich allerdings beim Abschnitt „Shortcodes“ ein kleiner Fehler eingeschlichen.
Die alte Funktion heißt „do_shortcode()“ nicht „do_shortcodes()“, während die neue Funktion tatsächlich „apply_shortcodes()“ heißt.
Da alle Shortcodes innerhalb des $content-Parameter ausgeführt werden ist das ein semantischer Fehler der alten Funktion.