Ankerlink an den Anfang der Seite
z03 0903
Generic filters
Filter by Kategorien

Block Themes für WordPress sind einfach ungeheuer flexibel. Im Grund kann man mit jedem Block-Theme so ziemlich jedes Layout bauen das man möchte. Neues Design gefällig? – Früher musste man sich ein neues Theme dafür suchen. Heute stellt man einfach die Elemente in seinen Templates im Site-Editor um, ändert die globalen Farben, die Schrift, die globalen Block-Einstellungen, was immer man möchte. Und schon ist das Redesign gemacht, ohne dass man gleich ein neues Theme braucht.

Ich verwende daher dasselbe Block-Theme für mehrere Projekte, da es sich ja leicht an die individuellen Design-Anforderungen anpassen lässt. Doch dann kam ein Projekt, das um ein Wiki erweitert werden sollte. Dafür entwickelte ich ein Plugin mit einem neuen Post Type und Kategorien, und wollte auch gleich Templates dazu liefern. Die Templates sollte aber nicht in allen Projekten vorkommen, sondern nur in dem mit dem Wiki.

Seit WordPress 6.7 gibt es die Funktion register_block_template(), um neue Templates via Plugin zu registrieren, die dann im Site-Editor beliebig bearbeitet werden können.

add_action('init', 'register_wiki_templates');
function register_wiki_templates() {
register_block_template(
    'myplugin-wiki//single-wiki',
    array(
        'title'       => __('Wiki Doc', 'myplugin-wiki'),
        'description' => __('Single template for wiki entries.', 'myplugin-wiki'),
        'content'     => '<!-- wp:heading {"level":1} --><h1>Wiki</h1><!-- /wp:heading -->
<!-- wp:paragraph --><p>Wiki Article</p><!-- /wp:paragraph -->',
        'post_types'  => array('wiki'),
    )
);

register_block_template(
    'myplugin-wiki//archive-wiki',
    array(
        'title'       => __('Wiki Archive', 'myplugin-wiki'),
        'description' => __('Archive template for wiki entries.', 'myplugin-wiki'),
        'content'     => '<!-- wp:heading {"level":1} --><h1>Wiki Archive</h1><!-- /wp:heading -->
<!-- wp:paragraph --><p>Wiki Archiv</p><!-- /wp:paragraph -->',
        'post_types'  => array('wiki'),
    )
);

register_block_template('myplugin-wiki//taxonomy-wiki_category', array(
	'title'       => esc_html__('Wiki Category Archive', 'myplugin-wiki'),
	'description' => esc_html__('Block template for wiki category archive.', 'myplugin-wiki'),
	'content'     => '<!-- wp:heading {"level":1} --><h1>Wiki Category</h1><!-- /wp:heading -->
<!-- wp:paragraph --><p>Wiki Category</p><!-- /wp:paragraph -->',
	));
}

‚content‘ kann auch mit dem kompletten Inhalt z.B. einer single.hmtl aus dem Theme befüllt werden.

Bitte das Kommentarfeld nicht für Supportanfragen nutzen; hier kann kein Support angeboten werden. Die Angabe von Name oder E-Mail-Adresse ist optional, ein Spitzname wäre trotzdem nett.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Name und E-Mail-Adresse (beides optional, da alle Kommentare moderiert werden) werden dauerhaft gespeichert. Über dieses Formular kann jeder Zeit die Löschung persönlicher Daten oder Kommentare angefordert werden; die Anfrage wird nicht veröffentlicht und nach der Bearbeitung gelöscht. IP-Adressen, die mit Kommentaren gespeichert werden, werden nach zwei Monaten automatisch gelöscht.

Ihre Nachricht wird möglicherweise zur Spam-Prüfung an OpenAI (USA) weitergeleitet. Weitere Informationen finden Sie in unserer Datenschutzerklärung.