Ein Block für Pattern-Poweruser

Eigentlich wollte ich einen Artikel darüber schreiben, wie einzelne Patterns in einem Block zur Auswahl dargestellt werden könnten, wie die Layout-Optionen im Spalten-Block.

Letztlich wurde es jetzt aber erst mal ein Block, der alle Block-Vorlagen zur Auswahl anbietet und gleichzeitig für jede Block-Vorlage eine Variation beinhaltet, sodass Patterns auch direkt über den Block-Inserter eingefügt werden können. So können sich Benutzerinnen und Benutzer, die häufig Patterns verwenden und nicht mehr die visuelle Vorschau des Pattern-Inserters benötigen, einige Zeit beim Einfügen der Patterns sparen. 🎉

Version 2 der Gutenberg-Block-API

WordPress 5.6 kommt mit einer neuen Block-API-Version, die es Blöcken ermöglicht, ihr eigenes Block-Wrapper-Element zu rendern. Dadurch wird es möglich, das Block-Markup im Editor dem im Frontend ähnlicher zu machen, wodurch das Styling der Editor-Ansicht vereinfacht wird.

Die neue API-Version freischalten

Die API ist nicht standardmäßig aktiv, sondern muss pro Block aktiviert werden. Dazu wird in dem Konfigurations-Objekt in registerBlockType der Wert für apiVersion auf 2 gesetzt:

Updates einer WordPress-Site programmatisch mit PHP ausführen

WordPress bietet uns über den Punkt DashboardAktualisierungen eine ziemlich komfortable Möglichkeit, Updates für Core, Themes, Plugins und Übersetzungen einzuspielen.

Manchmal ist diese Möglichkeit aber nicht genug – ich arbeite beispielsweise gerade an einem Projekt, das Updates programmatisch anstoßen muss. Dabei wäre ein naheligender Weg die Nutzung von WP-CLI, der Weg ist mir allerdings versperrt, und so habe ich mich näher mit den PHP-Funktionen beschäftigt, die sich um Updates kümmern.

Block-Patterns erstellen

Seit WordPress 5.5 können sogenannte Block-Patterns erstellt werden. Das sind Vorlagen von Inhaltselementen aus mehreren Blöcken (oder auch nur einem), die in einem Plugin oder Theme registriert und dann von der Benutzerin oder dem Benutzer über den Inserter eingefügt werden können.

So muss im Editor nicht mühsam zum Beispiel ein Hero-Element immer neu aus denselben Blöcken zusammengebaut oder von einer anderen Seite kopiert werden, sondern es kann ein Hero-Block-Pattern erstellt und dann genutzt werden.

Mein erster Workflow mit GitHub Actions

Ich habe heute zum ersten Mal einen »Workflow« mit »GitHub Actions« erstellt, um eine Travis-CI-Integration zu ersetzen. Erfreulicherweise ging das recht schnell von der Hand. Hier möchte ich den Prozess als kleinen Einstieg in das Thema beschreiben.

Bei dem Workflow geht es darum, das DEWP-Planet-Feed-Plugin nach Erstellen eines GitHub-Releases in einer direkt nutzbaren Form an den Release anzuhängen, damit Nutzerinnen und Nutzer nicht lokal NPM anwerfen und dann Webpack ausführen müssen, bevor sie es nutzen können.

REST-API-Antwort um eigenen Eintrag erweitern

Die REST-API ist ein Teil von WordPress, mit dem ich relativ selten direkt kommuniziere. Wenn, geht es oft um Filtermöglichkeiten für eine Post-Liste, die im Frontend angezeigt wird, das heißt: Der Website-User ändert einen Filter, wodurch im Hintergrund eine Anfrage an die REST-API geschickt und die Liste mit den Daten der Antwort angepasst wird.

Bis vor Kurzem habe ich dabei immer einiges an HTML innerhalb von JavaScript erzeugt, um das Markup für die einzelnen Posts mit den Daten der REST-API-Antwort zu erstellen. Immer mit Umständlichkeiten oder Dingen, die sich nicht einfach umsetzen lassen, etwa Markup für Responsive Images, das sonst bei bestimmten Bildfunktionen von WordPress direkt mit erstellt wird.

Beim letzten Anwendungsfall kam mir dann der Gedanke, ob das nicht auch schlauer geht.