{"id":59202,"date":"2024-05-06T09:17:15","date_gmt":"2024-05-06T07:17:15","guid":{"rendered":"https:\/\/kinsta.com\/nl\/?p=59202&#038;preview=true&#038;preview_id=59202"},"modified":"2024-05-08T09:19:03","modified_gmt":"2024-05-08T07:19:03","slug":"wordpress-web-apps","status":"publish","type":"post","link":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/","title":{"rendered":"Zo bouw je WordPress webapps met een microservices architectuur"},"content":{"rendered":"<p>WordPress is een krachtig <a href=\"https:\/\/kinsta.com\/content-management-systems\/\">Content Management Systeem<\/a> (CMS) dat de basis kan leggen voor verschillende soorten sites en apps. Dit maakt gebruik van een typische &#8216;monolithische architectuur&#8217;, maar naarmate een site groeit, is dit misschien niet de beste oplossing. Dit is waar een &#8216;microservices architectuur&#8217; voordelig kan zijn.<\/p>\n<p>In dit artikel onderzoeken we hoe je WordPress webapps kunt bouwen met behulp van een microservices architectuur. We introduceren ook de Create Block Theme plugin en bespreken hoe deze opwindende oplossing in je ontwikkeling past.<br \/>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc><\/p>\n<h2>Wat microservices zijn<\/h2>\n<p>Voordat je een webapp gaat bouwen, moet je begrijpen wat microservices zijn en hoe ze verschillen van <a href=\"https:\/\/kinsta.com\/nl\/blog\/function-as-a-service\/#how-does-faas-work\">monolithische architecturen<\/a>.<\/p>\n<p>Bij een monolithische architectuur is er een nauwe koppeling tussen alle onderdelen van een applicatie. Het draait in wezen als een enkele service. Het is een eenvoudige manier om een app te ontwikkelen, hoewel onderhoud en schaalbaarheid een uitdaging kunnen worden naarmate de complexiteit toeneemt.<\/p>\n<p>Met microservices daarentegen kun je de app opsplitsen in een verzameling kleinere services. Elke service is onafhankelijk van elkaar wat betreft ontwikkeling, <a href=\"https:\/\/docs.sevalla.com\/applications\/deployments\">deployment<\/a> en schaalbaarheid.<\/p>\n<p>Elke service voert een specifieke taak uit en communiceert met de andere services via een <a href=\"https:\/\/kinsta.com\/nl\/blog\/rest-api-vs-web-api\/\">API (Application Programming Interface)<\/a>. Neem bijvoorbeeld een typische <a href=\"https:\/\/kinsta.com\/ecommerce\/\">e-commerce<\/a> site met een winkelwagen, kassa, orderverwerking, productpagina en meer.<\/p>\n<figure id=\"attachment_178014\" aria-describedby=\"caption-attachment-178014\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178014 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/ecommerce-site.png\" alt=\"De DARTDrones website toont een aankomend drone trainingsprogramma, met een overzicht van wat er in het pakket zit. Er zijn opties om een stad te selecteren en je nu in te schrijven.\" width=\"1000\" height=\"625\"><figcaption id=\"caption-attachment-178014\" class=\"wp-caption-text\">De website van DARTDrones toont een van de e-commerce pagina&#8217;s.<\/figcaption><\/figure>\n<p>In een monolithische architectuur zouden al deze functies deel uitmaken van \u00e9\u00e9n grote applicatie. WordPress is monolithisch en het gebruik van <a href=\"https:\/\/kinsta.com\/nl\/blog\/woocommerce-handleiding\/\">Woo als je e-commerce platform<\/a> is een uitstekend voorbeeld.<\/p>\n<p>Als je echter een microservices architectuur implementeert, kun je voor elke taak de juiste technologie gebruiken. Je zou bijvoorbeeld het beste CMS van WordPress kunnen gebruiken voor je contentmarketing. <a href=\"https:\/\/kinsta.com\/nl\/blog\/magento-versus-woocommerce\/\">Adobe Commerce<\/a> zou je productbeheersysteem kunnen zijn. Een kassa-oplossing zoals <a href=\"https:\/\/bolt.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Bolt<\/a> zou aan je behoeften kunnen voldoen.<\/p>\n<figure id=\"attachment_178008\" aria-describedby=\"caption-attachment-178008\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178008 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/bolt-checkout.png\" alt=\"Een vrouw met een groene broek loopt terwijl ze een grote turquoise boodschappentas vasthoudt, tegen een felgele en witte achtergrond met abstracte geometrische vormen en de tekst \u201cConversie verbeteren, gegarandeerd\u201d.\" width=\"1000\" height=\"625\"><figcaption id=\"caption-attachment-178008\" class=\"wp-caption-text\">De website van Bolt.<\/figcaption><\/figure>\n<p>Deze aan elkaar lijmen is mogelijk met microservices. Laten we het vervolgens hebben over waarom microservices een belangrijke overweging zouden moeten zijn voor je volgende project.<\/p>\n<h3>Wat microservices onderscheidt van monolithische architecturen<\/h3>\n<p>De &#8216;elevator pitch&#8217; voor microservices is hoe je verschillende technologie\u00ebn en tools kunt combineren tot een geheel. Er zijn echter nog andere, diepere kenmerken die het vermelden waard zijn:<\/p>\n<ul>\n<li><strong>Ontkoppeling.<\/strong> Elke service behoudt zijn onafhankelijkheid. Dit betekent dat je voor elke taak de beste technologie kunt gebruiken in plaats van te moeten werken met <a href=\"https:\/\/kinsta.com\/nl\/blog\/php-frameworks\/\">ongeschikte frameworks<\/a>.<\/li>\n<li><strong>Autonomie.<\/strong> In het verlengde daarvan hoeven de services die je integreert niet van elkaar afhankelijk te zijn om goed te presteren.<\/li>\n<li><strong>Specialisatie.<\/strong> Natuurlijk zal elke service zich richten op zijn eigen taak, wat weer invloed heeft op de prestaties.<\/li>\n<li><strong>Veerkracht.<\/strong> Een deel van deze inherente en performante troef is dat \u00e9\u00e9n storing in een service niet je hele site platlegt.<\/li>\n<\/ul>\n<p>Naast deze aspecten zijn er nog meer voordelen bij het gebruik van microservices:<\/p>\n<ul>\n<li><strong>Schaalbaarheid.<\/strong> Je kunt individuele services schalen op basis van individuele behoeften zonder de rest van je app te be\u00efnvloeden.<\/li>\n<li><strong>Flexibiliteit.<\/strong> We hebben al kort aangegeven hoe je services de beste technologie voor hun taak kunnen gebruiken. Dit geldt zelfs voor de <a href=\"https:\/\/kinsta.com\/nl\/blog\/beste-programmeertaal-om-te-leren\/\">programmeertalen<\/a> die je <a href=\"https:\/\/kinsta.com\/blog\/python-microservices\/\">gebruikt om ze te maken<\/a>.<\/li>\n<li><strong>Snellere ontwikkeling.<\/strong> Je kunt sneller kleine en gerichte services ontwikkelen, de functionaliteit van je service beter begrijpen en het systeem eenvoudiger onderhouden.<\/li>\n<li><strong>Verbeterde foutisolatie.<\/strong> Met de &#8216;modulaire&#8217; opzet kun je een service isoleren als deze uitvalt zonder dat dit invloed heeft op je andere services.<\/li>\n<\/ul>\n<p>Aan de andere kant kunnen microservices complexiteit introduceren voor communicatie, gegevensconsistentie en het beheren van gedistribueerde systemen. Daarom moet je de vereisten van je app zorgvuldig afwegen. Kortom, overweeg zowel de voordelen als de afwegingen voordat je besluit om microservices te gebruiken.<\/p>\n<h3>De onderdelen van een microservices architectuur<\/h3>\n<p>Zoals je zou verwachten, kan een microservices architectuur uit verschillende componenten bestaan. Deze &#8216;radertjes&#8217; werken samen in het hele &#8216;wiel&#8217; om een schaalbare en onderhoudbare app te leveren.<\/p>\n<p>Daarom zijn er een aantal componenten die essentieel zijn voor een soepele implementatie:<\/p>\n<ul>\n<li><strong>API gateway:<\/strong> Dit is het ingangspunt voor alle clientverzoeken. Het <a href=\"https:\/\/kinsta.com\/nl\/blog\/microservices-versus-api\/\">stuurt die verzoeken door<\/a> naar de juiste microservices. Het kan ook taken afhandelen zoals snelheidsbeperking en authenticatie.<\/li>\n<li><strong>Service discovery:<\/strong> Je zult een dynamische manier moeten gebruiken om microservices elkaar te laten ontdekken en met elkaar te laten <a href=\"https:\/\/www.nginx.com\/blog\/service-discovery-in-a-microservices-architecture\/\" target=\"_blank\" rel=\"noopener noreferrer\">communiceren<\/a>. Hulpmiddelen zoals <a href=\"https:\/\/www.consul.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Consul<\/a> of Eureka kunnen hierbij helpen.<\/li>\n<li><strong>Containerisatie:<\/strong> Het is gebruikelijk om microservices te containeriseren en in te zetten als containers met tools zoals <a href=\"https:\/\/www.docker.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Docker<\/a>. Zo zorg je voor isolatie voor elke service.<\/li>\n<li><strong>Orkestratie:<\/strong> Naarmate je meer microservices aan je app toevoegt, wordt het beheer ervan complexer. Een tool als <a href=\"https:\/\/kubernetes.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Kubernetes<\/a> kan helpen om dit servicebeheer te automatiseren.<\/li>\n<li><strong>Caching:<\/strong> Cachingmechanismen zoals <a href=\"https:\/\/kinsta.com\/nl\/blog\/redis-docker\/\">Redis<\/a> of <a href=\"https:\/\/kinsta.com\/nl\/blog\/memcached-vs-redis\/\">Memcached<\/a> verbeteren vaak de prestaties. Dit kan cruciaal zijn, gezien de grotere druk op je backendservices en databases.<\/li>\n<li><strong>Messaging:<\/strong> Natuurlijk moeten je services ook met elkaar praten. Dit is de taak van &#8216;asynchrone&#8217; berichtenoplossingen zoals <a href=\"https:\/\/www.rabbitmq.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">RabbitMQ<\/a> of <a href=\"https:\/\/kafka.apache.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Apache Kafka<\/a>. Deze &#8216;message brokers&#8217; maken een losse koppeling tussen je microservices mogelijk.<\/li>\n<\/ul>\n<p>Tools zijn echter maar \u00e9\u00e9n aspect van je opstelling. Er zijn nog andere overwegingen, zoals hoe je elke microservice ontwerpt binnen de volledige architectuur.<\/p>\n<h3>Ontwerppatronen voor microservices<\/h3>\n<p>Je <a href=\"https:\/\/kinsta.com\/nl\/blog\/javascript-design-patterns\/\">design patterns<\/a> voor microservices zijn hier net zo belangrijk als elders in je <a href=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-workflow\/\">ontwikkelworkflow<\/a>. Gezien de potenti\u00eble complexiteit van je app, is het belangrijk om te overwegen welke patterns de grootste impact zullen hebben. Er zijn er drie die we kunnen aanwijzen:<\/p>\n<ul>\n<li><strong>Database-per-service:<\/strong> Elke microservice gebruikt zijn eigen dedicated database, wat helpt bij data-isolatie en autonomie.<\/li>\n<li><strong>API samenstelling:<\/strong> Je kunt microservices samenstellen om services of API&#8217;s op een hoger niveau te maken. Deze flexibiliteit en herbruikbaarheid is een groot voordeel.<\/li>\n<li><strong>Event-driven architectuur:<\/strong> Hier communiceren services via events. Dit bevordert een lossere koppeling en asynchrone verwerking.<\/li>\n<\/ul>\n<p>Het is ook belangrijk om rekening te houden met specifieke ontwerppatronen voor de tools die je gebruikt om je architectuur te bouwen. <a href=\"https:\/\/kinsta.com\/nl\/blog\/kubernetes-vs-docker\/\">Docker en Kubernetes<\/a> hebben bijvoorbeeld allebei typische patterns waarmee je rekening moet houden naast het globale ontwerp van je architectuur.<\/p>\n<p>Begrijp echter dat niet elk onderdeel een microservice hoeft te zijn. Het juiste idee is om te beginnen met de belangrijkste services en de architectuur in de loop van de tijd verder te ontwikkelen. Later zullen we hier dieper op ingaan. Eerst moeten we kijken hoe we de voorkant kunnen ontwikkelen.<\/p>\n<h2>Introductie van de Create Block Theme plugin<\/h2>\n<p>WordPress zal waarschijnlijk ergens in je architectuur voorkomen, omdat het in veel opzichten uitstekend is. E\u00e9n daarvan is het gebruiksgemak aan de frontend. <a href=\"https:\/\/kinsta.com\/nl\/blog\/snelste-wordpress-thema\/\">Thema&#8217;s<\/a> zijn een kernonderdeel van het platform en het maken van je eigen thema&#8217;s is veel eenvoudiger nu er plugins zijn zoals <a href=\"https:\/\/wordpress.org\/plugins\/create-block-theme\/\" target=\"_blank\" rel=\"noopener noreferrer\">Create Block Theme<\/a>.<\/p>\n<figure id=\"attachment_178011\" aria-describedby=\"caption-attachment-178011\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178011 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/create-block-theme.png\" alt=\"De headerafbeelding van het Create Block Theme van WordPress.org bestaat uit een blauwe achtergrond, met tekst met de tekst \u201cCreate Block Theme\u201d gekleurd met een kleurverloop.\" width=\"1000\" height=\"322\"><figcaption id=\"caption-attachment-178011\" class=\"wp-caption-text\">De headerafbeelding van het Create Block Theme van WordPress.org<\/figcaption><\/figure>\n<p>Deze plugin is de spirituele opvolger van het <a href=\"https:\/\/underscores.me\/\" target=\"_blank\" rel=\"noopener noreferrer\">Underscores startersthema<\/a>, maar is volledig compatibel met volledige sitebewerking (FSE). Je kunt snel een startthema maken, de volledige kracht van de editor benutten en gebruikmaken van alle aanpassingsopties. Het werkt als een typische WordPress plugin, met de optie om het later te exporteren als een onafhankelijk thema.<\/p>\n<p>Door de plugin Create Block Theme te gebruiken naast een microservices architectuur kun je alles aan elkaar &#8216;lijmen&#8217;. Je kunt bijvoorbeeld <a href=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-blokpatronen\/\">Block Patterns<\/a> en herbruikbare Blocks gebruiken op verschillende WordPress sites. Dit bevordert hergebruik van code en consistentie, maar het kan ook een uniforme voorkant geven aan alle individuele services die je gebruikt.<\/p>\n<p>We zullen later in dit artikel dieper ingaan op de specifieke aspecten van het gebruik van Block Theme Create. Laten we het nu hebben over headless WordPress en hoe microservices dit kunnen be\u00efnvloeden.<\/p>\n<h2>De kruising tussen headless WordPress en een microservices architectuur<\/h2>\n<p>Als je de front- en backends <a href=\"https:\/\/kinsta.com\/nl\/blog\/headless-wordpress\/\">van WordPress wilt ontkoppelen<\/a>, kunnen microservices een natuurlijke stap voorwaarts zijn. Bij typische headless WordPress is het platform alleen bedoeld voor content management. Het kan zijn dat het als API wordt gebruikt.<\/p>\n<p>Door headless WordPress te combineren met een microservices architectuur kun je:<\/p>\n<ul>\n<li>Gebruik maken van de <a href=\"https:\/\/kinsta.com\/nl\/blog\/rest-api-wordpress\/\">WordPress REST API<\/a>. WordPress biedt een ingebouwde REST API waarmee je inhoud programmatisch kunt ophalen en manipuleren. Je kunt deze API gebruiken om je microservices met WordPress te integreren.<\/li>\n<li>Onafhankelijke schaalbaarheid van je front- en backends krijgen. Met twee onafhankelijke delen van je site kun je beide schalen en betere prestaties bereiken. Ondanks de complexiteit <strong>krijg<\/strong> je flexibiliteit.<\/li>\n<\/ul>\n<p>Vervolgens willen we ons iets meer richten op de REST API. Dit is hoe je microservices zult consumeren, dus het is een essentieel onderdeel van de hele keten.<\/p>\n<h2>Microservices en de WordPress REST API<\/h2>\n<p>De WordPress REST API speelt een cruciale rol bij het mogelijk maken van de integratie tussen je site en microservices. Met zijn <a href=\"https:\/\/kinsta.com\/blog\/api-endpoint\/\">endpoints<\/a> kun je WordPress posts, pagina&#8217;s, gebruikers, <a href=\"https:\/\/kinsta.com\/blog\/what-is-taxonomy\/\">taxonomie\u00ebn<\/a> en meer ophalen en manipuleren met uitvoer in JSON.<\/p>\n<pre><code class=\"language-json\">[ \n  {\n    \"id\": 1,\n    \"date\": \"2020-04-01T10:30:00\",\n    \"date_gmt\": \"2020-04-01T14:30:00\",\n    \"guid\": {\n      \"rendered\": \"https:\/\/example.com\/?p=1\"\n    },\n    \"modified\": \"2020-04-01T10:30:00\",\n    \"modified_gmt\": \"2020-04-01T14:30:00\",\n    \"slug\": \"hello-world\",\n    \"status\": \"publish\",\n    \"type\": \"post\",\n    \"link\": \"https:\/\/example.com\/hello-world\/\",\n    \"title\": {\n      \"rendered\": \"Hello World\"\n    },\n    \u2026<\/code><\/pre>\n<p>Als zodanig is de REST API de hub voor alle andere services in de architectuur. Dit betekent dat je moet kiezen welke huidige site services je eruit wilt halen als microservices. We zullen hier later in deze post dieper op ingaan.<\/p>\n<p>In een notendop komt het erop neer dat je de verschillende functionaliteiten en verantwoordelijkheden binnen je webapp moet identificeren. Van daaruit kun je ze opsplitsen in onafhankelijke, gerichte en inzetbare microservices.<\/p>\n<h2>Een webapp bouwen met Create Block Theme en microservices<\/h2>\n<p>De rest van dit artikel gaat over de basisprincipes van microservices en headless WordPress. Het zal veel in holistische termen behandelen, omdat het eigenlijke proces specifiek zal zijn voor jouw behoeften.<\/p>\n<p>Laten we desondanks eens duiken in het proces van het bouwen van een web app met behulp van microservices en de Create Block Theme plugin. De eerste stap is het opzetten van je ontwikkelomgeving.<\/p>\n<h3>1. Een ontwikkelomgeving opzetten<\/h3>\n<p>Elke app begint met een ruimte om hem te maken. Daarom heb je een ontwikkelomgeving nodig. Er zijn twee locaties voor je ontwikkelomgeving: je lokale computer en je server.<\/p>\n<p>Er zijn veel manieren om een <a href=\"https:\/\/kinsta.com\/nl\/blog\/lokale-wordpress-installatie\/\">lokale ontwikkelomgeving<\/a> op te zetten, hoewel wij (natuurlijk) <a href=\"https:\/\/kinsta.com\/nl\/devkinsta\/\">DevKinsta<\/a> aanbevelen:<\/p>\n<figure id=\"attachment_178013\" aria-describedby=\"caption-attachment-178013\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178013 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/devkinsta-logo.png\" alt=\"Het DevKinsta-logo is een illustratie van handen die typen op een computertoetsenbord met een grote \u201cK\u201d-toets in het midden, tegen een donkerblauwe achtergrond met abstracte geometrische vormen.\" width=\"1000\" height=\"486\"><figcaption id=\"caption-attachment-178013\" class=\"wp-caption-text\">Het DevKinsta logo.<\/figcaption><\/figure>\n<p>We raden ook een <a href=\"https:\/\/kinsta.com\/nl\/blog\/kinsta-testomgevingen\/\">testomgeving<\/a> aan, omdat je veranderingen moet kunnen testen voordat je ze uitrolt. Als je kiest voor DevKinsta en je bent een <a href=\"https:\/\/kinsta.com\/nl\/prijzen\/\">klant van Kinsta<\/a>, dan krijg je meer connectiviteit met je server:<\/p>\n<figure id=\"attachment_178012\" aria-describedby=\"caption-attachment-178012\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178012 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/devkinsta-dashboard.png\" alt=\"De DevKinsta Site Info pagina toont belangrijke details over de lokale site. De site bevat de huidige WordPress versie, heeft als sitenaam \u201cKinsta Help Testing\u201d, gebruikt een NGINX webserver en PHP versie 8.0, en een MariaDB database.\" width=\"1000\" height=\"333\"><figcaption id=\"caption-attachment-178012\" class=\"wp-caption-text\">Het DevKinsta Site Info scherm.<\/figcaption><\/figure>\n<p>DevKinsta <a href=\"https:\/\/kinsta.com\/nl\/blog\/docker-ubuntu-installeren\/\">installeert Docker<\/a> voor je, wat helpt om nog een taak van je lijstje af te vinken. Misschien wil je Kubernetes gebruiken voor orkestratie, dus dit is het moment om het te installeren. Kinsta gebruikt dit voor <a href=\"https:\/\/docs.sevalla.com\/databases\/overview\">Database Hosting en Applicatie Hosting<\/a> en andere taken, en je kunt het downloaden binnen Docker Desktop:<\/p>\n<figure id=\"attachment_178015\" aria-describedby=\"caption-attachment-178015\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178015 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/kubernetes-dashboard.png\" alt=\"De instellingenpagina voor Kubernetes in een Docker dashboard applicatie, met opties om Kubernetes in te schakelen om een single-node cluster te starten bij het starten van Docker Desktop, systeemcontainers te tonen en het Kubernetes cluster te resetten waardoor alle stacks en resources worden verwijderd.\" width=\"1000\" height=\"508\"><figcaption id=\"caption-attachment-178015\" class=\"wp-caption-text\">De Kubernetes instellingen binnen Docker Dashboard.<\/figcaption><\/figure>\n<p>Vanaf hier wil je ook alle andere frameworks instellen die je nodig hebt om je thema te ontwikkelen. Je zult echter niets kunnen doen zonder de Create Block Theme plugin, dus laten we daar nu naar kijken.<\/p>\n<h3>2. De plugin Create Block Theme installeren<\/h3>\n<p>Zodra je je ontwikkelomgeving hebt ingesteld, kun je aan de slag met de Create Block Theme plugin om je eigen blokthema te maken. Je hebt ook het volgende nodig:<\/p>\n<ul>\n<li>Een WordPress website om mee te werken.<\/li>\n<li>Een <a href=\"https:\/\/kinsta.com\/nl\/blog\/php-editor\/\">coderingseditor<\/a> die je graag gebruikt.<\/li>\n<li>De Create Block Theme plugin.<\/li>\n<\/ul>\n<p>Je kunt de plugin op de typische WordPress manier <a href=\"https:\/\/kinsta.com\/nl\/blog\/zo-installeer-je-wordpress-plugins\/\">installeren<\/a>. Van daaruit ga je naar de link <strong>Appearance &gt; Create Block Theme<\/strong> in WordPress:<\/p>\n<figure id=\"attachment_178009\" aria-describedby=\"caption-attachment-178009\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178009 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/cbt-dashboard-link.png\" alt=\"Het WordPress dashboard met de link Appearance &gt; Create Block Theme. Het menu aan de linkerkant biedt navigatieopties voor het beheren van Berichten, Media, Pagina's, Reacties, Uiterlijk, Plugins, Gebruikers, Hulpmiddelen en Instellingen.\" width=\"1000\" height=\"711\"><figcaption id=\"caption-attachment-178009\" class=\"wp-caption-text\">Het WordPress dashboard toont de Create Block Theme link.<\/figcaption><\/figure>\n<p>Als je de <strong>Appearance<\/strong> tab bekijkt, kun je de <strong>Manage Theme Fonts<\/strong> optie zien. Maak een blokthema aan geeft ook toegang tot deze optie, die in wezen de <a href=\"https:\/\/make.wordpress.org\/core\/2024\/03\/14\/new-feature-font-library\/\" target=\"_blank\" rel=\"noopener noreferrer\">WordPress 6.5 Font Library<\/a> feature is.<\/p>\n<p>Op de pagina Create Block Theme zou je een lijst met opties moeten zien om een nieuw thema te genereren. We zullen ze hier niet allemaal doorlopen, maar we kiezen ervoor om <a href=\"https:\/\/kinsta.com\/nl\/blog\/twenty-twenty-four-thema\/\">Twenty Twenty-Four<\/a> te klonen. Dit toont een reeks opties en velden:<\/p>\n<figure id=\"attachment_178010\" aria-describedby=\"caption-attachment-178010\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178010 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/create-blank-theme-options.png\" alt=\"Het WordPress dashboard met de instellingenpagina van Create Block Theme, met opties om het huidige Twenty Twenty-Four thema met gebruikerswijzigingen te exporteren, een child thema te maken, het Twenty Twenty-Four thema te klonen of een leeg thema te maken. De pagina heeft ook velden om de themanaam, beschrijving, auteur, URL van de auteur en screenshot op te geven.\" width=\"1000\" height=\"586\"><figcaption id=\"caption-attachment-178010\" class=\"wp-caption-text\">Het instellingenscherm van Create Block Theme.<\/figcaption><\/figure>\n<p>Als het goed is, worden dit de velden voor de thema-identiteit in je <code>style.css<\/code> bestand. Ze zijn eenvoudig en bestaan uit het kiezen van een naam, schermafbeelding, URL en enkele tags voor de <a href=\"https:\/\/wordpress.org\/themes\" target=\"_blank\" rel=\"noopener noreferrer\">WordPress Themamap<\/a>.<\/p>\n<p>Zodra je klikt om te bevestigen, ga je weer naar het scherm <strong>Appearance &gt; Themes <\/strong>en zie je je nieuwe thema klaarstaan:<\/p>\n<figure id=\"attachment_178016\" aria-describedby=\"caption-attachment-178016\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178016 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/new-theme-activated.png\" alt=\"Het WordPress administratie dashboard toont een overzicht van thema's, met de Twenty Twenty-Four en Twenty Twenty-Three thema's uitgelicht, evenals een preview van het KinstaPress thema dat een minimalistisch blauw ontwerp featuret.\" width=\"1000\" height=\"506\"><figcaption id=\"caption-attachment-178016\" class=\"wp-caption-text\">Het scherm van WordPress Thema&#8217;s.<\/figcaption><\/figure>\n<p>In sommige gevallen download je een ZIP bestand van je thema, dat je moet <a href=\"https:\/\/kinsta.com\/nl\/blog\/een-thema-installeren-wordpress\/\">uploaden naar WordPress<\/a>. Merk op dat je het thema ook kunt exporteren, maar voor ons gebruik zullen we dat nu niet doen.<\/p>\n<h4>Tips voor het instellen en gebruiken van Create Block Theme<\/h4>\n<p>We zullen ook niet te diep ingaan op het aanpassen van je nieuwe Block thema, omdat dat buiten het bestek van dit artikel valt. Hier zijn echter enkele tips voor het gebruik van het Create Block Theme:<\/p>\n<ul>\n<li>Je aanpassingen kunnen op twee plaatsen gebeuren. Je kunt de optie <a href=\"https:\/\/learn.wordpress.org\/lesson-plan\/how-to-style-your-site-with-global-styles\/\" target=\"_blank\" rel=\"noopener noreferrer\">Global Styles<\/a> gebruiken in de <a href=\"https:\/\/kinsta.com\/nl\/blog\/gutenberg-wordpress-editor\/\">Full Site Editor<\/a> of door het <a href=\"https:\/\/developer.wordpress.org\/themes\/global-settings-and-styles\/introduction-to-theme-json\/\" target=\"_blank\" rel=\"noopener noreferrer\">theme.json<\/a> bestand aan te passen.<\/li>\n<li>Het is een goed idee om <a href=\"https:\/\/kinsta.com\/nl\/blog\/gutenberg-blokken\/\">een Block te maken<\/a> voor je gekozen microservice. Hierover later meer.<\/li>\n<li>Met Create Block Theme kun je een <a href=\"https:\/\/kinsta.com\/nl\/blog\/child-thema-wordpress\/\">childthema<\/a> genereren op basis van het huidige actieve thema. Deze keuze hangt echter af van je doelen.<\/li>\n<\/ul>\n<p>Laten we het over het laatste punt hebben. Als dit een thema is om te maken en te verspreiden, dan wil je binnen het parentthema werken. Voor je eigen gebruik <em>zou<\/em> het kunnen werken om alleen het childthema aan te passen. Als vuistregel geldt: hoe minder &#8216;bevolkt&#8217; een thema aanvankelijk is, hoe meer je binnen het parentthema moet werken.<\/p>\n<h3>3. De gekozen microservices uitpakken<\/h3>\n<p>Als je blokkenthema klaar is, is het tijd om je microservices nader te bekijken. Een belangrijke beslissing die je moet nemen is welke services &#8216;micro&#8217; worden<\/p>\n<p>Dit kan een complexe en subjectieve vraag zijn die je eigen behoeften zullen beantwoorden. Er zijn echter een paar factoren waar je op moet letten:<\/p>\n<ul>\n<li><strong>De mogelijkheden van je site:<\/strong> Kijk naar elke aparte functionaliteit die je site biedt en overweeg om deze op te splitsen in een aparte microservice, zoals betalingsfunctionaliteit.<\/li>\n<li><strong>Onafhankelijke schaalbaarheid:<\/strong> Een bestaande service die afhankelijk is van onafhankelijke schaalbaarheid zal een goede kandidaat zijn voor microservices. Caching zou hier een voorbeeld van kunnen zijn.<\/li>\n<li><strong>Technologische diversiteit:<\/strong> Als je af moet stappen van <a href=\"https:\/\/kinsta.com\/nl\/blog\/php-tutorials\/\">de PHP architectuur van WordPress<\/a>, is dit weer een andere microservices-kandidaat. Dit kan het geval zijn voor specifieke e-commerce platforms of backend componenten.<\/li>\n<li><strong>Gegevensisolatie:<\/strong> services met aangepaste vereisten voor gegevensopslag zouden microservices kunnen zijn. Dit is ook het geval als die services geen gegevens hoeven te delen met anderen.<\/li>\n<\/ul>\n<p>Naar onze mening is het een goed idee om microservices te maken die specifieke API functionaliteit bieden. Dit kan zoeken, betalingsverwerking of authenticatie zijn. Als die services kunnen reageren met andere first-party API&#8217;s en externe API&#8217;s, maakt dat ze flexibeler en waardevoller.<\/p>\n<h3>Je microservices ontwikkelen en deployen<\/h3>\n<p>Om aan je microservices te werken en ze uiteindelijk te deployen, zul je moeten vertrouwen op andere tools. Hier zijn enkele belangrijke overwegingen en tools die je kunt gebruiken:<\/p>\n<ul>\n<li><a href=\"https:\/\/kinsta.com\/nl\/blog\/wat-is-docker\/\">Docker<\/a> zal vaak de manier zijn waarop je je microservices containeriseert. Het verpakt de microservice en zijn dependencies samen, waardoor het eenvoudig kan worden gedeployd en geschaald.<\/li>\n<li>Elke microservice heeft ook een <a href=\"https:\/\/docs.sevalla.com\/applications\/build-options\/dockerfile\">Dockerfile<\/a> nodig. Hierin moeten de benodigde dependencies, configuraties en runtime-omgeving worden gespecificeerd.<\/li>\n<li>Gebruik <a href=\"https:\/\/kinsta.com\/nl\/blog\/kubernetes-vs-docker\/\">Kubernetes<\/a> voor containerorkestratie en -beheer. Kinsta biedt een krachtig platform met ingebouwde ondersteuning voor Kubernetes.<\/li>\n<li>Continue integratie en deployment (CI\/CD) pijplijnen kunnen de manier zijn waarop je bouwen, testen en inzetten automatiseert. Tools zoals <a href=\"https:\/\/kinsta.com\/nl\/blog\/gitlab-en-github\/\">GitLab<\/a> en <a href=\"https:\/\/kinsta.com\/nl\/blog\/geautomatiseerd-testen\/\">Travis CI<\/a> kunnen helpen om je CI\/CD-processen te stroomlijnen.<\/li>\n<li><a href=\"https:\/\/kinsta.com\/nl\/blog\/serverless-php\/\">Serverloze functies<\/a> hebben geen volwaardige server nodig, dus ze zijn geweldig voor microservices. Met platformen zoals <a href=\"https:\/\/kinsta.com\/nl\/blog\/function-as-a-service\/#aws-lambda\">AWS Lambda<\/a>, Google Cloud Functions of Azure Functions kun je code uitvoeren zonder servers in te richten of te beheren.<\/li>\n<li>API gateways bieden een enkel toegangspunt voor je microservices. Tools zoals <a href=\"https:\/\/konghq.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Kong<\/a> of <a href=\"https:\/\/aws.amazon.com\/api-gateway\/\" target=\"_blank\" rel=\"noopener noreferrer\">Amazon API Gateway<\/a> kunnen je helpen bij het beheren en beveiligen van je API&#8217;s. Ze kunnen ook taken afhandelen zoals authenticatie, snelheidsbeperking en verzoekroutering.<\/li>\n<\/ul>\n<p>Nu heb je een WordPress website en microservice die onafhankelijk van elkaar zijn. De laatste stap is om ze te integreren.<\/p>\n<h3>4. Microservices integreren met WordPress<\/h3>\n<p>Zodra je je microservices hebt ontwikkeld en ingezet, moet je ze integreren met WordPress. Om dit te doen, zul je API calls maken vanuit WordPress naar de endpoints die je microservice blootstelt. Daarom moet je de REST API door en door kennen.<\/p>\n<p>De <a href=\"https:\/\/developer.wordpress.org\/apis\/making-http-requests\/getting-data-from-an-external-service\/\" target=\"_blank\" rel=\"noopener noreferrer\">gebruikelijke manier<\/a> om dit te doen in WordPress is met <code>wp_remote_get()<\/code> of <code>wp_remote_post()<\/code>. Hiermee kun je HTTP verzoeken versturen en de responses afhandelen. Hier is wat voorbeeldcode van hoe het allemaal in elkaar zou passen:<\/p>\n<pre><code class=\"language-php\">\/\/ API endpoint URL\n\n$api_url = 'https:\/\/api.example.com\/endpoint';\n\n\/\/ API request parameters\n\n$params = array(\n    'param1' =&gt; 'value1',\n    'param2' =&gt; 'value2',\n);\n\n\n\/\/ Make the API request using wp_remote_get\n$response = wp_remote_get(add_query_arg($params, $api_url));\n\n\/\/ Check if the request was successful\nif (is_wp_error($response)) {\n    \/\/ Handle the error\n    $error_message = $response-&gt;get_error_message();\n\n    \/\/ Log or display the error message\n} else {\n    \/\/ Process the API response\n    $response_body = wp_remote_retrieve_body($response);\n\n    $data = json_decode($response_body, true);\n\n    \/\/ Use the retrieved data as needed\n\n    \/\/ ...\n}\n<\/code><\/pre>\n<p>Microservices hebben vaak baat bij het asynchroon ophalen van gegevens om te voorkomen dat de main thread wordt geblokkeerd. WordPress kan twee elementen combineren om dit te doen. Je kunt het <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/packages\/packages-api-fetch\/\" target=\"_blank\" rel=\"noopener noreferrer\">API Fetch pakket<\/a> gebruiken, samen met de ondersteuning voor <code>async<\/code> en <code>defer<\/code> <a href=\"https:\/\/make.wordpress.org\/core\/2023\/07\/14\/registering-scripts-with-async-and-defer-attributes-in-wordpress-6-3\/\" target=\"_blank\" rel=\"noopener noreferrer\">ge\u00efntroduceerd in WordPress 6.3<\/a>. Je code zou er ongeveer zo uit kunnen zien als hieronder:<\/p>\n<pre><code class=\"language-php\">import apiFetch from '@wordpress\/api-fetch';\n\n\/\/ Microservice API endpoint URL\nconst microserviceUrl = 'https:\/\/api.example.com\/microservice';\n...\n\n\n\/\/ Make the API request to the microservice\napiFetch({\n  path: microserviceUrl,\n  method: 'GET',\n  data: params,\n})\n\n  .then((response) =&gt; {\n    \/\/ Process the response\n    console.log(response);\n\n    \/\/ Use the retrieved data from the microservice\n\n    \/\/ ...\n  })\n...\n<\/code><\/pre>\n<p>Je zou ook <a href=\"https:\/\/kinsta.com\/nl\/blog\/admin-ajax\/\">AJAX kunnen overwegen<\/a> om dynamische gebruikersinterface (UI) updates uit te voeren.<\/p>\n<p>Natuurlijk zijn <a href=\"https:\/\/developer.wordpress.org\/rest-api\/using-the-rest-api\/authentication\/\" target=\"_blank\" rel=\"noopener noreferrer\">goede authenticatie<\/a> en beveiligingsmaatregelen ook cruciaal. De WordPress REST API bevat een aantal manieren om sessies te authenticeren, zoals cookies, JSON Web Tokens (JWT) of <a href=\"https:\/\/make.wordpress.org\/core\/2020\/11\/05\/application-passwords-integration-guide\/\" target=\"_blank\" rel=\"noopener noreferrer\">applicatiewachtwoorden<\/a>. Gezien de afhankelijkheid van externe oplossingen, is het cruciaal om je microservices en site veilig te houden.<\/p>\n<p>Aangezien we een aangepast Block thema gebruiken, is het zinvol om die functionaliteit te gebruiken. Door je microservice toe te voegen aan een Block, kun je deze bijna overal op je site opnemen. Om nog een stap verder te gaan, kun je die functionaliteit zelfs opnemen in een plugin.<\/p>\n<p>Het proces bestaat uit drie onderdelen: <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/block-api\/block-registration\/\" target=\"_blank\" rel=\"noopener noreferrer\">het registreren van het Block<\/a>, <a href=\"https:\/\/make.wordpress.org\/core\/2021\/02\/18\/wordpress-5-7-a-new-dynamic-hook-to-filter-the-content-of-a-single-block\/\" target=\"_blank\" rel=\"noopener noreferrer\">het renderen van de inhoud<\/a> en het verwerken van gegevens. <a href=\"https:\/\/kinsta.com\/javascript\/\">JavaScript<\/a> is hier de taal van je keuze en de functie <code>registerBlockType<\/code> zorgt voor de <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/block-api\/block-registration\/#registerblocktype\" target=\"_blank\" rel=\"noopener noreferrer\">registratie en rendering<\/a>:<\/p>\n<pre><code class=\"language-js\">\/\/ JavaScript function that builds the Block to enable access within the Block Editor.\n( function( blocks, element ) {\n    var el = element.createElement;\n\n    blocks.registerBlockType( 'my-micro\/stripe-api', {\n        title: 'Stripe Payment Gateway',\n        icon: 'dashicons-cart',\n        category: 'embed',\n\n        edit: function() {\n            return el(\n                'div',\n                {},\n                '' \/\/ Create the visual elements of the microservice to display within the Block Editor.\n            );\n        },\n\u2026\n<\/code><\/pre>\n<p>Dit is een heel eenvoudig voorbeeld van het registreren van een Block, en meer valt buiten het bestek van deze post. Je kunt echter zien dat het eenvoudig is om de Create Block Theme plugin, microservices en WordPress te combineren. Als je de <a href=\"https:\/\/kinsta.com\/nl\/blog\/headless-wordpress-hosting\/\">juiste hostingprovider<\/a> gebruikt, heb je nog een manier om waarde toe te voegen aan je microservicearchitectuur.<\/p>\n<h2>Kinsta gebruiken om je WordPress site en microservices te beheren en te schalen<\/h2>\n<p><a href=\"https:\/\/kinsta.com\/nl\/\">Het hele ecosysteem van Kinsta<\/a> is zeer geschikt voor het beheren van WordPress sites met behulp van een microservices architectuur. De kern wordt gevormd door de <a href=\"https:\/\/sevalla.com\/application-hosting\/\">applicatiehosting<\/a>. Dit kan het eenvoudig maken om gecontaineriseerde microservices te implementeren en vervolgens de andere aanbiedingen van Kinsta te gebruiken om ze te onderhouden.<\/p>\n<p><a href=\"https:\/\/kinsta.com\/nl\/changelog\/automatisch-schalen\/\">Automatisch schalen<\/a> houdt bijvoorbeeld je resources in de gaten om pieken in het verkeer op te vangen. Dit betekent dat je microservices omhoog of omlaag kunnen schalen op basis van de vraag. Je krijgt de prestatievoordelen terwijl de kosten laag blijven.<\/p>\n<p>Kinsta biedt managed hosting voor een reeks databasetypes:<\/p>\n<ul>\n<li><a href=\"https:\/\/kinsta.com\/nl\/blog\/wat-is-mysql\/\">MySQL<\/a><\/li>\n<li><a href=\"https:\/\/sevalla.com\/database-hosting\/\">PostgreSQL<\/a><\/li>\n<li><a href=\"https:\/\/kinsta.com\/nl\/blog\/mysql-naar-mariadb\/\">MariaDB<\/a><\/li>\n<li><a href=\"https:\/\/kinsta.com\/nl\/docs\/wordpress-hosting\/caching\/redis-cache\/\">Redis<\/a><\/li>\n<\/ul>\n<p>Deze laatste heeft verschillende gebruiksmogelijkheden, zoals een in-memory cache, message broker, vector- en documentendatabase en meer &#8211; allemaal zonder SQL.<\/p>\n<figure id=\"attachment_178017\" aria-describedby=\"caption-attachment-178017\" style=\"width: 1000px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-178017 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/04\/redis-logo.png\" alt=\"Het Redis-logo, bestaande uit een rode 3D-stapel van vakjes met een wit sterpictogram op het bovenste vakje, tegen een donkerblauwe achtergrond met de Redis-naam in witte tekst.\" width=\"1000\" height=\"266\"><figcaption id=\"caption-attachment-178017\" class=\"wp-caption-text\">Het Redis logo.<\/figcaption><\/figure>\n<p>Deze vari\u00ebteit betekent dat Kinsta zowel je WordPress als microservice databases aankan zonder dat het je moeite kost. Samen met zijn <a href=\"https:\/\/kinsta.com\/nl\/edge-caching\/\">best-in-class caching<\/a>, Docker en Kubernetes ondersteuning, gelikte <a href=\"https:\/\/my.kinsta.com\/?lang=nl\">MyKinsta dashboard<\/a> en meer, heb je het complete pakket om je microservices naast WordPress te hosten.<\/p>\n<h2>Samenvatting<\/h2>\n<p>WordPress is monolithisch, maar dat weerhoudt het er niet van om microservices te integreren. Dit kan veel voordelen hebben, zoals verbeterde schaalbaarheid, flexibiliteit en snellere ontwikkeling.<\/p>\n<p>Met de plugin Create Block Theme kun je een schone, veilige codebasis cre\u00ebren voor de rest van je project. Microservices kunnen complexiteit aan je site toevoegen. Door een aangepast Block Theme te gebruiken, kun je die services op de beste manier voor jouw behoeften implementeren. Als je dit combineert met ontwikkeltools zoals <a href=\"https:\/\/kinsta.com\/nl\/devkinsta\/\">DevKinsta<\/a> en Kinsta&#8217;s <a href=\"https:\/\/sevalla.com\/application-hosting\/\">applicatiehosting<\/a>, heb je de ideale basis om krachtige, moderne webapps te maken.<\/p>\n<p>Lijkt een microservices architectuur perfect te passen naast de Create Block Theme plugin? Laat ons je gedachten en ervaringen weten in het commentaarveld hieronder!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress is een krachtig Content Management Systeem (CMS) dat de basis kan leggen voor verschillende soorten sites en apps. Dit maakt gebruik van een typische &#8216;monolithische &#8230;<\/p>\n","protected":false},"author":199,"featured_media":59203,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[892,899],"class_list":["post-59202","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-wordpress-ontwikkeling","topic-wordpress-plugins"],"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 bouw je WordPress webapps met een microservices architectuur - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Het bouwen van web apps met WordPress en microservices is een moderne manier om te ontwikkelen. Dit artikel kijkt naar hoe je de Create Block Theme gebruikt om te helpen!\" \/>\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-web-apps\/\" \/>\n<meta property=\"og:locale\" content=\"nl_NL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Zo bouw je WordPress webapps met een microservices architectuur\" \/>\n<meta property=\"og:description\" content=\"Het bouwen van web apps met WordPress en microservices is een moderne manier om te ontwikkelen. Dit artikel kijkt naar hoe je de Create Block Theme gebruikt om te helpen!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/\" \/>\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=\"2024-05-06T07:17:15+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-08T07:19:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.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=\"Jeremy Holcombe\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Het bouwen van web apps met WordPress en microservices is een moderne manier om te ontwikkelen. Dit artikel kijkt naar hoe je de Create Block Theme gebruikt om te helpen!\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture-1024x512.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@Kinsta_NL\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_NL\" \/>\n<meta name=\"twitter:label1\" content=\"Geschreven door\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeremy Holcombe\" \/>\n\t<meta name=\"twitter:label2\" content=\"Geschatte leestijd\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 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-web-apps\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/\"},\"author\":{\"name\":\"Jeremy Holcombe\",\"@id\":\"https:\/\/kinsta.com\/nl\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\"},\"headline\":\"Zo bouw je WordPress webapps met een microservices architectuur\",\"datePublished\":\"2024-05-06T07:17:15+00:00\",\"dateModified\":\"2024-05-08T07:19:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/\"},\"wordCount\":3362,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/nl\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg\",\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/\",\"url\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/\",\"name\":\"Zo bouw je WordPress webapps met een microservices architectuur - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/nl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg\",\"datePublished\":\"2024-05-06T07:17:15+00:00\",\"dateModified\":\"2024-05-08T07:19:03+00:00\",\"description\":\"Het bouwen van web apps met WordPress en microservices is een moderne manier om te ontwikkelen. Dit artikel kijkt naar hoe je de Create Block Theme gebruikt om te helpen!\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#breadcrumb\"},\"inLanguage\":\"nl-NL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#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 bouw je WordPress webapps met een microservices architectuur\"}]},{\"@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\/4eee42881d7b5a73ebb4f58dd5223b21\",\"name\":\"Jeremy Holcombe\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"nl-NL\",\"@id\":\"https:\/\/kinsta.com\/nl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g\",\"caption\":\"Jeremy Holcombe\"},\"description\":\"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/jeremyholcombe\/\"],\"url\":\"https:\/\/kinsta.com\/nl\/blog\/author\/jeremyholcombe\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Zo bouw je WordPress webapps met een microservices architectuur - Kinsta\u00ae","description":"Het bouwen van web apps met WordPress en microservices is een moderne manier om te ontwikkelen. Dit artikel kijkt naar hoe je de Create Block Theme gebruikt om te helpen!","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-web-apps\/","og_locale":"nl_NL","og_type":"article","og_title":"Zo bouw je WordPress webapps met een microservices architectuur","og_description":"Het bouwen van web apps met WordPress en microservices is een moderne manier om te ontwikkelen. Dit artikel kijkt naar hoe je de Create Block Theme gebruikt om te helpen!","og_url":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/Kinsta-Nederland-476213452787823\/","article_published_time":"2024-05-06T07:17:15+00:00","article_modified_time":"2024-05-08T07:19:03+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg","type":"image\/jpeg"}],"author":"Jeremy Holcombe","twitter_card":"summary_large_image","twitter_description":"Het bouwen van web apps met WordPress en microservices is een moderne manier om te ontwikkelen. Dit artikel kijkt naar hoe je de Create Block Theme gebruikt om te helpen!","twitter_image":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture-1024x512.jpg","twitter_creator":"@Kinsta_NL","twitter_site":"@Kinsta_NL","twitter_misc":{"Geschreven door":"Jeremy Holcombe","Geschatte leestijd":"18 minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/"},"author":{"name":"Jeremy Holcombe","@id":"https:\/\/kinsta.com\/nl\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21"},"headline":"Zo bouw je WordPress webapps met een microservices architectuur","datePublished":"2024-05-06T07:17:15+00:00","dateModified":"2024-05-08T07:19:03+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/"},"wordCount":3362,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/nl\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg","inLanguage":"nl-NL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/","url":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/","name":"Zo bouw je WordPress webapps met een microservices architectuur - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/nl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg","datePublished":"2024-05-06T07:17:15+00:00","dateModified":"2024-05-08T07:19:03+00:00","description":"Het bouwen van web apps met WordPress en microservices is een moderne manier om te ontwikkelen. Dit artikel kijkt naar hoe je de Create Block Theme gebruikt om te helpen!","breadcrumb":{"@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#breadcrumb"},"inLanguage":"nl-NL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/"]}]},{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#primaryimage","url":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg","contentUrl":"https:\/\/kinsta.com\/nl\/wp-content\/uploads\/sites\/7\/2024\/04\/wp-how-to-build-wordpress-web-apps-using-a-microservices-architecture.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/nl\/blog\/wordpress-web-apps\/#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 bouw je WordPress webapps met een microservices architectuur"}]},{"@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\/4eee42881d7b5a73ebb4f58dd5223b21","name":"Jeremy Holcombe","image":{"@type":"ImageObject","inLanguage":"nl-NL","@id":"https:\/\/kinsta.com\/nl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0e17001f3bb37dbbe54fceef9bb547fa?s=96&d=mm&r=g","caption":"Jeremy Holcombe"},"description":"Senior Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems.","sameAs":["https:\/\/www.linkedin.com\/in\/jeremyholcombe\/"],"url":"https:\/\/kinsta.com\/nl\/blog\/author\/jeremyholcombe\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/posts\/59202","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\/199"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/comments?post=59202"}],"version-history":[{"count":6,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/posts\/59202\/revisions"}],"predecessor-version":[{"id":59263,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/posts\/59202\/revisions\/59263"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/translations\/es"},{"href":"https:\/\/kinsta.com\/nl\/wp-json\/kinsta\/v1\/posts\/59202\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/media\/59203"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/media?parent=59202"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/tags?post=59202"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/nl\/wp-json\/wp\/v2\/topic?post=59202"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}