Block Templates


Noch ist das Feature nicht in Gutenberg integriert, seit heute gibt es aber ein Proposal Ticket auf GitHub, das die Funktionen von Block Templates beschreibt und einige Beispiele aufzeigt.

Definition

Ein Block Template ist einfach gesagt eine Liste von Blöcken. Die Blöcke können vordefinierte Attribute und Platzhalter enthalten, sie können statisch oder dynamisch sein.

Nutzung

Block Templates sollten nicht mit globalen oder verschachtelten Blöcken verwechselt werden. Die Liste der Blöcke können aber globale Blöcke und auch verschachtelte Blöcke beinhalten. Hierbei geht es nicht darum ein Konfigurierte Gruppe von Blöcken auf verschiedenen Seiten wiederzuverwenden, dafür sind globale Blöcke, mit ineinander geschachtelten Blöcken die bessere Lösung.

Bei Block Template  geht es darum eine Vorlage zu liefern, die vom Nutzer an verschiedenen Stellen ausgefüllt werden kann.

Hier ein Beispiel wie Templates in Custom Post Types bereitgestellt werden können:

function register_book_type() {
	$args = array(
		'public' => true,
		'label'  => 'Books',
		'show_in_rest' => true,
		'template' => array(
			array( 'core/image' ),
			array( 'core/heading', array(
				'placeholder' => 'Author...',
			) ),
			array( 'core/paragraph', array(
				'placeholder' => 'Add book description...',
			) ),
		),
	);
	register_post_type( 'book', $args );
}
add_action( 'init', 'register_book_type' );

Details

Template können:

  • In JS (state tree) und PHP definiert werden
  • Blöcke mit Unterblöcken enthalten
  • Gesperrt sein (Es ist nicht möglich die Blöcke zu bewegen oder zu löschen)
  • Als Standard für einen Post Type gesetzt werden
  • Vom Benutzer gespeichert und bearbeitet werden
  • Als Inhalt eines page-template.php genutzt werden um den Editor von einem Theme aus zu initialisieren

Schreibe einen Kommentar

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