WordPress 6.1 „Misha“ ist am 1. November 2022 veröffentlicht worden. Es ist das dritte große Release des Jahres nach WordPress 6.0 Arturo, das am 24. Mai veröffentlicht wurde, und WordPress 5.9 Josephine, das am 25. Januar erschien.

Wie immer bringen neue WordPress-Versionen neue Funktionen, Verbesserungen und Fehlerbehebungen aus den neuesten Versionen des Gutenberg-Plugins in den Kern. WordPress 6.1 ist da keine Ausnahme, denn 11 Versionen des Gutenberg-Plugins wurden in den Core integriert, von 13.1 bis 14.1.

In diesem Beitrag werfen wir einen Blick hinter die Kulissen und stellen die neuen spannenden Funktionen vor, die mit der neuen Hauptversion von WordPress kommen.

Matias Ventura gab uns einige Einblicke in die Roadmap zu 6.1, in der er sagte, dass das Ziel von 6.1 darin besteht, die mit 5.9 und 6.0 eingeführten Erfahrungen zu verfeinern und einige Dinge zu beheben, während wir uns Phase 3 der Gutenberg-Roadmap nähern.

1. Verbesserungen im Vorlageneditor: Eine der wichtigsten neuen Funktionen ist der Vorlageneditor. WordPress 6.1 soll die Möglichkeit bieten, die Struktur der Website zu durchsuchen, zu visualisieren und zu bearbeiten.

2. Vorlagen-Muster: Ziel ist es, den Blockmustern eine zentrale Rolle bei der Vorlagen- und Seitenerstellung zu geben, sie an benutzerdefinierte Beitragstypen und Blocktypen anzupassen, die Sperrfunktion zu verbessern, die Verwaltung gespeicherter Muster zu verbessern usw.

3. Globale Stile und Blöcke & Design Tools: WordPress 6.1 wird es ermöglichen, Webfonts zu verwalten, responsive Typografie zu implementieren und das Toolset für Blöcke zu erweitern.

Schauen wir uns also einige der wichtigsten Funktionen von WordPress 6.1 genauer an:

Fluid Typography und Abstände

WordPress 6.1 bietet Unterstützung für Fluid Typography über calc/clamp CSS-Funktionen.

Der Ausdruck Fluid Typography beschreibt die Fähigkeit von Text, sich an die Breite des Viewports anzupassen, indem er von einer minimalen zu einer maximalen Breite skaliert.

Das ist etwas anderes als das, was du mit Media-Queries erreichen kannst, denn Media-Queries ermöglichen es Themes, die Größe von Text in Abhängigkeit von bestimmten Viewport-Größen zu ändern, tun aber nichts zwischen verschiedenen Werten.

Einige Themes unterstützen bereits fluide Typografie. Twenty Twenty-Two zum Beispiel nutzt die CSS-Funktion clamp() für verschiedene Schriftgrößen. Ein Beispiel:

"settings": {
	...
	"custom": {
		"spacing": {
			"small": "max(1.25rem, 5vw)",
			"medium": "clamp(2rem, 8vw, calc(4 * var(--wp--style--block-gap)))",
			"large": "clamp(4rem, 10vw, 8rem)",
			"outer": "var(--wp--custom--spacing--small, 1.25rem)"
		},
		"typography": {
			"font-size": {
				"huge": "clamp(2.25rem, 4vw, 2.75rem)",
				"gigantic": "clamp(2.75rem, 6vw, 3.25rem)",
				"colossal": "clamp(3.25rem, 8vw, 6.25rem)"
			}
		}
	}
}

Wie du im obigen Code sehen kannst, werden für jede einzelne Schriftgröße fließende Schriftgrößenwerte verwendet.

Ab WordPress 6.1 können Themes jetzt automatisch fluide Schriftgrößen erzeugen, indem sie die neue Eigenschaft typography.fluid wie folgt deklarieren:

