{"id":55308,"date":"2023-09-04T16:21:38","date_gmt":"2023-09-04T14:21:38","guid":{"rendered":"https:\/\/kinsta.com\/nl\/?p=55308&#038;preview=true&#038;preview_id=55308"},"modified":"2023-09-12T09:34:13","modified_gmt":"2023-09-12T07:34:13","slug":"wordpress-blok-templates","status":"publish","type":"post","link":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/","title":{"rendered":"Zo maak je  WordPress bloktemplates"},"content":{"rendered":"<p>In het <a href=\"https:\/\/kinsta.com\/nl\/blog\/gutenberg-wordpress-editor\/\">Gutenberg<\/a> tijdperk is het ontwerpproces niet strikt gebonden aan <a href=\"https:\/\/kinsta.com\/nl\/blog\/snelste-wordpress-thema\/\">WordPress thema&#8217;s<\/a>. Out of the box voorziet het CMS gebruikers van alle ontwerptools die nodig zijn om een geweldige websitelayout te bouwen waarbij thema&#8217;s als doel hebben om nog meer bouw- en ontwerptools toe te voegen.<\/p>\n<p>Bloktemplates zijn een feature die nog meer krachten vrijmaakt bij het bouwen van sites. Volgens het <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/block-api\/block-templates\/\" target=\"_blank\" rel=\"noopener noreferrer\">Block Editor Handbook<\/a>:<\/p>\n<blockquote><p><em>Een bloktemplate wordt gedefinieerd als een lijst met blokitems. Zulke blokken kunnen vooraf gedefinieerde attributen hebben, placeholder content en statisch of dynamisch zijn. Met bloktemplates kun je een standaard beginstate opgeven voor een redactiesessie.<\/em><\/p><\/blockquote>\n<p>Met andere woorden, bloktemplates zijn vooraf samengestelde verzamelingen blokken die worden gebruikt om dynamisch een standaardtoestand in te stellen op de client.<\/p>\n<p><strong>\ud83d\udc49 Bloktemplates verschillen van templatebestanden.<\/strong><\/p>\n<p>Templatebestanden zijn PHP bestanden zoals <strong>index.php<\/strong>, <strong>page.php<\/strong> en <strong>single.php<\/strong>, en werken op dezelfde manier met zowel klassieke als blokthema&#8217;s, volgens de <a href=\"https:\/\/kinsta.com\/nl\/blog\/template-hierarchie-van-wordpress\/\">WordPress templatehi\u00ebrarchie<\/a>. Bij klassieke thema&#8217;s zijn deze bestanden geschreven in PHP en HTML. Bij blokkenthema&#8217;s bestaan ze volledig uit blokken.<\/p>\n<p><strong>\ud83d\udc49 Bloktemplates zijn anders dan blokpatronen.<\/strong><\/p>\n<p><a href=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blokpatronen\/\">Blokpatronen<\/a> moeten handmatig worden toegevoegd aan je pagina&#8217;s, terwijl bloktemplates automatisch zorgen voor de initi\u00eble layout en standaardinstellingen wanneer jij of je teamleden een nieuw bericht maken.<\/p>\n<p>Je kunt ook specifieke bloktemplates binden aan je aangepaste berichttypes en bepaalde blokken of features vergrendelen om gebruikers te dwingen je standaardwaarden te gebruiken of om fouten te voorkomen.<\/p>\n<p>Je hebt een paar manieren om bloktemplates te maken. Je kunt <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/block-api\/block-templates\/\" target=\"_blank\" rel=\"noopener noreferrer\">de blok API gebruiken<\/a> om een array van bloktypes te declaren via PHP, of je kunt een aangepast bloktype maken met behulp van de component <code>InnerBlocks<\/code>.<\/p>\n<p>Tijd om alles uitgebreid te bespreken!<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>Een bloktemplate maken met PHP<\/h2>\n<p>Als je een ouderwetse developer bent, kun je een aangepast bloktemplate defini\u00ebren met behulp van een plugin of de <a href=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-functions-php\/\">functions.php<\/a> van je thema. Als je kiest voor een plugin, start dan je favoriete <a href=\"https:\/\/kinsta.com\/nl\/blog\/php-editor\/\">code editor<\/a>, maak een nieuw PHP bestand aan en voeg de volgende code toe:<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\/*\n * Plugin Name:       My Block Templates\n * Plugin URI:        https:\/\/example.com\/\n * Description:       An example plugin\n * Version:           1.0\n * Requires at least: 5.5\n * Requires PHP:      8.0\n * Author:            Your name\n * Author URI:        https:\/\/author.example.com\/\n * License:           GPL v2 or later\n * License URI:       https:\/\/www.gnu.org\/licenses\/gpl-2.0.html\n * Update URI:        https:\/\/example.com\/my-plugin\/\n *\/\n\nfunction myplugin_register_my_block_template() {\n\t$post_type_object = get_post_type_object( 'post' );\n\t$post_type_object-&gt;template = array(\n\t\tarray( 'core\/image' ),\n\t\tarray( 'core\/heading' ),\n\t\tarray( 'core\/paragraph' )\n\t);\n}\nadd_action( 'init', 'myplugin_register_my_block_template' );<\/code><\/pre>\n<p>In de code hierboven, <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/get_post_type_object\/\" target=\"_blank\" rel=\"noopener noreferrer\"><code>get_post_type_object<\/code><\/a> wordt een berichttype op naam opgehaald.<\/p>\n<p>Sla je bestand op in de map <strong>wp-content\/plugins<\/strong>, navigeer naar het Plugins scherm in je <a href=\"https:\/\/kinsta.com\/blog\/wordpress-admin\/\">WordPress dashboard<\/a> en activeer de <strong>My Block Templates<\/strong> plugin.<\/p>\n<p>Als je nu een nieuw bericht maakt, start de editor automatisch je bloktemplate met een Image blok, een heading en een alinea.<\/p>\n<figure id=\"attachment_161425\" aria-describedby=\"caption-attachment-161425\" style=\"width: 1984px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161425 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/block-template.jpg\" alt=\"Een bloktemplate dat automatisch wordt geladen in de bericht-editor\" width=\"1984\" height=\"1220\"><figcaption id=\"caption-attachment-161425\" class=\"wp-caption-text\">Een bloktemplate dat automatisch wordt geladen in de Post Editor<\/figcaption><\/figure>\n<p>Je kunt daarnaast een array met instellingen voor elk blok toevoegen en geneste structuren van blokken maken. De volgende feature bouwt een geavanceerder bloktemplate met binnenliggende blokken en instellingen:<\/p>\n<pre><code class=\"language-php\">function myplugin_register_my_block_template() {\n\n\t$block_template = array(\n\t\tarray( 'core\/image' ),\n\t\tarray( 'core\/heading', array(\n\t\t\t'placeholder'\t=&gt; 'Add H2...',\n\t\t\t'level'\t\t\t=&gt; 2\n\t\t) ),\n\t\tarray( 'core\/paragraph', array(\n\t\t\t'placeholder'\t=&gt; 'Add paragraph...'\n\t\t\t\n\t\t) ),\n\t\tarray( 'core\/columns', \n\t\t\tarray(), \n\t\t\tarray( \n\t\t\t\tarray( 'core\/column',\n\t\t\t\t\tarray(),\n\t\t\t\t\tarray(\n\t\t\t\t\t\tarray( 'core\/image' )\n\t\t\t\t\t)\n\t\t\t\t), \n\t\t\t\tarray( 'core\/column',\n\t\t\t\t\tarray(),\n\t\t\t\t\tarray(\n\t\t\t\t\t\tarray( 'core\/heading', array(\n\t\t\t\t\t\t\t'placeholder'\t=&gt; 'Add H3...',\n\t\t\t\t\t\t\t'level'\t\t\t=&gt; 3\n\t\t\t\t\t\t) ),\n\t\t\t\t\t\tarray( 'core\/paragraph', array(\n\t\t\t\t\t\t\t'placeholder'\t=&gt; 'Add paragraph...'\n\t\t\t\t\t\t) )\n\t\t\t\t\t) \n\t\t\t\t)\n\t\t\t) \n\t\t)\n\t);\n\t$post_type_object = get_post_type_object( 'post' );\n\t$post_type_object-&gt;template = $block_template;\n}\nadd_action( 'init', 'myplugin_register_my_block_template' );<\/code><\/pre>\n<p>Je kunt de uitvoer van bovenstaande code zien in de volgende afbeelding:<\/p>\n<figure id=\"attachment_161426\" aria-describedby=\"caption-attachment-161426\" style=\"width: 2124px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161426 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/block-template-2.jpg\" alt=\"Een geavanceerder bloktemplate\" width=\"2124\" height=\"1432\"><figcaption id=\"caption-attachment-161426\" class=\"wp-caption-text\">Een geavanceerder bloktemplate<\/figcaption><\/figure>\n<p>Tot nu toe hebben we alleen coreblokken gebruikt. Maar je kunt ook <a href=\"https:\/\/kinsta.com\/nl\/blog\/gutenberg-blokken\/\">aangepaste blokken<\/a> of <a href=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blokpatronen\/\">blokpatronen<\/a> opnemen in je bloktemplates, zoals in het volgende voorbeeld:<\/p>\n<pre><code class=\"language-php\">function myplugin_register_my_block_template() {\n\t$post_type_object = get_post_type_object( 'page' );\n\t$post_type_object-&gt;template = array(\n\t\tarray( 'core\/pattern', array(\n\t\t\t'slug' =&gt; 'my-plugin\/my-block-pattern'\n\t\t) ) \n\t);\n}\nadd_action( 'init', 'myplugin_register_my_block_template' );<\/code><\/pre>\n<p>Er is niet veel verschil in het geval dat je besluit om een standaard bloktemplate te maken voor een al geregistreerd aangepast posttype. Verander gewoon het posttype van <code>get_post_type_object<\/code> in de naam van je aangepaste posttype, zoals in het volgende voorbeeld:<\/p>\n<pre><code class=\"language-php\">&lt;?php\nfunction myplugin_register_my_block_template() {\n\t$post_type_object = get_post_type_object( 'book' );\n\t$post_type_object-&gt;template = array(\n\t\tarray( 'core\/image' ),\n\t\tarray( 'core\/heading' ),\n\t\tarray( 'core\/paragraph' )\n\t);\n}\nadd_action( 'init', 'myplugin_register_my_block_template' );<\/code><\/pre>\n<p>Nu je weet hoe je bloktemplates maakt, kunnen we verder gaan en meer use cases verkennen. Laten we eens wat dieper duiken.<\/p>\n<div><\/div><kinsta-auto-toc list-style=\"decimal\" selector=\"h3\" count-number=\"5\" sub-toc=\"true\"><\/kinsta-auto-toc>\n<h3>Bloktemplates met aangepaste berichttypen<\/h3>\n<p>Zoals we al eerder zeiden, kun je een bloktemplate koppelen aan een aangepast berichttype. Je kunt dat doen nadat je aangepaste berichttype al is geregistreerd, maar je kunt er de voorkeur aan geven om een bloktemplate te defini\u00ebren bij <a href=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-custom-post-types\/\">de registratie van het aangepaste berichttype<\/a>.<\/p>\n<p>In dat geval kun je de argumenten <code>template<\/code> en <code>template_lock<\/code> van de <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/register_post_type\/\" target=\"_blank\" rel=\"noopener noreferrer\"><code>register_post_type<\/code><\/a> functie gebruiken:<\/p>\n<pre><code class=\"language-php\">function myplugin_register_book_post_type() {\n\t$args = array(\n\t\t'label' =&gt; esc_html__( 'Books' ),\n\t\t'labels' =&gt; array(\n\t\t\t'name' =&gt; esc_html__( 'Books' ),\n\t\t\t'singular_name' =&gt; esc_html__( 'Book' ),\n\t\t),\n\t\t'public' =&gt; true,\n\t\t'publicly_queryable' =&gt; true,\n\t\t'show_ui' =&gt; true,\n\t\t'show_in_rest' =&gt; true,\n\t\t'rest_namespace' =&gt; 'wp\/v2',\n\t\t'has_archive' =&gt; true,\n\t\t'show_in_menu' =&gt; true,\n\t\t'show_in_nav_menus' =&gt; true,\n\t\t'supports' =&gt; array( 'title', 'editor', 'thumbnail' ),\n\t\t'template' =&gt; array(\n\t\t\tarray( 'core\/paragraph', array(\n\t\t\t\t'placeholder'\t=&gt; 'Add paragraph...'\n\t\t\t) ),\n\t\t\tarray( 'core\/columns', \n\t\t\t\tarray(), \n\t\t\t\tarray( \n\t\t\t\t\tarray( 'core\/column',\n\t\t\t\t\t\tarray(),\n\t\t\t\t\t\tarray(\n\t\t\t\t\t\t\tarray( 'core\/image' )\n\t\t\t\t\t\t)\n\t\t\t\t\t), \n\t\t\t\t\tarray( 'core\/column',\n\t\t\t\t\t\tarray(),\n\t\t\t\t\t\tarray(\n\t\t\t\t\t\t\tarray( 'core\/heading', array(\n\t\t\t\t\t\t\t\t'placeholder'\t=&gt; 'Add H3...',\n\t\t\t\t\t\t\t\t'level'\t\t\t=&gt; 3\n\t\t\t\t\t\t\t) ),\n\t\t\t\t\t\t\tarray( 'core\/paragraph', array(\n\t\t\t\t\t\t\t\t'placeholder'\t=&gt; 'Add paragraph...'\n\t\t\t\t\t\t\t) )\n\t\t\t\t\t\t) \n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t)\n\t\t)\n\t);\n\tregister_post_type( 'book', $args );\n}\nadd_action( 'init', 'myplugin_register_book_post_type' );<\/code><\/pre>\n<p>En dat was het. De afbeelding hieronder toont het bloktemplate in de interface van de editor voor een aangepast berichttype voor boeken.<\/p>\n<figure id=\"attachment_161428\" aria-describedby=\"caption-attachment-161428\" style=\"width: 2124px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161428 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/cpt-block-template.jpg\" alt=\"Een bloktemplate voor een aangepast berichttype\" width=\"2124\" height=\"1038\"><figcaption id=\"caption-attachment-161428\" class=\"wp-caption-text\">Een bloktemplate voor een aangepast berichttype<\/figcaption><\/figure>\n<p>Als je klaar bent met de layout, wil je misschien spelen met de blokinstellingen om het gedrag en het uiterlijk van je bloktemplate te finetunen.<\/p>\n<h3>Het bloktemplate finetunen met blokattributen<\/h3>\n<p>We hebben een bloktemplate gedefinieerd als een lijst van blokken. Elk item in de lijst moet een array zijn die de naam van het blok en een array van optionele attributen bevat. Met geneste matrices wil je misschien een derde matrix toevoegen voor child blokken.<\/p>\n<p>Een template met een blok Columns kan als volgt worden weergegeven:<\/p>\n<pre><code class=\"language-php\">$template = array( 'core\/columns', \n\t\/\/ attributes\n\tarray(), \n\t\/\/ nested blocks\n\tarray(\n\t\tarray( 'core\/column' ),\n\t\tarray( 'core\/column' ) \n\t) \n);<\/code><\/pre>\n<p>Zoals hierboven vermeld, is de tweede matrix in de lijst een optionele matrix van blokattributen. Met deze attributen kun je het uiterlijk van je template aanpassen, zodat jij of je gebruikers zich kunnen concentreren op de inhoud van het bericht zonder zich zorgen te maken over de layout en het ontwerp van de pagina.<\/p>\n<p>Om te beginnen kun je de Block Editor gebruiken om een structuur van blokken te maken die je kunt gebruiken als referentie voor je template.<\/p>\n<figure id=\"attachment_161769\" aria-describedby=\"caption-attachment-161769\" style=\"width: 2118px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161769 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/a-block-layout.jpg\" alt=\"Een blokindeling in de Block Editor\" width=\"2118\" height=\"1066\"><figcaption id=\"caption-attachment-161769\" class=\"wp-caption-text\">Een blokindeling in de Block Editor<\/figcaption><\/figure>\n<p>Voeg je blokken toe, pas de layout en stijlen aan, schakel dan over naar de Code Editor en zoek blok delimiters.<\/p>\n<figure id=\"attachment_161770\" aria-describedby=\"caption-attachment-161770\" style=\"width: 2042px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-161770\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/block-delimiter.jpg\" alt=\"The block delimiter of a Columns block\" width=\"2042\" height=\"248\"><figcaption id=\"caption-attachment-161770\" class=\"wp-caption-text\">De blok delimiter van een Columns blok<\/figcaption><\/figure>\n<p>Blok delimiters slaan blokinstellingen en stijlen op in sleutel\/waardeparen. Je kunt eenvoudigweg sleutels en waarden uit de blok markup kopi\u00ebren en plakken om je reeks attributen te vullen:<\/p>\n<pre><code class=\"language-php\">$template = array( 'core\/columns', \n\tarray(\n\t\t'verticalAlignment'\t=&gt; 'center',\n\t\t'align'\t\t\t\t=&gt; 'wide',\n\t\t'style'\t\t\t\t=&gt; array( \n\t\t\t'border'\t=&gt; array(\n\t\t\t\t'width'\t=&gt; '2px',\n\t\t\t\t'radius'\t=&gt; array(\n\t\t\t\t\t'topLeft'\t\t=&gt; '12px', \n\t\t\t\t\t'topRight'\t\t=&gt; '12px', \n\t\t\t\t\t'bottomLeft'\t=&gt; '12px', \n\t\t\t\t\t'bottomRight'\t=&gt; '12px'\n\t\t\t\t)\n\t\t\t)\n\t\t),\n\t\t'backgroundColor' =&gt; 'tertiary'\n\t),\n\tarray(\n\t\tarray( 'core\/column' ),\n\t\tarray( 'core\/column' ) \n\t) \n);<\/code><\/pre>\n<p>Herhaal dit proces voor elk blok in de template en je bent klaar.<\/p>\n<pre><code class=\"language-php\">$template = array(\n\tarray( 'core\/paragraph', array(\n\t\t'placeholder'\t=&gt; 'Add paragraph...'\n\t) ),\n\tarray( 'core\/columns', \n\t\tarray(\n\t\t\t'verticalAlignment'\t=&gt; 'center',\n\t\t\t'align'\t\t\t\t=&gt; 'wide',\n\t\t\t'style'\t\t\t\t=&gt; array( \n\t\t\t\t'border'\t=&gt; array(\n\t\t\t\t\t'width'\t\t=&gt; '2px',\n\t\t\t\t\t'radius'\t=&gt; array(\n\t\t\t\t\t\t'topLeft'\t\t=&gt; '12px', \n\t\t\t\t\t\t'topRight'\t\t=&gt; '12px', \n\t\t\t\t\t\t'bottomLeft'\t=&gt; '12px', \n\t\t\t\t\t\t'bottomRight'\t=&gt; '12px'\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t),\n\t\t\t'backgroundColor' =&gt; 'tertiary',\n\t\t\t'lock' =&gt; array(\n\t\t\t\t'remove'\t=&gt; true,\n\t\t\t\t'move'\t\t=&gt; true\n\t\t\t)\n\t\t), \n\t\tarray( \n\t\t\tarray( 'core\/column',\n\t\t\t\tarray( 'verticalAlignment'\t=&gt; 'center' ),\n\t\t\t\tarray(\n\t\t\t\t\tarray( 'core\/image', \n\t\t\t\t\t\tarray(\n\t\t\t\t\t\t\t'style'\t=&gt; array( 'border' =&gt; array( 'radius' =&gt; '8px' ) ) \n\t\t\t\t\t\t) \n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t), \n\t\t\tarray( 'core\/column',\n\t\t\t\tarray( 'verticalAlignment'\t=&gt; 'center' ),\n\t\t\t\tarray(\n\t\t\t\t\tarray( 'core\/heading', array(\n\t\t\t\t\t\t'placeholder'\t=&gt; 'Add H3...',\n\t\t\t\t\t\t'level'\t\t\t=&gt; 3\n\t\t\t\t\t) ),\n\t\t\t\t\tarray( 'core\/paragraph', array(\n\t\t\t\t\t\t'placeholder'\t=&gt; 'Add paragraph...'\n\t\t\t\t\t) )\n\t\t\t\t) \n\t\t\t)\n\t\t)\n\t)\n);<\/code><\/pre>\n<h3>Blokken vergrendelen<\/h3>\n<p>Je kunt specifieke blokken of alle blokken in je template vergrendelen met de propery <code>template_lock<\/code> van de <code>$post_type_object<\/code>.<\/p>\n<p>Het vergrendelen van templates kan heel handig zijn als je een blog hebt met meerdere auteurs en wilt voorkomen dat alle of specifieke gebruikers de layout van je blokkentemplate wijzigen.<\/p>\n<p>In het volgende voorbeeld vergrendelen we alle blokken in het blokkentemplate:<\/p>\n<pre><code class=\"language-php\">function myplugin_register_my_block_template() {\n\t$post_type_object = get_post_type_object( 'post' );\n\t$post_type_object-&gt;template = array(\n\t\tarray( 'core\/image' ),\n\t\tarray( 'core\/heading' ),\n\t\tarray( 'core\/paragraph' )\n\t);\n\t$post_type_object-&gt;template_lock = 'all';\n}\nadd_action( 'init', 'myplugin_register_my_block_template' );<\/code><\/pre>\n<p>Vergrendelde blokken tonen een sloticoon in de werkbalk en lijstweergave van de blokken:<\/p>\n<figure id=\"attachment_161430\" aria-describedby=\"caption-attachment-161430\" style=\"width: 1798px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161430 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/locked-block.jpg\" alt=\"Een vergrendeld Heading blok\" width=\"1798\" height=\"1050\"><figcaption id=\"caption-attachment-161430\" class=\"wp-caption-text\">Een vergrendeld Heading blok<\/figcaption><\/figure>\n<p>Gebruikers kunnen blokken ontgrendelen via het menu Options in de toolbar voor blokken.<\/p>\n<figure id=\"attachment_161431\" aria-describedby=\"caption-attachment-161431\" style=\"width: 1368px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161431 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/unlock-block.jpg\" alt=\"Een blok ontgrendelen\" width=\"1368\" height=\"1120\"><figcaption id=\"caption-attachment-161431\" class=\"wp-caption-text\">Een blok ontgrendelen<\/figcaption><\/figure>\n<p>Als je op <b>Unlock <\/b>klikt, krijg je een modale popup waarmee je de beweging kunt in-\/uitschakelen, verwijderen kunt voorkomen of beide:<\/p>\n<figure id=\"attachment_161433\" aria-describedby=\"caption-attachment-161433\" style=\"width: 1368px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161433 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/unlock-block-2.jpg\" alt=\"Opties voor vergrendelen\" width=\"1368\" height=\"1120\"><figcaption id=\"caption-attachment-161433\" class=\"wp-caption-text\">Opties voor vergrendelen<\/figcaption><\/figure>\n<p><code>template_lock<\/code> kan een van de <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/block-api\/block-templates\/#locking\" target=\"_blank\" rel=\"noopener noreferrer\">volgende waarden<\/a> aannemen:<\/p>\n<ul>\n<li><code>all<\/code> &#8211; Voorkomt dat gebruikers nieuwe blokken toevoegen, bestaande blokken verplaatsen en verwijderen<\/li>\n<li><code>insert<\/code> &#8211; Voorkomt dat gebruikers nieuwe blokken toevoegen en bestaande blokken verwijderen<\/li>\n<li><code>contentOnly<\/code> &#8211; Gebruikers kunnen alleen de inhoud van de blokken in het template bewerken. Merk op dat <code>contentOnly<\/code> alleen gebruikt kan worden op pattern- of templateniveau en beheerd moet worden met code. (Zie ook <a href=\"https:\/\/developer.wordpress.org\/block-editor\/how-to-guides\/curating-the-editor-experience\/#locking-apis\" target=\"_blank\" rel=\"noopener noreferrer\">API&#8217;s vergrendelen<\/a>).<\/li>\n<\/ul>\n<figure id=\"attachment_161435\" aria-describedby=\"caption-attachment-161435\" style=\"width: 2370px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161435 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/prevent-removal.jpg\" alt=\"Template_lock instellen om te voorkomen dat templateblokken worden verwijderd\" width=\"2370\" height=\"1410\"><figcaption id=\"caption-attachment-161435\" class=\"wp-caption-text\">Template_lock instellen om te voorkomen dat templateblokken worden verwijderd<\/figcaption><\/figure>\n<p>Als je specifieke blokken wilt vergrendelen, kun je het <code>lock<\/code> attribuut op elk blok gebruiken:<\/p>\n<pre><code class=\"language-php\">function myplugin_register_my_block_template() {\n\t$post_type_object = get_post_type_object( 'post' );\n\t$post_type_object-&gt;template = array(\n\t\tarray( 'core\/image' ),\n\t\tarray( 'core\/heading' ),\n\t\tarray( 'core\/paragraph', array(\n\t\t\t'lock' =&gt; array(\n\t\t\t\t'remove'\t=&gt; true,\n\t\t\t\t'move'\t\t=&gt; true\n\t\t\t)\n\t\t) )\n\t);\n}\nadd_action( 'init', 'myplugin_register_my_block_template' );<\/code><\/pre>\n<p>Het <code>lock<\/code> attribuut kan een van de <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/block-api\/block-templates\/#individual-block-locking\" target=\"_blank\" rel=\"noopener noreferrer\">volgende waarden<\/a> aannemen:<\/p>\n<ul>\n<li><code>remove<\/code>: Voorkomt dat gebruikers een blok verwijderen.<\/li>\n<li><code>move<\/code>: Voorkomt dat gebruikers een blok verplaatsen.<\/li>\n<\/ul>\n<p>En je kunt <code>lock<\/code> ook gebruiken in combinatie met <code>template_lock<\/code> om het gedrag van de blokken in je bloktemplate te finetunen. In het volgende voorbeeld vergrendelen we alle blokken behalve de heading:<\/p>\n<pre><code class=\"language-php\">function myplugin_register_my_block_template() {\n\t$post_type_object = get_post_type_object( 'post' );\n\t$post_type_object-&gt;template = array(\n\t\tarray( 'core\/image' ),\n\t\tarray( 'core\/heading', array(\n\t\t\t'lock' =&gt; array(\n\t\t\t\t'remove'\t=&gt; false,\n\t\t\t\t'move'\t\t=&gt; false\n\t\t\t) \n\t\t) ),\n\t\tarray( 'core\/paragraph' )\n\t);\n\t$post_type_object-&gt;template_lock = 'all';\n}\nadd_action( 'init', 'myplugin_register_my_block_template' );<\/code><\/pre>\n<p>De afbeelding hieronder toont het bloktemplate met vergrendelde en ontgrendelde blokken:<\/p>\n<figure id=\"attachment_161437\" aria-describedby=\"caption-attachment-161437\" style=\"width: 1800px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161437 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/unlocked-heading.jpg\" alt=\"Een bloktemplate met vergrendelde en ontgrendelde blokken\" width=\"1800\" height=\"1080\"><figcaption id=\"caption-attachment-161437\" class=\"wp-caption-text\">Een bloktemplate met vergrendelde en ontgrendelde blokken<\/figcaption><\/figure>\n<p>Blokontwikkelaars kunnen ook het <code>lock<\/code> attribuut gebruiken in de blokdefinitie op het <code>attributes<\/code> niveau (zie ook <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/block-api\/block-templates\/#individual-block-locking\" target=\"_blank\" rel=\"noopener noreferrer\">Individuele blokvergrendeling<\/a>).<\/p>\n<h3>Voorkomen dat gebruikers blokken ontgrendelen<\/h3>\n<p>Als je de tot nu toe besproken code in het artikel hebt getest, heb je je wellicht gerealiseerd dat je de blokken in je template (of elk ander blok) kunt ontgrendelen vanuit de interface van de editor. Standaard kunnen alle gebruikers met bewerkingstoegang blokken vergrendelen of ontgrendelen en zo de instellingen van je template omzeilen.<\/p>\n<p>Je kunt bepalen of blokken vergrendeld of ontgrendeld kunnen worden met het <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/filters\/editor-filters\/#block_editor_settings_all\" target=\"_blank\" rel=\"noopener noreferrer\"><code>block_editor_settings_all<\/code><\/a> filter.<\/p>\n<blockquote><p><em>Het filter stuurt elke instelling naar de ge\u00efnitialiseerde editor, wat betekent dat elke editor-instelling die wordt gebruikt om de editor te configureren bij het initialiseren kan worden gefilterd door een PHP WordPress plugin voordat deze wordt verzonden.<\/em><\/p><\/blockquote>\n<p>De callback functie die je zult gebruiken met dit filter bevat twee parameters:<\/p>\n<ul>\n<li><code>$settings<\/code>: Een array met editorinstellingen.<\/li>\n<li><code>$context<\/code>: Een instance van de klasse <a href=\"https:\/\/developer.wordpress.org\/reference\/classes\/wp_block_editor_context\/\" target=\"_blank\" rel=\"noopener noreferrer\"><code>WP_Block_Editor_Context<\/code><\/a>Een object dat informatie bevat over een blokeditor die wordt weergegeven.<\/li>\n<\/ul>\n<p>Wat je moet doen is <code>$settings['canLockBlocks']<\/code> filteren door het in te stellen op <code>true<\/code> of <code>false<\/code> zoals in het volgende voorbeeld:<\/p>\n<pre><code class=\"language-php\">add_filter( 'block_editor_settings_all', \n\tfunction( $settings, $context ) {\n\t\tif ( $context-&gt;post && 'book' === $context-&gt;post-&gt;post_type ) {\n\t\t\t$settings['canLockBlocks'] = false;\n\t\t}\n\t\treturn $settings;\n\t}, 10, 2\n);<\/code><\/pre>\n<p>Je kunt specifieke gebruikersrollen uitsluiten van het vergrendelen\/ontgrendelen van blokken door een voorwaardelijke controle uit te voeren op de huidige <a href=\"https:\/\/kinsta.com\/nl\/blog\/gebruikersrollen-wordpress\/\">gebruikersmogelijkheden<\/a>.<\/p>\n<p>In het volgende voorbeeld controleren we of de <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/current_user_can\/\" target=\"_blank\" rel=\"noopener noreferrer\">huidige gebruiker<\/a> berichten van anderen kan bewerken (met andere woorden, of de huidige gebruikersrol Editor of hoger is):<\/p>\n<pre><code class=\"language-php\">add_filter( 'block_editor_settings_all', \n\tfunction( $settings, $context ) {\n\t\tif ( $context-&gt;post && 'book' === $context-&gt;post-&gt;post_type ) {\n\t\t\t$settings['canLockBlocks'] = current_user_can( 'edit_others_posts' );\n\t\t}\n\t\treturn $settings;\n\t}, 10, 2\n);<\/code><\/pre>\n<p>De volgende afbeeldingen vergelijken de beginstatus van de editor voor een Admin en een Author. Allereerst voor de Admin:<\/p>\n<figure id=\"attachment_161440\" aria-describedby=\"caption-attachment-161440\" style=\"width: 2124px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161440 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/initial-state-for-admin.jpg\" alt=\"De beginstatus van de editor voor een Admin gebruiker\" width=\"2124\" height=\"1388\"><figcaption id=\"caption-attachment-161440\" class=\"wp-caption-text\">De beginstatus van de editor voor een Admin gebruiker<\/figcaption><\/figure>\n<p>Voor een Author:<\/p>\n<figure id=\"attachment_161442\" aria-describedby=\"caption-attachment-161442\" style=\"width: 2126px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161442 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/initial-state-for-author.jpg\" alt=\"De beginstatus van de editor voor een Author\" width=\"2126\" height=\"1378\"><figcaption id=\"caption-attachment-161442\" class=\"wp-caption-text\">De beginstatus van de editor voor een Author<\/figcaption><\/figure>\n<p>En je kunt elke voorwaarde controleren voor de huidige gebruiker. In het volgende voorbeeld voorkomen we dat <a href=\"https:\/\/make.wordpress.org\/core\/2022\/05\/05\/block-locking-settings-in-wordpress-6-0\/\" target=\"_blank\" rel=\"noopener noreferrer\">een specifieke gebruiker<\/a> blokken vergrendelt\/ontgrendelt:<\/p>\n<pre><code class=\"language-php\">add_filter( 'block_editor_settings_all', \n\tfunction( $settings, $context ) {\n\t\t$user = wp_get_current_user();\n\t\tif ( in_array( $user-&gt;user_email, [ 'email@example.com' ], true ) ) {\n\t\t\t$settings['canLockBlocks'] = false;\n\t\t}\n\t\treturn $settings;\n\t}, 10, 2\n);<\/code><\/pre>\n<p>Je kunt meer voorwaarden combineren om uitgebreidere controle te krijgen over wie blokken in je template mag vergrendelen\/ontgrendelen en wie niet. Dat is \u00e9\u00e9n aspect van wat <a href=\"https:\/\/make.wordpress.org\/core\/2022\/02\/09\/core-editor-improvement-curated-experiences-with-locking-apis-theme-json\/\" target=\"_blank\" rel=\"noopener noreferrer\">Curated Experience<\/a> wordt genoemd.<\/p>\n<p>Maar wacht. Heb je geprobeerd om de inhoud van je bericht te bewerken met de Code Editor? Het zal je misschien verbazen om te zien dat gebruikers die geen blokken mogen ontgrendelen vanuit de UI, toch de inhoud kunnen wijzigen vanuit de Code Editor.<\/p>\n<h3>De Code Editor uitschakelen voor specifieke gebruikersrollen<\/h3>\n<p>Standaard hebben alle gebruikers die inhoud kunnen bewerken toegang tot de Code Editor. Dit kan je vergrendelingsinstellingen teniet doen en sommige gebruikers kunnen je templatelayout verpesten of verwijderen.<\/p>\n<p>Je kunt ook <code>block_editor_settings_all<\/code> gebruiken om de <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/filters\/editor-filters\/#codeeditingenabled\" target=\"_blank\" rel=\"noopener noreferrer\"><code>codeEditingEnabled<\/code><\/a> instelling te filteren om te voorkomen dat specifieke gebruikersrollen toegang krijgen tot de Code Editor. Hier is de code:<\/p>\n<pre><code class=\"language-php\">add_filter( 'block_editor_settings_all', \n\tfunction( $settings, $context ) {\n\t\tif ( $context-&gt;post && 'book' === $context-&gt;post-&gt;post_type ) {\n\t\t\t$settings['canLockBlocks'] = current_user_can( 'edit_others_posts' );\n\t\t\t$settings['codeEditingEnabled'] = current_user_can( 'edit_others_posts' );\n\t\t}\n\t\treturn $settings;\n\t}, 10, 2\n);<\/code><\/pre>\n<p>Met deze code op zijn plaats krijgen gebruikers die niet over <code>edit_others_posts<\/code> beschikken geen toegang tot de Code Editor. De afbeelding hieronder toont de Options toolbar voor een author.<\/p>\n<figure id=\"attachment_161825\" aria-describedby=\"caption-attachment-161825\" style=\"width: 2128px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161825 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/options-toolbar-without-code-editor-access.jpg\" alt=\"De Options toolbar voor een gebruikersrol zonder toegang tot de Code Editor\" width=\"2128\" height=\"1202\"><figcaption id=\"caption-attachment-161825\" class=\"wp-caption-text\">De Options toolbar voor een gebruikersrol zonder toegang tot de Code Editor<\/figcaption><\/figure>\n<p>Dat is wat je moet weten om bloktemplates te bouwen via PHP. Als je echter een Gutenberg blokontwikkelaar bent en graag met <a href=\"https:\/\/kinsta.com\/javascript\/\">JavaScript<\/a> werkt, kies je misschien liever voor een andere aanpak.<\/p>\n<h2>Een template maken met JavaScript<\/h2>\n<p>Het toevoegen van een bloktemplate aan een bericht werkt anders als je kiest voor JavaScript. Je kunt nog steeds een template maken, maar je moet een aangepast blok maken en het <code>InnerBlocks<\/code> component gebruiken, zoals besproken in onze <a href=\"https:\/\/kinsta.com\/nl\/blog\/gutenberg-blokken\/#innerblocks-component\">ontwikkelingsgids voor Gutenberg blokken<\/a>.<\/p>\n<blockquote><p><em>InnerBlocks exporteert een paar componenten die kunnen worden gebruikt in blokimplementaties om geneste blokinhoud mogelijk te maken.<\/em> &#8211; Bron: <a href=\"https:\/\/github.com\/WordPress\/gutenberg\/blob\/HEAD\/packages\/block-editor\/src\/components\/inner-blocks\/README.md\" target=\"_blank\" rel=\"noopener noreferrer\">InnerBlocks<\/a><\/p><\/blockquote>\n<p>Hoe werkt het?<\/p>\n<p>Je kunt <code>InnerBlocks<\/code> gebruiken in je aangepaste blokken op dezelfde manier als elk ander Gutenberg component.<\/p>\n<p>Je moet het eerst opnemen in een pakket samen met andere afhankelijkheden:<\/p>\n<pre><code class=\"language-javascript\">import { registerBlockType } from '@wordpress\/blocks';\nimport { useBlockProps, InnerBlocks } from '@wordpress\/block-editor';<\/code><\/pre>\n<p>Vervolgens definieer je <code>InnerBlocks<\/code> properties. In het volgende voorbeeld declaren we een constante <code>TEMPLATE<\/code> die we vervolgens gebruiken om de waarde in te stellen voor de property <code>template<\/code> van het element <code>InnerBlocks<\/code>:<\/p>\n<pre><code class=\"language-javascript\">const TEMPLATE = [\n\t[ 'core\/paragraph', { 'placeholder': 'Add paragraph...' } ],\n\t[ 'core\/columns', { verticalAlignment: 'center' }, \n\t\t[\n\t\t\t[ \n\t\t\t\t'core\/column', \n\t\t\t\t{ templateLock: 'all' }, \n\t\t\t\t[\n\t\t\t\t\t[ 'core\/image' ]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[ \n\t\t\t\t'core\/column', \n\t\t\t\t{ templateLock: 'all' }, \n\t\t\t\t[\n\t\t\t\t\t[ \n\t\t\t\t\t\t'core\/heading', \n\t\t\t\t\t\t{'placeholder': 'Add H3...', 'level': 3}\n\t\t\t\t\t], \n\t\t\t\t\t[ \n\t\t\t\t\t\t'core\/paragraph', \n\t\t\t\t\t\t{'placeholder': 'Add paragraph...'} \n\t\t\t\t\t]\n\t\t\t\t], \n\t\t\t]\n\t\t]\n\t]\n];\nregisterBlockType( metadata.name, {\n\ttitle: 'My Template',\n\tcategory: 'widgets',\n\tedit: ( props ) =&gt; {\n\t\treturn(\n\t\t\t&lt;div&gt;\n\t\t\t\t&lt;InnerBlocks\n\t\t\t\t\ttemplate={ TEMPLATE }\n\t\t\t\t\ttemplateLock=\"insert\"\n\t\t\t\t\/&gt;\n\t\t\t&lt;\/div&gt;\n\t\t)\n\t},\n\tsave() {\n\t\tconst blockProps = useBlockProps.save();\n\t\treturn(\n\t\t\t&lt;div { ...blockProps }&gt;\n\t\t\t\t&lt;InnerBlocks.Content \/&gt;\n\t\t\t&lt;\/div&gt;\n\t\t)\n\t}\n} );<\/code><\/pre>\n<p>Deze code is vrij eenvoudig. Je moet opmerken dat we het <code>templateLock<\/code> attribuut twee keer hebben gebruikt, eerst op blokniveau en daarna in het <code>InnerBlocks<\/code> element. Voor de volledige lijst van beschikbare props, zie de <a href=\"https:\/\/github.com\/WordPress\/gutenberg\/blob\/HEAD\/packages\/block-editor\/src\/components\/inner-blocks\/README.md\" target=\"_blank\" rel=\"noopener noreferrer\"><code>InnerBlocks<\/code> referentie<\/a> en het <a href=\"https:\/\/developer.wordpress.org\/block-editor\/how-to-guides\/block-tutorial\/nested-blocks-inner-blocks\/\" target=\"_blank\" rel=\"noopener noreferrer\">Block Editor Handbook<\/a>.<\/p>\n<p>Probeer het nu eens zelf.<\/p>\n<p>Maak eerst een lokale WordPress installatie met <a href=\"https:\/\/kinsta.com\/nl\/devkinsta\/features\/\">DevKinsta<\/a> of een andere <a href=\"https:\/\/kinsta.com\/local-development\/\">lokale ontwikkelomgeving<\/a>.<\/p>\n<p>Start vervolgens je opdrachtprompt, navigeer naar je <strong>plugins<\/strong> map en voer de volgende opdracht uit:<\/p>\n<pre><code class=\"language-bash\">npx @wordpress\/create-block template-block<\/code><\/pre>\n<p>Je kunt de naam van het blok veranderen in wat je maar wilt. Als je er de voorkeur aan geeft om elk aspect van je startblok te controleren, volg dan de instructies in onze <a href=\"https:\/\/kinsta.com\/nl\/blog\/gutenberg-blokken\/#set-up-the-plugin\">ultieme gids voor het ontwikkelen van blokken<\/a>.<\/p>\n<p>Zodra de installatie is voltooid, voer je de volgende commando&#8217;s uit:<\/p>\n<pre><code class=\"language-bash\">cd template-block\nnpm start<\/code><\/pre>\n<p>Start je <a href=\"https:\/\/kinsta.com\/blog\/wordpress-admin\/\">WordPress admin dashboard<\/a> en navigeer naar het <strong>Plugins<\/strong> scherm. Zoek en activeer je <strong>Template Block<\/strong> plugin.<\/p>\n<p>Open in je favoriete <a href=\"https:\/\/kinsta.com\/nl\/blog\/gratis-html-editors\/\">code editor<\/a> het <strong>index.js<\/strong> bestand dat je vindt onder de <strong>src<\/strong> map. Kopieer en plak de bovenstaande code, sla je <strong>index.js<\/strong> op en maak terug in het WordPress dashboard een nieuw bericht of pagina.<\/p>\n<p>Open de Block inserter en scroll naar beneden naar de <strong>Widgets<\/strong> sectie. Daar zou je je aangepaste blok moeten vinden.<\/p>\n<figure id=\"attachment_161826\" aria-describedby=\"caption-attachment-161826\" style=\"width: 2260px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161826 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/my-template-block-1.jpg\" alt=\"Een aangepast blok in de Block Inserter\" width=\"2260\" height=\"1410\"><figcaption id=\"caption-attachment-161826\" class=\"wp-caption-text\">Een aangepast blok in de Block Inserter<\/figcaption><\/figure>\n<p>Voeg het toe aan het bericht, pas de inhoud aan en sla het bericht op.<\/p>\n<figure id=\"attachment_161827\" aria-describedby=\"caption-attachment-161827\" style=\"width: 2258px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-161827 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2023\/08\/template-in-list-view-1.jpg\" alt=\"Lijstweergave van een aangepast template\" width=\"2258\" height=\"936\"><figcaption id=\"caption-attachment-161827\" class=\"wp-caption-text\">Lijstweergave van een aangepast template<\/figcaption><\/figure>\n<p>Als je overschakelt naar de Code Editor, zie je de volgende opmaak:<\/p>\n<pre><code class=\"language-markup\">&lt;!-- wp:create-block\/template-block --&gt;\n&lt;div class=\"wp-block-create-block-template-block\"&gt;&lt;!-- wp:paragraph {\"placeholder\":\"Add paragraph...\"} --&gt;\n&lt;p&gt;&lt;\/p&gt;\n&lt;!-- \/wp:paragraph --&gt;\n\n&lt;!-- wp:columns {\"verticalAlignment\":\"center\"} --&gt;\n&lt;div class=\"wp-block-columns are-vertically-aligned-center\"&gt;&lt;!-- wp:column {\"templateLock\":\"all\"} --&gt;\n&lt;div class=\"wp-block-column\"&gt;&lt;!-- wp:image --&gt;\n&lt;figure class=\"wp-block-image\"&gt;&lt;img alt=\"\"\/&gt;&lt;\/figure&gt;\n&lt;!-- \/wp:image --&gt;&lt;\/div&gt;\n&lt;!-- \/wp:column --&gt;\n\n&lt;!-- wp:column {\"templateLock\":\"all\"} --&gt;\n&lt;div class=\"wp-block-column\"&gt;&lt;!-- wp:heading {\"level\":3,\"placeholder\":\"Add H3...\"} --&gt;\n&lt;h3 class=\"wp-block-heading\"&gt;&lt;\/h3&gt;\n&lt;!-- \/wp:heading --&gt;\n\n&lt;!-- wp:paragraph {\"placeholder\":\"Add paragraph...\"} --&gt;\n&lt;p&gt;&lt;\/p&gt;\n&lt;!-- \/wp:paragraph --&gt;&lt;\/div&gt;\n&lt;!-- \/wp:column --&gt;&lt;\/div&gt;\n&lt;!-- \/wp:columns --&gt;&lt;\/div&gt;\n&lt;!-- \/wp:create-block\/template-block --&gt;<\/code><\/pre>\n<p>Bekijk nu een voorbeeld van het resultaat in je <a href=\"https:\/\/kinsta.com\/browsers\/\">favoriete browser<\/a>. Als het uiterlijk van je blok moet worden verbeterd, kun je gewoon de stijlen in je <strong>style.scss<\/strong> bestand wijzigen.<\/p>\n<p>Als je tevreden bent met je aanpassingen, stop dan het proces en voer <code>npm run build<\/code> uit. Alle bestanden van je project worden gecomprimeerd en zijn beschikbaar voor productie in de nieuwe <strong>build<\/strong> map.<\/p>\n<p>Eenvoudig en krachtig, nietwaar?<\/p>\n<p>Nu kun je geavanceerde templates van blokken maken die je met een paar klikken in je content kunt opnemen.<\/p>\n<h2>Samenvatting<\/h2>\n<p>Het toevoegen van een bloktemplate aan je berichten of aangepaste berichttypen kan de creatie- en bewerkingservaring op je WordPress website aanzienlijk versnellen en verbeteren. Bloktemplates zijn vooral handig op websites met meerdere gebruikers, waar meerdere gebruikers inhoud kunnen maken en je wilt dat ze zich aan dezelfde indeling houden.<\/p>\n<p>Hierdoor kun je ook uniforme layouts maken zonder dat je handmatig een blokpatroon hoeft toe te voegen telkens als je een nieuw bericht maakt. Denk bijvoorbeeld aan een recensie- of receptenwebsite, waar elke pagina dezelfde structuur moet hebben.<\/p>\n<p>Door de kennis die je hebt opgedaan bij het maken van <a href=\"https:\/\/kinsta.com\/nl\/blog\/gutenberg-blokken\/\">statische<\/a> of <a href=\"https:\/\/kinsta.com\/nl\/blog\/dynamische-blokken\/\">dynamische<\/a> aangepaste blokken, <a href=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blokpatronen\/\">blokpatronen<\/a> en bloktemplates te combineren, zul je altijd de meest effici\u00ebnte en effectieve oplossing kunnen vinden voor het bouwen van elk type WordPress website.<\/p>\n<p>Nu is het aan jou. Heb jij bloktemplates al verkend? Voor welke toepassing vind je ze het meest geschikt? Deel je ervaring hieronder in de comments.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In het Gutenberg tijdperk is het ontwerpproces niet strikt gebonden aan WordPress thema&#8217;s. Out of the box voorziet het CMS gebruikers van alle ontwerptools die nodig &#8230;<\/p>\n","protected":false},"author":36,"featured_media":55309,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[476,46,254],"topic":[892],"class_list":["post-55308","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-block-editor","tag-gutenberg","tag-wordpress-developers","topic-wordpress-ontwikkeling"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Zo maak je WordPress bloktemplates - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Leer hoe je WordPress bloktemplates, vooraf gebouwde bloklayouts die automatisch worden geladen in de Block Editor, maakt in deze diepgaande handleiding\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Zo maak je WordPress bloktemplates\" \/>\n<meta property=\"og:description\" content=\"Leer hoe je WordPress bloktemplates, vooraf gebouwde bloklayouts die automatisch worden geladen in de Block Editor, maakt in deze diepgaande handleiding\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Kinsta-Nederland-476213452787823\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-04T14:21:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-09-12T07:34:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Carlo Daniele\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Leer hoe je WordPress bloktemplates, vooraf gebouwde bloklayouts die automatisch worden geladen in de Block Editor, maakt in deze diepgaande handleiding\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@carlodaniele\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_NL\" \/>\n<meta name=\"twitter:label1\" content=\"Geschreven door\" \/>\n\t<meta name=\"twitter:data1\" content=\"Carlo Daniele\" \/>\n\t<meta name=\"twitter:label2\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data2\" content=\"17 minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/\"},\"author\":{\"name\":\"Carlo Daniele\",\"@id\":\"https:\/\/kinsta.com\/nl\/#\/schema\/person\/962dde02ea6f5df089b5d8d0853bbc63\"},\"headline\":\"Zo maak je WordPress bloktemplates\",\"datePublished\":\"2023-09-04T14:21:38+00:00\",\"dateModified\":\"2023-09-12T07:34:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/\"},\"wordCount\":2357,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/nl\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg\",\"keywords\":[\"Block Editor\",\"Gutenberg\",\"WordPress developers\"],\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/\",\"url\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/\",\"name\":\"Zo maak je WordPress bloktemplates - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/nl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg\",\"datePublished\":\"2023-09-04T14:21:38+00:00\",\"dateModified\":\"2023-09-12T07:34:13+00:00\",\"description\":\"Leer hoe je WordPress bloktemplates, vooraf gebouwde bloklayouts die automatisch worden geladen in de Block Editor, maakt in deze diepgaande handleiding\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/nl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"WordPress ontwikkeling\",\"item\":\"https:\/\/kinsta.com\/nl\/onderwerpen\/wordpress-ontwikkeling\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Zo maak je WordPress bloktemplates\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/nl\/#website\",\"url\":\"https:\/\/kinsta.com\/nl\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Snelle, veilige, premium hostingoplossingen\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/nl\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/nl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"nl-NL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/nl\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/nl\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\/\/kinsta.com\/nl\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/nl\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Kinsta-Nederland-476213452787823\/\",\"https:\/\/x.com\/Kinsta_NL\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/nl\/#\/schema\/person\/962dde02ea6f5df089b5d8d0853bbc63\",\"name\":\"Carlo Daniele\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\/\/kinsta.com\/nl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/429e5568f88110fd9a409b84cb22197e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/429e5568f88110fd9a409b84cb22197e?s=96&d=mm&r=g\",\"caption\":\"Carlo Daniele\"},\"description\":\"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.\",\"sameAs\":[\"https:\/\/frammentidicodice.com\/\",\"https:\/\/x.com\/carlodaniele\"],\"url\":\"https:\/\/kinsta.com\/nl\/blog\/author\/carlodaniele\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Zo maak je WordPress bloktemplates - Kinsta\u00ae","description":"Leer hoe je WordPress bloktemplates, vooraf gebouwde bloklayouts die automatisch worden geladen in de Block Editor, maakt in deze diepgaande handleiding","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/","og_locale":"nl_NL","og_type":"article","og_title":"Zo maak je WordPress bloktemplates","og_description":"Leer hoe je WordPress bloktemplates, vooraf gebouwde bloklayouts die automatisch worden geladen in de Block Editor, maakt in deze diepgaande handleiding","og_url":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/Kinsta-Nederland-476213452787823\/","article_published_time":"2023-09-04T14:21:38+00:00","article_modified_time":"2023-09-12T07:34:13+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg","type":"image\/jpeg"}],"author":"Carlo Daniele","twitter_card":"summary_large_image","twitter_description":"Leer hoe je WordPress bloktemplates, vooraf gebouwde bloklayouts die automatisch worden geladen in de Block Editor, maakt in deze diepgaande handleiding","twitter_image":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg","twitter_creator":"@carlodaniele","twitter_site":"@Kinsta_NL","twitter_misc":{"Geschreven door":"Carlo Daniele","Geschatte leestijd":"17 minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/"},"author":{"name":"Carlo Daniele","@id":"https:\/\/kinsta.com\/nl\/#\/schema\/person\/962dde02ea6f5df089b5d8d0853bbc63"},"headline":"Zo maak je WordPress bloktemplates","datePublished":"2023-09-04T14:21:38+00:00","dateModified":"2023-09-12T07:34:13+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/"},"wordCount":2357,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/nl\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg","keywords":["Block Editor","Gutenberg","WordPress developers"],"inLanguage":"nl-NL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/","url":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/","name":"Zo maak je WordPress bloktemplates - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/nl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg","datePublished":"2023-09-04T14:21:38+00:00","dateModified":"2023-09-12T07:34:13+00:00","description":"Leer hoe je WordPress bloktemplates, vooraf gebouwde bloklayouts die automatisch worden geladen in de Block Editor, maakt in deze diepgaande handleiding","breadcrumb":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/"]}]},{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#primaryimage","url":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg","contentUrl":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/09\/wordpress-block-templates.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-blok-templates\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/nl\/"},{"@type":"ListItem","position":2,"name":"WordPress ontwikkeling","item":"https:\/\/kinsta.com\/nl\/onderwerpen\/wordpress-ontwikkeling\/"},{"@type":"ListItem","position":3,"name":"Zo maak je WordPress bloktemplates"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/nl\/#website","url":"https:\/\/kinsta.com\/nl\/","name":"Kinsta\u00ae","description":"Snelle, veilige, premium hostingoplossingen","publisher":{"@id":"https:\/\/kinsta.com\/nl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/nl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"nl-NL"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/nl\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/nl\/","logo":{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/kinsta.com\/nl\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/nl\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Kinsta-Nederland-476213452787823\/","https:\/\/x.com\/Kinsta_NL","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/nl\/#\/schema\/person\/962dde02ea6f5df089b5d8d0853bbc63","name":"Carlo Daniele","image":{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/kinsta.com\/nl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/429e5568f88110fd9a409b84cb22197e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/429e5568f88110fd9a409b84cb22197e?s=96&d=mm&r=g","caption":"Carlo Daniele"},"description":"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.","sameAs":["https:\/\/frammentidicodice.com\/","https:\/\/x.com\/carlodaniele"],"url":"https:\/\/kinsta.com\/nl\/blog\/author\/carlodaniele\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/posts\/55308","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/users\/36"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/comments?post=55308"}],"version-history":[{"count":11,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/posts\/55308\/revisions"}],"predecessor-version":[{"id":55405,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/posts\/55308\/revisions\/55405"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/translations\/pt"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/translations\/es"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/translations\/fr"},{"href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/55308\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/media\/55309"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/media?parent=55308"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/tags?post=55308"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/topic?post=55308"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}