"settings": {
	....
	"typography": {
		"fluid": true,
		"fontSizes": [
			{
				"size": "2rem",
				"fluid": {
					"min": "2rem",
					"max": "2.5rem"
				},
				"slug": "medium",
				"name": "Medium"
			}
		]
}

Mit Hilfe von typography.fluid und typography.fontSizes[].fluid wird der Wert jeder Schriftgröße automatisch nach der folgenden Formel berechnet:

--wp--preset--font-size--{slug}: clamp({fluid.min}, {fluid.min} + ((1vw - 0.48rem) * 1.592), {fluid.max});

Zum Beispiel:

--wp--preset--font-size--large: clamp(2rem, 2rem + ((1vw - 0.48rem) * 1.592), {2.5rem});

Beachte, dass Fluid Typography zum Zeitpunkt der Erstellung dieses Artikels eine experimentelle Funktion ist. Du kannst die technischen Details in Block supports: add fluid typography nachlesen.

Siehe auch How to add Fluid Typography to WordPress Block Themes von Rich Tabor und Fluid typography with Gutenberg von Carolina Nymark.

Ähnlich wie die Fluide Typografie führt WordPress 6.1 auch die Unterstützung für Fluid Spacing ein.

Vor WordPress 6.1 war es nur möglich, benutzerdefinierte Abstandswerte im Editor festzulegen, und Theme-Autoren durften keine festen Werte für Padding, Margin und Gap angeben. Daher war es nicht möglich, die Einstellungen für die Abstände von einem Theme auf ein anderes zu übertragen oder die Abstände beim Kopieren und Einfügen von Inhalten zwischen verschiedenen Websites beizubehalten.

Jetzt können Theme-Entwickler die Unterstützung von Fluid Spacing über die Einstellungen spacing.spacingScale und spacing.spacingSizes[] deklarieren (siehe auch Theme.json: Voreinstellungen für die Abstandsgröße hinzufügen und theme.json erweitern, um Voreinstellungen für die Abstandsgröße bereitzustellen).

"settings": {
	"spacing": {
		"spacingScale": 
		{
			"steps": 0
		},
		"spacingSizes": [
			{
				"size": "clamp(1.5rem, 5vw, 2rem)",
				"slug": "30",
				"name": "1"
			},
			{
				"size": "clamp(1.8rem, 1.8rem + ((1vw - 0.48rem) * 2.885), 3rem)",
				"slug": "40",
				"name": "2"
			},
			{
				"size": "clamp(2.5rem, 8vw, 6.5rem)",
				"slug": "50",
				"name": "3"
			},
			{
				"size": "clamp(3.75rem, 10vw, 7rem)",
				"slug": "60",
				"name": "4"
			},
			{
				"size": "clamp(5rem, 5.25rem + ((1vw - 0.48rem) * 9.096), 8rem)",
				"slug": "70",
				"name": "5"
			},
			{
				"size": "clamp(7rem, 14vw, 11rem)",
				"slug": "80",
				"name": "6"
			}
		],
	...
	}
}

Du findest die Eigenschaften von Fluid Typography und Spacing in den Globalen Einstellungen & Stilvorgaben und in living reference to theme.json API V2.

Bearbeitung von Blöcken nur für den Inhalt

WordPress 6.1 führt die reine Inhaltsbearbeitung für Blöcke, Muster und Vorlagen ein. Wenn die reine Inhaltsbearbeitung aktiviert ist, können die Nutzer/innen nur den Inhalt eines Blocks oder Musters ändern, damit sie nicht versehentlich das Layout zerstören oder die Stile ändern.

Derzeit ist es nicht möglich, die reine Inhaltsbearbeitung über die Oberfläche des visuellen Editors zu aktivieren. Um diese Funktion zu aktivieren, muss das Attribut templateLock auf contentOnly gesetzt werden und du kannst dafür den Code-Editor verwenden.

Das folgende Bild zeigt ein einfaches Beispiel.

TemplateLock auf contentOnly im Code-Editor setzen
TemplateLock auf contentOnly im Code-Editor setzen

Wenn die reine Inhaltsbearbeitung für einen Block oder ein Muster aktiviert ist, ändert sich die Einstellungs-Seitenleiste. Du siehst dann nicht mehr die üblichen Einstellungselemente, sondern eine Liste der Blöcke, die in der Gruppe enthalten sind. Du kannst jeden dieser Blöcke auswählen, indem du auf den Block im Editor-Canvas oder auf das entsprechende Listenelement in der Seitenleiste klickst.

Reine Inhaltsbearbeitung
Reine Inhaltsbearbeitung

Du kannst die reine Inhaltsbearbeitung deaktivieren, indem du auf die Schaltfläche Ändern in der Gruppensymbolleiste klickst.

Deaktivieren der reinen Inhaltsbearbeitung
Deaktivieren der reinen Inhaltsbearbeitung

Wenn du mit deinen Bearbeitungen fertig bist, kannst du die reine Inhaltsbearbeitung wieder aktivieren, indem du auf die Schaltfläche „Fertig“ klickst.

Reine Inhaltsbearbeitung deaktiviert
Reine Inhaltsbearbeitung deaktiviert

Außerdem werden Blöcke, die keinen Inhalt haben, aus der Listenansicht ausgeblendet und erhalten keinen Fokus in der Blockliste.

Mehr über das reine Bearbeiten von Inhalten erfährst du in der Entwicklungsnotiz und in diesem Blogbeitrag von Rich Tabor.

Verbesserte Blocktypen

Da so viele Gutenberg-Versionen in den Kern integriert wurden, wird WordPress 6.1 viele Änderungen und Verbesserungen an bestehenden Blocktypen mit sich bringen.

Randunterstützung für den Columns-Block hinzugefügt

Der Columns-Block nutzt jetzt die neue BorderBoxControl-Komponente, mit der WordPress-Nutzer/innen benutzerdefinierte Ränder für Spalten festlegen und für jeden Rand einen anderen Stil einstellen können (siehe auch Column: Add border support to column blocks pull request).

Anpassen von Spaltenrändern in WordPress 6.1
Anpassen von Spaltenrändern in WordPress 6.1

Einzelne Ränder können auch in der Datei theme.json wie folgt eingestellt werden:

"core/column": {
	"border": {
		"top": {
			"color": "#CA2315",
			"style": "dashed",
			"width": "6px"
		},
		"right": {
			"color": "#FCB900",
			"style": "solid",
			"width": "6px"
		}
	}
}

Entwickler/innen können mehr über das neue Steuerelement in der Komponentenreferenz – BorderBoxControl lesen.

Border Controls für Bildblöcke

Gutenberg 13.8 hat die Unterstützung für alle Rahmensteuerungen für den Bildblock eingeführt. Diese Änderung wird mit WordPress 6.1 in den Kern von WordPress übernommen und eröffnet neue und großartige Möglichkeiten für Webkreative.

Bildrandkontrollen in WordPress 6.1
Bildrandkontrollen in WordPress 6.1

Verbesserungen am Kommentarblock

WordPress 6.1 bringt uns auch einen verbesserten Kommentarblock.Ab der nächsten Version von WordPress können Nutzer/innen erweiterte Bearbeitungsfunktionen für den Kommentarbereich nutzen.

In der Abbildung unten siehst du die Seitenleiste mit den Einstellungen für den Kommentarblock und die Änderungen am Kommentartitel.

WordPress 6.1 bringt einen verbesserten Kommentarblock
WordPress 6.1 bringt einen verbesserten Kommentarblock

Variationen des Post Terms Blocks für benutzerdefinierte Taxonomiebegriffe

Der Post Terms-Block wurde um eine neue benutzerdefinierte Taxonomie-Variante erweitert. Du kannst jetzt eine neue benutzerdefinierte Taxonomie registrieren, z. B. den Beitragstyp „Schauspieler in einem Film“, und du kannst dem aktuellen Beitrag oder dem benutzerdefinierten Beitragstyp eine Liste von Taxonomiebegriffen hinzufügen.

Benutzerdefinierte Taxonomiebegriffe für einen Post Terms Block
Benutzerdefinierte Taxonomiebegriffe für einen Post Terms Block

Das Bild unten zeigt eine Liste von Schauspielern in einem Film-Beitragstyp.

Anpassen des Erscheinungsbildes eines Post Terms-Blocks mit benutzerdefinierten Taxonomiebegriffen
Anpassen des Erscheinungsbildes eines Post Terms-Blocks mit benutzerdefinierten Taxonomiebegriffen

Ein neuer Parents-Filter für den Abfrageblock

Für den Abfrageblock gibt es jetzt einen neuen Parents-Filter, der hierarchische Beiträge und Seiten mit demselben Elternteil anzeigt.

Ein neuer Parentsfilter ermöglicht die Anzeige von Beiträgen mit demselben Parent-Teil in einem Abfrageblock
Ein neuer Parentsfilter ermöglicht die Anzeige von Beiträgen mit demselben Parent-Teil in einem Abfrageblock

Schriftfamiliensteuerung im Überschriftenblock

Der Überschriftenblock unterstützt jetzt Schriftfamilien-Steuerelemente.

Ein Bild, das zeigt, wie man eine benutzerdefinierte Schriftfamilie in einem Überschriftenblock in WordPress 6.1 einstellt
Einstellen einer benutzerdefinierten Schriftfamilie in einem Überschriftenblock

Horizontale und vertikale Abstände im Galerie-Block

Seit WordPress 6.1 gibt es ein neues Steuerelement für den Achsenabstand, mit dem du unterschiedliche horizontale und vertikale Abstände für Bilder im Galerie-Block festlegen kannst.

Diese Änderung sorgt für mehr Flexibilität bei der Gestaltung von Bildergalerien.

Neues Layout für Bildergalerien in WordPress 6.1
Anpassen der horizontalen und vertikalen Abstände in einem Galerie-Block

Hervorgehobene Bilder im Titelblock

Featured Images bekommen nach wie vor viel Aufmerksamkeit, und in WordPress 6.1 wird der Umfang ihrer Verwendung noch erweitert. Ab 6.1 kann das Featured Image direkt aus dem Platzhalter des Cover-Blocks ausgewählt werden, wie die folgenden Bilder zeigen.

Ein Bild, das die Möglichkeit zeigt, ein Featured Image im Cover-Block-Platzhalter zu verwenden
Ein Featured Image im Cover-Block-Platzhalter verwenden

Diese Änderung soll zu einem einheitlicheren Nutzererlebnis beitragen und den Nutzern klarer machen, was sie gerade anpassen.

Außerdem wurde ein Featured Image Toggle zum Medienaustauschfluss hinzugefügt.

Verwenden von Featured Images im Medien-Ersatzfluss in WordPress 6.1
Verwenden von Featured Images im Medien-Ersatzfluss

Erscheinungsbild-Tools für Post-Navigationslinks

Mit der Einstellungseigenschaft appearanceTools kannst du verschiedene Einstellungen vornehmen, die standardmäßig deaktiviert sind.

Seit WordPress 6.1 kannst du bei Themes, die die Einstellungseigenschaft appearanceTools unterstützen, die Linkfarbe und die Schriftart im Post Navigation Link anpassen.

Anpassen der Linkfarbe in Post Navigation Links
Anpassen der Linkfarbe in Post Navigation Links

Du kannst mehr über die Eigenschaft appearanceTools in unserer Einführung in das Twenty Twenty-Two-Theme lesen.

Sperre innerhalb des Container-Blocks mit einem Klick

Ein neuer Schalter ermöglicht es jetzt, Blöcke in einem Container mit einem einzigen Klick zu sperren. Dies gilt für Gruppen-, Cover– und Spaltenblöcke.

Innerhalb des Gruppenblocks sperren
Innerhalb des Gruppenblocks sperren

Verbesserter Listenblock

Der Listenblock wurde verbessert und nutzt jetzt auch innere Blöcke. Diese Änderung macht es einfacher, Listenelemente zu sortieren und einzurücken und führt definitiv zu einer verbesserten Benutzererfahrung.

Sortieren von Listenelementen
Sortieren von Listenelementen
Einrücken und Ausrücken von Listenelementen
Einrücken und Ausrücken von Listenelementen

Unterstützung von Pseudo-Elementen in Blockthemen

Blockthemen können jetzt das Aussehen von Elementen und Blöcken abhängig von ihrem Zustand (aktiv/fokussiert/schwebend) anpassen.

Dies ist ein Beispiel für die Verwendung von Pseudo-Selektoren mit Links, wie sie in der theme.json von Twenty Twenty-Three definiert sind:

"styles": {
	...
	"elements": {
		"link": {
			"color": {
				"text": "var(--wp--preset--color--contrast)"
			},
			":hover": {
				"typography": {
					"textDecoration": "none"
				}
			},
			":focus": {
				"typography": {
					"textDecoration": "underline dashed"
				}
			},
			":active": {
				"color": {
					"text": "var(--wp--preset--color--secondary)"
				},
				"typography": {
					"textDecoration": "none"
				}
			},
			"typography": {
				"textDecoration": "underline"
			}
		}
	}
}

Der folgende Code Button-Stile:

"styles": {
	...
	"elements": {
		"button": {
			"border": {
				"radius": "0"
			},
			"color": {
				"background": "var(--wp--preset--color--primary)",
				"text": "var(--wp--preset--color--contrast)"
			},
			":hover": {
				"color": {
					"background": "var(--wp--preset--color--contrast)",
					"text": "var(--wp--preset--color--base)"
				}
			},
			":focus": {
				"color": {
					"background": "var(--wp--preset--color--contrast)",
					"text": "var(--wp--preset--color--base)"
				}
			},
			":active": {
				"color": {
					"background": "var(--wp--preset--color--secondary)",
					"text": "var(--wp--preset--color--base)"
				}
			}
		}
	}
}

Du kannst das Ergebnis in den folgenden Bildern sehen.

Der Schwebezustand eines Buttons in WordPress 6.1 mit dem Twenty Twenty-Three-Theme
Der Schwebezustand eines Buttons in WordPress 6.1 mit dem Twenty Twenty-Three-Theme
Der aktive Zustand eines Buttons in WordPress 6.1 mit dem Twenty Twenty-Three-Theme
Der aktive Zustand eines Buttons in WordPress 6.1 mit dem Twenty Twenty-Three-Theme

Du kannst aber auch Elemente auf Blockebene stylen. Der einzige Unterschied ist, dass du die Stile innerhalb eines Blocks definieren musst. Der folgende Code aus der theme.json von Twenty Twenty-Three wendet zum Beispiel Stile auf Links im Hauptblock Navigation an:

"styles": {
	"blocks": {
		"core/navigation": {
			"elements": {
				"link": {
					":hover": {
						"typography": {
							"textDecoration": "underline"
						}
					},
					":focus": {
						"typography": {
							"textDecoration": "underline dashed"
						}
					},
					":active": {
						"typography": {
							"textDecoration": "none"
						}
					},
					"typography": {
						"textDecoration": "none"
					}
				}
			},
			"typography": {
				"fontSize": "var(--wp--preset--font-size--small)"
			}
		}
	}
}

Zusätzliche Funktionen und Verbesserungen im Block-Editor

Obwohl es sich um eine Konsolidierungsversion handelt, bringt WordPress 6.1 so viele Änderungen und Verbesserungen mit sich, dass es unmöglich wäre, sie alle in einem Artikel aufzulisten (aber in diesem Artikel von Anne McCarty findest du eine umfassende Liste der Design-Tools für einzelne Blöcke).

Hier werden wir auf die folgenden Änderungen eingehen:

Schablonenteile-Variationen im Block-Inserter

Im Block-Inserter sind jetzt Variationen von Vorlagenteilen verfügbar, die das Hinzufügen von Vorlagenteilen zu deiner Website erleichtern.

Einfaches Hinzufügen von Vorlagenteilen zu deiner Website
Header Template Part Variationen in WordPress 6.1

Diese Änderung macht den Bearbeitungsprozess einfacher und schneller und ermöglicht es den Nutzern, mit nur wenigen Klicks alle Variationen eines Vorlagenteils auf einmal zu sehen.

Ränder und Abstände visualisieren

Eine kleine, aber nützliche Verbesserung ist die Hervorhebung der Ränder und Auffüllungen, während der Nutzer sie anpasst. Dadurch wird es viel deutlicher, wie viel Platz innerhalb oder außerhalb der Elemente hinzugefügt wird.

Hervorhebung von Seitenrändern und Auffüllungen
Hervorhebung von Seitenrändern und Auffüllungen

Verbesserungen an der Einstellungs-Seitenleiste

WordPress 6.1 bringt auch einige Verbesserungen an der Einstellungen-Seitenleiste mit sich.

Die Seitenleiste für die Beitragseinstellungen wurde leicht umgestaltet. Die Felder für das Beitragsformat, den Slug, die Vorlage und die Autoren sind jetzt aneinander angeglichen und haben die gleiche Breite. Außerdem wurde der Beitragsplaner vereinfacht, um das Erlebnis verständlicher zu machen. Auch der Bereich für die Vorlagen wurde in ein Popover verschoben, um Platz zu sparen und die Benutzeroberfläche aufzuräumen.

Eine vereinfachte Seitenleiste für die Einstellungen, die einfacher zu verwalten ist
WordPress 6.1 wird eine vereinfachte Seitenleiste für die Einstellungen aufweisen

Außerdem wurde das Vorlagen-Panel durch einen Vorlagen-Link ersetzt. Wenn du auf den Vorlagen-Link klickst, wird die Standardvorlage in einem Popover angezeigt.

Ein Bild, das das Popover der Standardvorlage zeigt
Das Vorlagen-Popover in WordPress 6.1

Design-Updates für das Veröffentlichungs-Popover

Die Datumsauswahl im Veröffentlichen-Popover wurde neu gestaltet und verwendet jetzt „bestehende WordPress-Komponenten und Emotion-Styling.“

Die überarbeitete Datumsauswahl mit zusätzlichen Styling-Optionen
WordPress 6.1 zeigt eine überarbeitete Datumsauswahl

Mehr technische Einblicke gibt es in den Design-Updates für das Veröffentlichungs-Popover (DateTimePicker).

Zeit zum Lesen im Info-Panel

Das Informationsfeld in der oberen Symbolleiste wurde verbessert und zeigt jetzt zusätzlich zu Wörtern, Zeichen, Überschriften, Absätzen und Blöcken auch die Lesezeit an.

In QWordPress 6.1 zeigt das Info-Panel jetzt Zeit zum Lesen an
Das Info-Panel zeigt jetzt die Lesezeit an

Die geschätzte Lesezeit wird auf der Grundlage von durchschnittlich 189 Wörtern pro Minute berechnet. Lies mehr in @wordpress/editor: Füge die geschätzte Lesezeit zum Inhaltsverzeichnis im Editor hinzu.

Blockabstandskontrolle zur Formatvorlagen-Benutzeroberfläche hinzugefügt

Ab sofort können Nutzer/innen den vertikalen und horizontalen Abstand von Blöcken, die diese Funktion unterstützen, in der Formatvorlagen-Benutzeroberfläche anpassen.

Blockabstandskontrollen für den Block "Social Icons"
Blockabstandskontrollen für den Block „Social Icons“

Neue und verbesserte Bauwerkzeuge

WordPress 6.1 wird auch die Funktionalität des Site Builders erweitern. Blockmuster werden an mehr Stellen verfügbar sein und eine größere Auswahl an Vorlagentypen wird die Bearbeitung im Vorlageneditor verbessern.

Erstellungsmuster für Beitragstypen

Mit WordPress 6.0 wurden Seitenerstellungsmuster eingeführt, mit denen jedes Mal, wenn ein Nutzer eine neue Seite erstellt, eine Auswahl an Mustern bereitgestellt wird. Auf diese Weise musst du die Seite nicht mehr von Grund auf neu erstellen, sondern kannst ein Muster aus einem Modal auswählen, den Inhalt eingeben und schon bist du startklar.

Um diese Funktion zu aktivieren, sollte mindestens ein Blockmuster die Unterstützung für die core/post-content Blocktypen deklarieren.

Ab WordPress 6.1 wird diese Funktion auf alle Beitragstypen ausgeweitet. Alles, was du tun musst, ist, core/post-content in dein Muster blockTypes einzubinden und die entsprechende postTypes zu setzen.

Jetzt wollen wir anhand eines praktischen Beispiels herausfinden, wie du die Vorteile dieser neuen Funktion nutzen kannst. Angenommen, du hast einen Beitragstyp Film.

Zuerst musst du ein Blockmuster registrieren, wie hier beschrieben.

Du kannst auch den einfachen Weg gehen und die implizite Musterregistrierung verwenden (der Einfachheit halber werden wir in diesem Beispiel die implizite Musterregistrierung verwenden).

Erstelle eine PHP-Datei für dein Blockmuster im Verzeichnis /patterns im Ordner deines Themes (für dieses Beispiel haben wir Twenty Twenty-Two verwendet). Füge dann die folgende Überschrift hinzu:

<?php
/**
 * Title: Pattern with columns
 * Slug: twentytwentytwo/pattern-with-columns
 * Block Types: core/post-content
 * Post Types: movie
 * Categories: text
 */
?>
<!-- wp:heading -->
<h2>Hello there!</h2>
<!-- /wp:heading -->

Und das war’s. Jetzt erscheint jedes Mal, wenn du einen neuen Movie Post Type erstellst, ein Muster auswählen-Modal auf dem Bildschirm.

Ein Modal wird auf dem Bildschirm angezeigt, wenn der Benutzer einen neuen Beitragstyp erstellt
Ein Modal wird auf dem Bildschirm angezeigt, wenn der Benutzer einen neuen Beitragstyp erstellt

Wenn du möchtest, dass das Modal bei mehreren Beitragstypen angezeigt wird, füge einfach die entsprechenden Slugs durch Kommas getrennt hinzu:

<?php
/**
 * Title: Pattern with columns
 * Slug: twentytwentytwo/pattern-with-columns
 * Block Types: core/post-content
 * Post Types: movie, book
 * Categories: text
 */
?>
<!-- wp:heading -->
<h2>Hello there!</h2>
<!-- /wp:heading -->

Weitere Informationen zu Erstellungsmustern findest du unter Möglichkeit, Erstellungsmuster für andere Beitragstypen als Seite zu verwenden.

Mehr Vorlagentypen im Seiteneditor

Mit WordPress 6.0 kann nur eine begrenzte Anzahl von Vorlagen im Seiteneditor erstellt werden:

Neue Vorlage in WordPress 6.0 hinzufügen
Neue Vorlage in WordPress 6.0 hinzufügen

Ab WordPress 6.1 wird es möglich sein, für jeden einzelnen Beitragstyp eine eigene Vorlage zu erstellen.

Außerdem kannst du Vorlagen für Core- und Custom-Taxonomien hinzufügen und bearbeiten, sogar für einzelne Kategorien oder Tags.

Wenn du benutzerdefinierte Beitragstypen oder eine benutzerdefinierte Taxonomie registrierst, werden sie automatisch in der Vorlagenauswahlbox des Site Editors aufgeführt.

Ein Bild mit einer Liste der in WordPress 6.1 verfügbaren Vorlagentypen
Eine Liste der in WordPress 6.1 verfügbaren Vorlagentypen

Aber nicht nur das. Nach der Auswahl des Vorlage-Post-Typs wird der Nutzer in einem Modal gefragt, ob er eine Vorlage für alle Posts dieses Typs oder eine neue Vorlage für einen bestimmten Post des ausgewählten Post-Typs erstellen möchte.

Hinzufügen einer Vorlage für einen benutzerdefinierten Beitragstyp in WordPress 6.1
Hinzufügen einer Vorlage für einen benutzerdefinierten Beitragstyp in WordPress 6.1

Dann erscheint ein neues Modal mit einer Liste der Beiträge, die für diesen Beitragstyp verfügbar sind.

Hinzufügen einer neuen Vorlage in WordPress 6.1
Hinzufügen einer neuen Vorlage in WordPress 6.1

Twenty Twenty-Three und andere Theme-Verbesserungen

WordPress 6.1 liefert auch ein brandneues Standard-Theme: Twenty Twenty-Three. Es ist ein minimalistisches Theme ohne Bilder oder zusätzliche Funktionen.

Die Dateistruktur von Twenty Twenty-Three
Die Dateistruktur von Twenty Twenty-Three

Das neue Standard-Theme versammelt alle aktuellen Funktionen zur Website-Bearbeitung an einem Ort und ist ein perfekter Sandkasten zum Testen von Vorlagen und Vorlagenteilen, Stilvariationen, flexibler Typografie und Abständen sowie allen Funktionen, die mit den neuesten Versionen von WordPress eingeführt wurden.

Und deshalb ist es auch ein großartiges Werkzeug, um die Entwicklung von Themes, Vorlagen und Blockmustern anhand von Arbeitsbeispielen zu lernen.

In unserer ausführlichen Übersicht kannst du tiefer in das neue WordPress Standard-Theme eintauchen.

Twenty Twenty-Three Style Variationen
Twenty Twenty-Three Style Variationen

Neben dem neuen Standard-Theme führt WordPress 6.1 auch einige Theme-Verbesserungen ein.

URI-Kopfzeile in Themes aktualisieren

Wenn vor WordPress 6.1 ein Theme denselben Namen hatte wie ein Theme, das im WordPress-Themes-Verzeichnis verfügbar war, wurde dem Benutzer eine Meldung über die verfügbare Aktualisierung angezeigt.

Mit WordPress 6.1 verhindert ein neuer Update URI Header das versehentliche Überschreiben von Theme-Dateien von Drittanbietern. Diese Funktion ist besonders nützlich, wenn du ein selbst entwickeltes Theme mit demselben Namen wie ein Theme im WordPress-Theme-Verzeichnis hast, es aber nicht mit der Community teilen möchtest.

Wenn der Wert des Theme-Headers Update URI nicht mit https://wordpress.org/themes/{$slug}/ oder w.org/theme/{$slug} übereinstimmt, wird WordPress nicht versuchen, das Theme zu aktualisieren.

Wenn Update URI gesetzt ist, sollte es sich um eine URI mit einem eindeutigen Hostnamen handeln, z. B. https://wordpress.org/themes/my-theme/ oder https://example.com/my-theme/.

Theme-Entwickler finden eine ausführlichere Übersicht über den neuen Update URI Theme-Header in der offiziellen Dev Note.

Filter für blockierte Themen unter „Themen hinzufügen“

Ein neuer Shortcut ermöglicht es jetzt, beim Hinzufügen eines neuen Themes zu deiner WordPress-Installation nach blockierten Themes zu filtern.

Außerdem wurde im gleichen Bildschirm ein neuer Hilfe-Tab für Block-Themes hinzugefügt.

Block Themes und Hilfe-Registerkarte im Theme-Installationsbildschirm
Block Themes und Hilfe-Registerkarte im Theme-Installationsbildschirm

Änderungen für Entwickler

WordPress 6.1 bringt auch eine neue API und viele Funktionen und Änderungen für Entwickler/innen.

Neue API für die Persistenz von Präferenzen

WordPress 6.1 führt eine brandneue API für die Persistenz von Präferenzen ein, die die Einstellungen des Redakteurs in der WordPress-Datenbank speichert, anstatt sie lokal zu speichern.

Auf diese Weise können die Benutzereinstellungen in allen Browsern und auf allen Geräten gespeichert werden.

Zu diesem Zweck wurde das bisherige Persistenzsystem im Paket @wordpress/data veraltet und ein neues Paket preferences-persistence eingeführt. Das neue Paket speichert Daten über die Rest-API in der Benutzer-Meta. Die Daten werden auch im lokalen Speicher als Fallback gespeichert, falls der Nutzer offline geht oder eine Anfrage unterbrochen wird (siehe auch Pull #39795).

Unterstützung für Button Styles in theme.json

Mit WordPress 6.1 könnt ihr euren Themes mithilfe von theme.json Button-Stile hinzufügen. Dies ermöglicht es Theme-Entwicklern, Buttons in verschiedenen Blöcken einheitlich zu gestalten. Ein Beispiel ist der Suchblock, aber auch Blöcke von Drittanbietern werden von dieser Änderung profitieren.

Um dies zu ermöglichen, wird eine neue wp-element-button Klasse zu den Button-Elementen hinzugefügt, damit sie denselben Stil haben.

Du kannst diese Änderung testen, indem du den folgenden Code in deiner theme.json in einer Entwicklungsumgebung hinzufügst:

{
	"styles": {
		"elements": {
			"button": {
				"color": {
					"background": "blue"
				}
			}
		}
	}
}

Suchblock-Variationen unterstützen jetzt Query Vars

WordPress 6.1 unterstützt Suchblockvariationen, die auf Query Vars basieren. Das bedeutet, dass du deinen Nutzern Suchfelder zur Verfügung stellen kannst, mit denen sie nach jeder Art von Inhalt suchen können.

Im folgenden Beispiel registrieren wir eine Blockvariation für einen movies Beitragstyp. Das Beispiel basiert auf dem Tutorial von Carolina Nymar über Blockvariationen.

Füge in der Funktionsdatei deines (Child-)Themes den folgenden Code ein:

function movies_editor_assets() {
	wp_enqueue_script(
		'movies-block-variations',
		get_template_directory_uri() . '/assets/block-variations.js',
		array( 'wp-blocks' )
	);
}
add_action( 'enqueue_block_editor_assets', 'movies_editor_assets' );

Erstelle die folgende Datei block-variations.js im Ordner assets deines (Child-)Themes:

wp.blocks.registerBlockVariation( 
	'core/search', 
	{
		name: 'movie-search',
		title: 'Movie Search Block',
		attributes: {
			query: {
				post_type: 'movies'
			}
		}
	} 
);

Lade nun dein WordPress-Dashboard neu und suche im Block-Inserter nach einer Movie Search Block Variation.

WordPress 6.1 now has a custom Search block variation in the block inserter
Eine benutzerdefinierte Suchblock-Variation im Block-Inserter

Du kannst mehr über Blockvariationen in der offiziellen Dokumentation lesen.

Ein neues Buttons-Element in den Globalen Stilen

Mit WordPress 5.9 wurde eine Schnittstelle für globale Stile eingeführt, mit der Nutzer/innen Stilvorgaben für ihre Websites anpassen können, entweder global oder auf Blockebene.

Bei der ersten Implementierung konntest du die Farben für Hintergrund, Text und Links anpassen. Mit WordPress 6.1 wurde das Farben-Panel um ein neues Element Buttons erweitert, mit dem du das Aussehen von Buttons auf deiner gesamten Website steuern kannst.

Anpassen der Schaltflächen in den Globalen Stileinstellungen
Buttons in den Globalen Stileinstellungen anpassen

Dies wirkt sich auf den Stil der Schaltflächen auf der gesamten Website aus, vom Schaltflächenblock über den Suchblock bis hin zu Blöcken von Drittanbietern, die Schaltflächen verwenden.

Appearance Tools für jedes Theme verfügbar

Vor WordPress 6.1 waren Appearance Tools nur in Block-Themes verfügbar. Mit 6.1 kann jedes Theme diese Funktion einbinden, indem es die Unterstützung einfach in seine Funktionsdatei einfügt:

add_theme_support( 'appearance-tools' );

Dadurch werden alle folgenden Einstellungen auf einmal aktiviert:

  • rand: Farbe, Radius, Stil, Breite
  • farbe: link
  • abstand: blockGap, margin, padding
  • typography: lineHeight

Neue is_login_screen() Funktion

Mit der neuen Funktion is_login_screen() kannst du jetzt feststellen, ob die aktuelle Seite der Anmeldebildschirm ist. Es werden auch benutzerdefinierte Login-Seiten unterstützt.

Du kannst den neuen bedingten Tag wie folgt verwenden:

function add_text_to_login() {
	if ( is_login_screen() ) {
		echo( "<h1>Welcome to Kinsta!</h1>" );
	}
}
add_action( 'init', 'add_text_to_login' );

Das Ergebnis auf dem Bildschirm würde wie folgt aussehen:

is_login_screen() prüft, ob die aktuelle Seite der Anmeldebildschirm ist
is_login_screen() prüft, ob die aktuelle Seite der Anmeldebildschirm ist

Neue Site Health Checks für Persistent Object Cache und Full Page Cache

WordPress 6.1 führt zwei Site Health Checks für Persistent Object Cache und Page Cache ein. Beide Prüfungen laufen nur in Produktionsumgebungen.

Du kannst die Ergebnisse dieser neuen Tests auf der Registerkarte „Status“ im Bildschirm „Site Health“ sehen.

Der Test für den persistenten Objekt-Cache stellt fest, ob die Website einen persistenten Objekt-Cache verwendet, und wenn nicht, empfiehlt er dessen Verwendung, wenn dies für die Website sinnvoll ist.

Persistent Object Cache Testergebnis in Site Health
Persistent Object Cache Testergebnis in Site Health

Zusätzlich zu dem neuen Test führt WordPress 6.1 mehrere neue Filter ein, die Hosting-Provider in ihren jeweiligen Umgebungen nutzen können.

Mit site_status_persistent_object_cache_url können Hosts den Standard-Link „Learn more“ für Persistent Object Cache durch einen benutzerdefinierten Link ersetzen. Zum Beispiel:

add_filter( 'site_status_persistent_object_cache_url', function() {
	return 'https://example.com/persistent-object-cache';
} );

Mit site_status_persistent_object_cache_notes können Gastgeber die Standardhinweise ersetzen, um ihre bevorzugte Objekt-Caching-Lösung zu empfehlen. Hier ist ein Beispiel für die Verwendung:

add_filter( 'site_status_persistent_object_cache_notes', function( $notes ) {
	$notes = __( 'Custom notes.', 'text-domain' );
	return $notes;
} );

site_status_persistent_object_cache_thresholds filtert die Schwellenwerte, die verwendet werden, um zu bestimmen, ob die Verwendung eines persistenten Objekt-Caches vorgeschlagen wird. Die Standardwerte sind:

$thresholds = apply_filters(
	'site_status_persistent_object_cache_thresholds',
	array(
		'alloptions_count' => 500,
		'alloptions_bytes' => 100000,
		'comments_count'   => 1000,
		'options_count'    => 1000,
		'posts_count'      => 1000,
		'terms_count'      => 1000,
		'users_count'      => 1000,
	)
);

Du kannst den Filter wie folgt verwenden:

add_filter( 'site_status_persistent_object_cache_thresholds', function( $thresholds ) {
	$thresholds = array(
		'alloptions_count' => 700,
		'alloptions_bytes' => 150000,
		'comments_count'   => 1500,
		'options_count'    => 1500,
		'posts_count'      => 2000,
		'terms_count'      => 1000,
		'users_count'      => 2000,
	);
	return $thresholds;
} );

site_status_should_suggest_persistent_object_cache ist ein Kurzschlussfilter, der filtert, ob die Verwendung eines persistenten Objekt-Caches vorgeschlagen und die Standard-Schwellenwertprüfungen umgangen werden sollen. Du kannst ihn wie folgt verwenden:

add_filter( 'site_status_should_suggest_persistent_object_cache', '__return_true' );

Der Full Page Cache Test prüft, ob die Website einen Full Page Cache verwendet und ob die Antwortzeit in Ordnung ist:

Full Page Cache Testergebnis in Site Health
Full Page Cache Testergebnis in Site Health

Mit zwei neuen Filtern können Hosts außerdem die Antwortschwelle anpassen und benutzerdefinierte Cache-Header hinzufügen, die erkannt werden sollen.

Der site_status_good_response_time_threshold filtert den Schwellenwert, unterhalb dessen eine Antwortzeit als gut angesehen wird. Der Standardwert ist 600 ms (siehe auch Langsame Server-Antwortzeiten beeinträchtigen die Leistung).

site_status_page_cache_supported_cache_headers ermöglicht es Hosting-Providern, benutzerdefinierte Cache-Header und die entsprechenden Überprüfungs-Callbacks hinzuzufügen. In der Dev Note findest du das folgende Beispiel für die Verwendung:

add_filter( 'site_status_page_cache_supported_cache_headers', function( $cache_headers  ) {
	// Add new header to the existing list.
	$cache_headers['cf-cache-status'] = static function ( $header_value ) {
		return false !== strpos( strtolower( $header_value ), 'hit' );
	};
	return $cache_headers;
});

Entwickler können in die neuen Site Health Checks tiefer eintauchen:

Create-block Scaffolding Tool Updates

WordPress 6.1 führt auch neue Funktionen und Aktualisierungen für das @wordpress/create-block-Paket ein, das Entwicklern zur Verfügung steht, um neue Blöcke zu erstellen.

Ein Blockgerüst ist die unterstützende Verzeichnisstruktur, die es WordPress ermöglicht, einen Block zu erkennen.

Mit WordPress 6.1 werden einige neue Funktionen und einige Verbesserungen eingeführt.

Ein neues –variant Flag ermöglicht es Blockentwicklern, eine Blockvariante zu wählen, die eingerüstet werden soll. Die internen Vorlagen, die das create-block-Tool bereitstellt, unterstützen die Varianten dynamic und static, d.h. du kannst einen dynamischen bzw. statischen Block einrüsten. Die Voreinstellung ist static.

Du kannst das neue Flag wie folgt verwenden:

npx @wordpress/create-block my-first-block -variant=dynamic

Entwickler können benutzerdefinierte Varianten definieren, indem sie ein variants Objekt zur Vorlagendefinition hinzufügen.

Eine zusätzliche Funktion ermöglicht es Entwicklern von Blöcken jetzt, neue Blöcke zu einem bestehenden Plugin hinzuzufügen, dank des --no-plugin Flags.

npx @wordpress/create-block custom-block --no-plugin

Wenn du den obigen Befehl ausführst, wird ein neuer Satz von Blockdateien in einem Unterverzeichnis des aktuellen Verzeichnisses erstellt. Beachte, dass das Skript nicht weiß, wo es sich befindet:

Wenn du npx @wordpress/create-block block-name --no-plugin aufrufst, wird ein neuer Block in dem Verzeichnis folderNamedirectory erstellt, in dem er aufgerufen wird

Du kannst mehr über create-block scaffolding tool updates lesen.

Caching von Abfrageergebnissen in WP_Query

WordPress 6.1 ändert die Art und Weise, wie Datenbankabfragen in der Klasse WP_Query ausgeführt werden. Ab 6.1 werden Abfragen zwischengespeichert, was zur Folge hat, dass bei mehrmaliger Ausführung einer Abfrage die Ergebnisse aus dem Cache geladen werden.

Sowohl Websites, die das Caching von persistenten Objekten verwenden, als auch Websites, die das In-Memory-Caching nutzen, profitieren von dieser Änderung, auch wenn die Vorteile für letztere geringer sind.

Standardmäßig werden alle Aufrufe von WP_Query gecacht, aber Entwickler können das Caching von Abfragen mit dem Parameter cache_results deaktivieren:

$args = array(
	'posts_per_page' => 20,
	'cache_results'  => false
);
$query = new WP_Query( $args );

Du kannst die Zwischenspeicherung von Abfragen auch global mit dem disable_caching Hook deaktivieren, obwohl dies nicht empfohlen wird.

Es sei darauf hingewiesen, dass einige Abfrageparameter für das Caching von Abfragen nicht berücksichtigt werden. Der am häufigsten verwendete dieser Parameter ist der Parameter fields. Der Grund dafür ist, dass die Berücksichtigung von fields zu mehreren Zwischenspeichern für mehrere Teilmengen derselben Daten und damit zu einer Leistungsverschlechterung geführt hätte.

Einen genaueren Überblick über das WP_Query Caching findest du in der WP_Query Performance Improvements in 6.1 dev note.

Template-Teile in klassischen Themes

Ab WordPress 6.1 unterstützen klassische Themes blockbasierte Vorlagenteile. Um diese Funktion hinzuzufügen, müssen Themes die Unterstützung für block-template-parts hinzufügen, wie unten gezeigt:

function add_block_template_part_support() {
	add_theme_support( 'block-template-parts' );
}
 
add_action( 'after_setup_theme', 'add_block_template_part_support' );

Klassische Themes können mit der Funktion block_template_part Vorlagenteile in PHP-Vorlagen einfügen. Mehr über diese Funktion erfährst du in der Dev-Note zu blockbasierten „Template Parts“ in klassischen Themes.

Ein Hinweis zur JPEG-zu-WebP-Bildkonvertierung

Ursprünglich sah es so aus, als ob WordPress 6.1 auch die automatische Umwandlung von JPEG- in WebP-Bilder unterstützen würde.

Allerdings meldeten viele Mitwirkende mehrere Probleme. Insbesondere wurde folgendes festgestellt:

Die Ressourcen für die Bilderzeugung beim Hochladen eines Bildes steigen drastisch an, aber die Ressourcen für die Bereitstellung eines Bildes werden gesenkt. Da das Hochladen von Bildern im Vergleich zur Bereitstellung von Bildern sehr selten ist, sollte sich der zusätzliche Aufwand für das Komprimieren und Speichern von Bildern lohnen.

Und:

Der dramatische Anstieg des Ressourcenverbrauchs beim Hochladen eines Bildes ist ein sehr schlechter Nebeneffekt. Das bedeutet, dass viele Uploads fehlschlagen und die Nutzer/innen im Stich lassen werden. Außerdem werden dadurch die Supportanfragen sowohl bei WordPress als auch bei den Hosting-Unternehmen drastisch ansteigen. Das ist nicht akzeptabel. Selbst wenn die Unterstützung von Multimime-Bildern in WordPress notwendig ist, scheint der aktuelle Ansatz keine gute Lösung zu sein.

Schließlich wurde nach einem Beitrag von Matt Mullenweg auf WordPress.org die automatische Umwandlung von JPEG in WEBP aus WordPress 6.1 entfernt.

Ich bin daran interessiert, neue Formate zu unterstützen und die Leistung zu verbessern, aber ich denke, dass diese Änderung, die den Nutzern beim Upgrade auf 6.1 standardmäßig auferlegt wird, zum jetzigen Zeitpunkt zu viel ist, auch im Hinblick auf einige der klobigen Interaktionen, die Betriebssysteme immer noch mit webp (und HEIC!) Dateien haben. Ich bin froh, dass die Unterstützung für Webp- und HEIC-Dateien im Kernprogramm verbleibt, denn wir sollten liberal sein, was wir akzeptieren und womit wir arbeiten, aber nicht mit der Änderung, alles in Webp zu konvertieren, wenn JPEGs hochgeladen werden. Das ist ein hervorragendes Terrain für ein kanonisches Plugin, ein Konzept, das meiner Meinung nach jedes Make-Team viel mehr erforschen sollte, um zu experimentieren und die Funktionalität zu verbessern…

WordPress-Nutzer und -Entwickler können die automatische Umwandlung von JPEG– in WebP-Bilder testen, indem sie das Performance Lab Plugin der WordPress Performance Group installieren.

Zusätzliche Änderungen für Entwickler

Zusätzlich zu den Funktionen und Verbesserungen, die wir oben besprochen haben, führt WordPress 6.1 einige weitere Änderungen für Entwickler ein. Du solltest dir diese Änderungen in den Entwicklerhinweisen genauer ansehen:

Zusammenfassung

Mit WordPress 6.1 werden die Möglichkeiten zur Bearbeitung von WordPress-Websites konsolidiert. Wir befinden uns noch in Phase zwei der langfristigen Gutenberg-Roadmap, aber die Tools und Funktionen, die uns zur Verfügung stehen, werden mit der Zeit immer zuverlässiger und robuster. WordPress 6.1 bringt Fluid Typography, neue Tools für die Website-Bearbeitung und jede Menge Verbesserungen für bestehende Blöcke.

Aber das ist noch nicht alles. WordPress 6.1 bringt auch erhebliche Verbesserungen bei der Leistung des CMS mit sich. Zwei neue Site Health Checks erkennen die Verwendung von Full Page Cache und Persistent Object Cache, das Query Caching verbessert die Leistung von WP_Query und es gibt auch Verbesserungen der PHP-Leistung bei der Registrierung von Core-Blöcken.

Kurz gesagt, 6.1 ist eine Version, die WordPress-Nutzer/innen und -Designer/innen lieben werden, ebenso wie Entwickler/innen, die von vielen Verbesserungen in verschiedenen Bereichen des CMS profitieren werden.

Jetzt liegt es an dir. Was gefällt dir am meisten an WordPress 6.1? Hast du die neue Version bereits in deiner Entwicklungsumgebung getestet? Teile uns deine Meinung zu WordPress 6.1 in den Kommentaren unten mit.

Carlo Daniele Kinsta

Carlo is a passionate lover of webdesign and front-end development. He has been playing with WordPress for more than 20 years, also in collaboration with Italian and European universities and educational institutions. He has written hundreds of articles and guides about WordPress, published both on Italian and international websites, as well as on printed magazines. You can find him on LinkedIn.