{"id":69319,"date":"2024-03-04T09:07:14","date_gmt":"2024-03-04T08:07:14","guid":{"rendered":"https:\/\/kinsta.com\/de\/?p=69319&#038;preview=true&#038;preview_id=69319"},"modified":"2024-03-07T13:42:23","modified_gmt":"2024-03-07T12:42:23","slug":"headless-wordpress-next-js","status":"publish","type":"post","link":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/","title":{"rendered":"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt"},"content":{"rendered":"<p>WordPress gibt es seit \u00fcber 20 Jahren und betreibt <a href=\"https:\/\/w3techs.com\/technologies\/details\/cm-wordpress\/all\/all\" target=\"_blank\" rel=\"noopener noreferrer\">laut W3Techs<\/a> 42,7 % aller Websites im Internet. Au\u00dferdem h\u00e4lt es einen Marktanteil von 62,5 % bei den Content-Management-Systemen (CMS) hinter Websites.<\/p>\n<p>Heute gibt es viele Programmiersprachen und Frameworks, mit denen du benutzerfreundliche und leistungsstarke Websites erstellen kannst, die viel schneller sind als WordPress, egal welche Optimierungen du in deinem WordPress-Dashboard vornimmst. Ein Beispiel ist <a href=\"https:\/\/kinsta.com\/de\/blog\/next-js\/\">Next.js<\/a>, ein beliebtes React-Framework.<\/p>\n<p>Dieser Leitfaden zeigt dir, wie du WordPress als Headless CMS nutzt und Daten f\u00fcr deine Next.js-Anwendung bereitstellst. Au\u00dferdem wird erkl\u00e4rt, wie du deinen Next.js-Code als <a href=\"https:\/\/kinsta.com\/de\/blog\/was-ist-eine-statische-website\/\">statische Website<\/a> auf dem kostenlosen <a href=\"https:\/\/sevalla.com\/static-site-hosting\/\">Statische-Seiten-Hosting<\/a> Dienst von Kinsta bereitstellst.<\/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>Verst\u00e4ndnis von Headless WordPress<\/h2>\n<p>Headless WordPress bedeutet, dass WordPress nur f\u00fcr seine Backend-Funktionen &#8211; die Verwaltung und Speicherung von Inhalten &#8211; verwendet wird und ein separates System wie Next.js f\u00fcr die Frontend-Pr\u00e4sentation eingesetzt wird.<\/p>\n<p>Diese Entkopplung erm\u00f6glicht es Entwicklern, die robusten Content-Management-Tools von WordPress zu nutzen und gleichzeitig die Vorteile moderner Frontend-Entwicklungsfunktionen wie serverseitiges Rendering und statische Website-Generierung in Next.js zu nutzen.<\/p>\n<h3>Vorbereiten deiner WordPress-Seite<\/h3>\n<p>Bevor du mit der Next.js-Entwicklung beginnst, musst du deine WordPress-Website ein wenig vorbereiten, damit sie als <a href=\"https:\/\/kinsta.com\/de\/thema\/headless-cms\/\">Headless CMS<\/a> genutzt werden kann.<\/p>\n<p>Wenn du noch keine WordPress-Website hast, kannst du mit Kinsta ganz einfach eine erstellen. Es gibt drei Methoden, um eine WordPress-Website mit Kinsta zu erstellen:<\/p>\n<ol start=\"1\">\n<li>Erstelle eine Website <a href=\"https:\/\/kinsta.com\/de\/blog\/wordpress-lokal-installieren\/\">auf deinem lokalen Rechner<\/a> (vielleicht mit unseren <a href=\"https:\/\/kinsta.com\/de\/devkinsta\/\">DevKinsta-Tools<\/a>), bevor du sie auf unsere Server verschiebst<\/li>\n<li>Erstelle eine Website aus der Ferne \u00fcber das <a href=\"https:\/\/kinsta.com\/de\/docs\/wordpress-hosting\/wordpress-erste-schritte\/neue-seite\/\">MyKinsta-Dashboard<\/a><\/li>\n<li>Erstelle eine Website aus der Ferne \u00fcber die <a href=\"https:\/\/kinsta.com\/de\/blog\/wordpress-api\/\">Kinsta-API<\/a><\/li>\n<\/ol>\n<p>Sobald du eine WordPress-Site hast, gibt es zwei M\u00f6glichkeiten, um Daten aus deinem WordPress-CMS in dein Frontend-Framework zu \u00fcbertragen: <a href=\"https:\/\/kinsta.com\/de\/blog\/wpgraphql-und-wp-rest-api\/\">WPGraphQL und REST API<\/a>.<\/p>\n<p>Die REST-API erleichtert das Abrufen von Daten im JSON-Format mit JavaScript-Ans\u00e4tzen wie der <a href=\"https:\/\/kinsta.com\/de\/blog\/javascript-http-anfrage\/#4-how-to-make-an-http-request-in-javascript-using-the-fetch-api\">Fetch-API<\/a> oder der <a href=\"https:\/\/kinsta.com\/de\/blog\/javascript-http-anfrage\/#5-how-to-make-an-http-request-in-javascript-using-axios\">Axios<\/a>-Bibliothek. Die REST-API ist seit Version 4.7 in WordPress integriert, d.h. sie ben\u00f6tigt kein Plugin, um zu funktionieren. Aber um WPGraphQL zu nutzen, mit dem du \u00fcber GraphQL-Abfragen mit deinen WordPress-Daten interagieren kannst, musst du das WPGraphQL-Plugin installieren.<\/p>\n<p>F\u00fcr diesen Leitfaden verwenden wir die REST-API. Um deine WordPress-Daten im JSON-Format zu erhalten, h\u00e4nge <code>\/wp-json\/wp\/v2<\/code> an die URL deiner WordPress-Website an:<\/p>\n<pre><code class=\"language-bash\">http:\/\/yoursite.com\/wp-json\/wp\/v2<\/code><\/pre>\n<p>Wenn die JSON-API nicht standardm\u00e4\u00dfig aktiviert ist, wenn du <code>http:\/\/yoursite.com\/wp-json<\/code> besuchst, kannst du sie aktivieren, indem du im WordPress-Dashboard unter <strong>Einstellungen<\/strong> <strong>Permalinks<\/strong> \u00f6ffnest und <strong>Post Name<\/strong> oder eine andere Option deiner Wahl au\u00dfer <strong>Plain<\/strong> w\u00e4hlst:<\/p>\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/02\/configure-rest-api.png\" alt=\"Konfiguriere die WordPress REST API f\u00fcr den Zugriff auf JSON-Daten\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Konfiguriere die WordPress REST API f\u00fcr den Zugriff auf JSON-Daten<\/figcaption><\/figure>\n<p>Dies funktioniert f\u00fcr lokale und \u00f6ffentliche WordPress-Websites und bietet <a href=\"https:\/\/developer.wordpress.org\/rest-api\/key-concepts\/\" target=\"_blank\" rel=\"noopener noreferrer\">Endpunkte<\/a> f\u00fcr Inhalte wie <a href=\"https:\/\/developer.wordpress.org\/rest-api\/reference\/posts\/\" target=\"_blank\" rel=\"noopener noreferrer\">Beitr\u00e4ge<\/a>, <a href=\"https:\/\/developer.wordpress.org\/rest-api\/reference\/pages\/\" target=\"_blank\" rel=\"noopener noreferrer\">Seiten<\/a>, <a href=\"https:\/\/developer.wordpress.org\/rest-api\/reference\/comments\/\" target=\"_blank\" rel=\"noopener noreferrer\">Kommentare<\/a> und <a href=\"https:\/\/developer.wordpress.org\/rest-api\/reference\/media\/\" target=\"_blank\" rel=\"noopener noreferrer\">Medien<\/a>. Lies unseren <a href=\"https:\/\/kinsta.com\/de\/blog\/wordpress-rest-api\/\">vollst\u00e4ndigen Leitfaden zur REST-API<\/a>, um mehr zu erfahren.<\/p>\n<h2>Einrichten deiner Next.js-Umgebung<\/h2>\n<p>Next.js hilft Entwicklern, Webanwendungen mit Leichtigkeit zu erstellen, die Leistung zu verbessern und die Entwicklung zu optimieren. Eine der wichtigsten Funktionen ist das dateibasierte Routing, das die Erstellung von Routen vereinfacht.<\/p>\n<p>Next.js konzentriert sich auch stark auf die Leistung und bietet Funktionen wie das automatische <a href=\"https:\/\/kinsta.com\/de\/blog\/nextjs-vs-react\/#code-splitting\">Code-Splitting<\/a>, das nur das notwendige JavaScript f\u00fcr jede Seite l\u00e4dt und so die Ladezeit erheblich verk\u00fcrzt.<\/p>\n<p>Um ein Next.js-Projekt einzurichten, kannst du den folgenden Befehl ausf\u00fchren und seine Standardantworten verwenden:<\/p>\n<pre><code class=\"language-bash\">npx create-next-app@latest nextjs-wp-demo<\/code><\/pre>\n<p>F\u00fcr diesen Leitfaden kannst du unsere <a href=\"https:\/\/kinsta.com\/de\/thema\/git\/\">Git-Starter-Vorlage<\/a> verwenden, indem du die folgenden Schritte ausf\u00fchrst:<\/p>\n<ol start=\"1\">\n<li>Besuche das <a href=\"https:\/\/github.com\/olawanlejoel\/nextjs-headless-wp\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub-Repository<\/a> f\u00fcr dieses Projekt.<\/li>\n<li>W\u00e4hle <strong>Diese Vorlage verwenden<\/strong> &gt; <strong>Neues Repository erstellen<\/strong>, um den Starter-Code in ein Repository in deinem GitHub-Konto zu kopieren (aktiviere das Kontrollk\u00e4stchen, um <strong>alle Zweige einzuschlie\u00dfen<\/strong>).<\/li>\n<li>Ziehe das Repository auf deinen lokalen Computer und wechsle mit dem Befehl in den <a href=\"https:\/\/github.com\/olawanlejoel\/nextjs-headless-wp\/tree\/starter-files\" target=\"_blank\" rel=\"noopener noreferrer\">starter-files-Zweig<\/a>: <code>git checkout starter-files<\/code>.<\/li>\n<\/ol>\n<ol start=\"4\">\n<li>Installiere die notwendigen Abh\u00e4ngigkeiten, indem du den Befehl <code>npm install<\/code> ausf\u00fchrst.<\/li>\n<\/ol>\n<p>Sobald die Installation abgeschlossen ist, starte das Projekt auf deinem lokalen Computer mit <code>npm run dev<\/code>. Dadurch wird das Projekt unter <a href=\"http:\/\/localhost:3000\/\" target=\"_blank\" rel=\"noopener noreferrer\">http:\/\/localhost:3000\/<\/a> verf\u00fcgbar <a href=\"http:\/\/localhost:3000\/\" target=\"_blank\" rel=\"noopener noreferrer\">.<\/a><\/p>\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/02\/starter-project.png\" alt=\"Ein Screenshot eines mit Next.js erstellten Starterprojekts\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Ein Screenshot eines mit Next.js erstellten Starterprojekts<\/figcaption><\/figure>\n<h3>Das Projekt verstehen<\/h3>\n<p>Der App Router wurde in Next.js 13 eingef\u00fchrt und ersetzt das bisherige <strong>Seitenverzeichnis<\/strong> f\u00fcr das Routing. Beim Routing mit dem App Router werden ebenfalls Ordner innerhalb des <strong>Anwendungs-Verzeichnisses<\/strong> erstellt. Dann verschachtelst du eine <strong>page.js-Datei<\/strong> in den entsprechenden Ordner, um deine Route zu definieren.<\/p>\n<p>In diesem Projekt ist <strong>app<\/strong> das Hauptverzeichnis, mit dem du interagieren w\u00fcrdest, und du findest die folgende Dateistruktur.<\/p>\n<pre><code class=\"language-bash\">\/\n|-- \/app\n    |-- \/blog\n        |-- \/[postId]\n        \t|-- page.js\n        |-- page.js\n    |-- globals.css\n    |-- layout.js\n    |-- navbar.js\n    |-- page.js<\/code><\/pre>\n<p>Es werden drei Seiten erstellt: die Startseite, auf der die grundlegenden Informationen angezeigt werden, die Blogseite, auf der alle Beitr\u00e4ge aus deinem WordPress CMS angezeigt werden, und die dynamische Seite (<strong>[postId]\/page.js<\/strong>) f\u00fcr die Darstellung einzelner Beitr\u00e4ge.<\/p>\n<p>Du wirst auch die Komponente <strong>navbar.js<\/strong> sehen, die in die Datei <strong>layout.js<\/strong> importiert wird, um ein Layout f\u00fcr das Projekt zu erstellen.<\/p>\n<h2>Daten von WordPress nach Next.js holen<\/h2>\n<p>Mit der WordPress REST API kannst du Beitr\u00e4ge, Seiten und benutzerdefinierte Beitragstypen abrufen, indem du HTTP-Anfragen an bestimmte Endpunkte sendest.<\/p>\n<p>Wir stellen eine Anfrage in der Datei <strong>blog\/page.js<\/strong>, um alle Beitr\u00e4ge in deinem WordPress CMS abzurufen, und stellen dann eine Anfrage, um jeden Beitrag dynamisch in der Datei <strong>blog\/[postId]\/page.js<\/strong> abzurufen, basierend auf dem \u00fcbergebenen Parameter <code>id<\/code>.<\/p>\n<p>Bevor wir diese Anfragen stellen, ist es ratsam, die JSON-API-Adresse in eine Umgebungsvariable aufzunehmen. Auf diese Weise wird sichergestellt, dass deine API-Basis-URL leicht konfigurierbar ist und nicht in mehreren Dateien fest codiert wird.<\/p>\n<p>Erstelle eine <strong>.env-Datei<\/strong> im Stammverzeichnis deines Next.js-Projekts und f\u00fcge Folgendes hinzu:<\/p>\n<pre><code class=\"language-bash\">NEXT_PUBLIC_WORDPRESS_API_URL=https:\/\/yoursite.kinsta.cloud\/wp-json\/wp\/v2<\/code><\/pre>\n<p>Ersetze die URL durch die JSON-API deiner Website. F\u00fcge au\u00dferdem <code>.env<\/code> zu deiner <strong><a href=\"https:\/\/kinsta.com\/de\/blog\/gitignore-funktioniert-nicht\/\">.gitignore<\/a><\/strong> datei hinzu, damit die Datei nicht zu deinem Git-Provider \u00fcbertragen wird.<\/p>\n<h3>Alle Beitr\u00e4ge von WordPress nach Next.js holen<\/h3>\n<p>Um alle Beitr\u00e4ge von deiner WordPress-Website abzurufen, erstelle eine asynchrone Funktion namens <code>getPosts<\/code> in deiner <strong>blog\/page.js-Datei<\/strong>. Diese Funktion verwendet die Fetch API, um eine GET-Anfrage an den <code>\/posts<\/code> Endpunkt deiner WordPress REST API zu stellen.<\/p>\n<pre><code class=\"language-js\">async function getPosts() {\n    const response = await fetch(\n        `${process.env.NEXT_PUBLIC_WORDPRESS_API_URL}\/posts`\n    );\n    const posts = await response.json();\n    return posts;\n}<\/code><\/pre>\n<p>Nachdem sie die Antwort erhalten hat, wandelt sie diese in JSON um und erstellt ein Array mit Post-Objekten. Diese <code>posts<\/code> k\u00f6nnen in deiner Next.js-Anwendung gerendert werden und bieten eine dynamische Liste von Blogbeitr\u00e4gen, die direkt von WordPress abgerufen werden.<\/p>\n<pre><code class=\"language-js\">const BlogPage = async () =&gt; {\n    const posts = await getPosts();\n    return (\n        &lt;div className=\"blog-page\"&gt;\n            &lt;h2&gt;All Blog Posts&lt;\/h2&gt;\n            &lt;p&gt;All blog posts are fetched from WordPress via the WP REST API.&lt;\/p&gt;\n            &lt;div className=\"posts\"&gt;\n                {posts.map((post) =&gt; {\n                    return (\n                        &lt;Link href={`\/blog\/${post.id}`} className=\"post\" key={post.id}&gt;\n                            &lt;h3&gt;{post.title.rendered}&lt;\/h3&gt;\n                            &lt;p\n                                dangerouslySetInnerHTML={{ __html: post.excerpt.rendered }}\n                            &gt;&lt;\/p&gt;\n                        &lt;\/Link&gt;\n                    );\n                })}\n            &lt;\/div&gt;\n        &lt;\/div&gt;\n    );\n};<\/code><\/pre>\n<p>In der Next.js-Seitenkomponente rufst du <code>getPosts<\/code> asynchron auf, um die Posts zu holen. Dann rufst du <code>map<\/code> \u00fcber das Array von <code>posts<\/code> auf und renderst die <code>title<\/code> und <code>excerpt<\/code> jedes Beitrags in einer <code>&lt;Link&gt;<\/code> Komponente.<\/p>\n<p>Dadurch werden die Beitr\u00e4ge nicht nur angezeigt, sondern auch in einen Link verpackt, der zu einer detaillierten Ansicht des Beitrags f\u00fchrt. Dies wird durch das dateibasierte Routing von Next.js erreicht, bei dem die Post-ID verwendet wird, um den URL-Pfad dynamisch zu generieren.<\/p>\n<h3>Dynamische Beitr\u00e4ge von WordPress zu Next.js holen<\/h3>\n<p>Im obigen Code ist jeder Beitrag mit einem Link versehen, der den Nutzern helfen soll, zu einer detaillierten Ansicht des Beitrags zu navigieren.<\/p>\n<p>F\u00fcr einzelne Beitragsseiten verwendest du das dynamische Routing in Next.js, um eine Seite zu erstellen, die einen einzelnen Beitrag anhand seiner ID abruft und anzeigt. Eine dynamische Seite <strong>[postID]\/page.js<\/strong> ist bereits im Code von stater-files erstellt.<\/p>\n<p>Erstelle eine <code>getSinglePost<\/code> Funktion, \u00e4hnlich wie <code>getPosts<\/code>, um einen einzelnen Beitrag anhand der als Parameter \u00fcbergebenen Beitrags-ID abzurufen.<\/p>\n<pre><code class=\"language-js\">async function getSinglePost(postId) {\n    const response = await fetch(\n        `${process.env.NEXT_PUBLIC_WORDPRESS_API_URL}\/posts\/${postId}`\n    );\n    const post = await response.json();\n    return post;\n}<\/code><\/pre>\n<p>In der dynamischen Seitenkomponente extrahierst du die Post-ID aus den URL-Parametern, rufst <code>getSinglePost<\/code> mit dieser ID auf und renderst den Inhalt des Posts.<\/p>\n<pre><code class=\"language-js\">const page = async ({ params }) =&gt; {\n    const post = await getSinglePost(params.postId);\n    \/\/ ... the rest of the page code\n};<\/code><\/pre>\n<p>Anschlie\u00dfend kannst du die Seite mit den abgerufenen Daten auff\u00fcllen:<\/p>\n<pre><code class=\"language-js\">const page = async ({ params }) =&gt; {\n    const post = await getSinglePost(params.postId);\n    if (!post) {\n        return &lt;div&gt;Loading...&lt;\/div&gt;;\n    }\n    return (\n        &lt;div className=\"single-blog-page\"&gt;\n            &lt;h2&gt;{post.title.rendered}&lt;\/h2&gt;\n            &lt;div className=\"blog-post\"&gt;\n                &lt;p&gt; dangerouslySetInnerHTML={{ __html: post.content.rendered }}&gt;&lt;\/p&gt;\n            &lt;\/div&gt;\n        &lt;\/div&gt;\n    );\n};<\/code><\/pre>\n<p>Den vollst\u00e4ndigen Code findest du in unserem <a href=\"https:\/\/github.com\/olawanlejoel\/nextjs-headless-wp\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub-Repository<\/a>.<\/p>\n<h2>Deine Next.js-Anwendung kostenlos bei Kinsta bereitstellen<\/h2>\n<p>Der <a href=\"https:\/\/docs.sevalla.com\/static-sites\/overview\">Static Site Hosting<\/a> Service von Kinsta bietet die M\u00f6glichkeit, bis zu 100 statische Websites <strong>kostenlos<\/strong> zu hosten.<\/p>\n<p>Dieser Dienst hostet nur statische Dateien. Wenn du einen <a href=\"https:\/\/kinsta.com\/de\/blog\/statische-webseiten-generatoren\/\">Static Site Generator<\/a> wie Next.js verwendest, kannst du Optionen konfigurieren, die dein Projekt von GitHub aus erstellen und die statischen Dateien bei Kinsta bereitstellen.<\/p>\n<h3>Statisches Rendering in Next.js<\/h3>\n<p>Um einen statischen Export in Next.js ab Version 13 zu aktivieren, \u00e4ndere den <code>output<\/code> Modus in <strong>next.config.js<\/strong>:<\/p>\n<pre><code class=\"language-js\">const nextConfig = {\n    output: 'export',\n};<\/code><\/pre>\n<p>Wenn du dein Projekt erstellst, wird Next.js nun einen Ordner erstellen, <strong>der<\/strong> die <a href=\"https:\/\/kinsta.com\/de\/blog\/was-ist-html\/\">HTML-<\/a>, <a href=\"https:\/\/kinsta.com\/de\/blog\/css-best-practices\/\">CSS-<\/a> und <a href=\"https:\/\/kinsta.com\/javascript\/\">JavaScript-Assets<\/a> f\u00fcr deine Anwendung enth\u00e4lt.<\/p>\n<p>Seit Version 13 ist es m\u00f6glich, Next.js als statische Website zu starten und sp\u00e4ter optional auf Funktionen zu aktualisieren, die einen Server erfordern. Wenn du Serverfunktionen verwendest, werden beim Erstellen deiner Seiten keine statischen Seiten erzeugt.<\/p>\n<p>Bei der dynamischen Route zum Beispiel holst du die Daten dynamisch ab. Du musst in der Lage sein, alle Beitr\u00e4ge statisch zu erstellen. Das kannst du mit der Funktion <code>generateStaticParams<\/code> machen.<\/p>\n<p>Die Funktion wird in Kombination mit dynamischen Routensegmenten verwendet, um Routen statisch zur Erstellungszeit zu generieren, anstatt bei Bedarf zur Anfragezeit. Wenn du erstellst, wird <code>generateStaticParams<\/code> ausgef\u00fchrt, bevor die entsprechenden Layouts oder Seiten generiert werden.<\/p>\n<p>Verwende in <strong>[postID]\/page.js<\/strong> die Funktion <code>generateStaticParams<\/code>, um alle Posts zu routen:<\/p>\n<pre><code class=\"language-js\">export async function generateStaticParams() {\n    const response = await fetch(\n        `${process.env.NEXT_PUBLIC_WORDPRESS_API_URL}\/posts`\n    );\n    const posts = await response.json();\n\n    return posts.map((post) =&gt; ({\n        postId: post.id.toString(),\n    }));\n}<\/code><\/pre>\n<p>Wenn du den Build-Befehl ausf\u00fchrst, erzeugt dein Next.js-Projekt jetzt ein <strong>Out-Verzeichnis<\/strong> mit den statischen Dateien.<\/p>\n<h3>Next.js auf dem statischen Website-Hosting von Kinsta bereitstellen<\/h3>\n<p>Pushe deine Codes zu deinem bevorzugten Git-Anbieter (<a href=\"https:\/\/docs.sevalla.com\/applications\/git\/bitbucket#grant-access-to-the-kinsta-bitbucket-application\">Bitbucket<\/a>, <a href=\"https:\/\/docs.sevalla.com\/applications\/git\/github#authenticate-and-authorize\">GitHub<\/a> oder <a href=\"https:\/\/docs.sevalla.com\/applications\/git\/gitlab#authorize-the-kinsta-gitlab-application\">GitLab<\/a>). Befolge dann die folgenden Schritte, um deine statische Next.js-Site bei Kinsta einzurichten:<\/p>\n<ol start=\"1\">\n<li>Logge dich ein oder erstelle ein Konto, um dein <a href=\"https:\/\/my.kinsta.com\/?lang=de\" target=\"_blank\" rel=\"noopener noreferrer\">MyKinsta-Dashboard<\/a> zu sehen.<\/li>\n<li>Autorisiere Kinsta mit deinem Git-Anbieter.<\/li>\n<li>Klicke in der linken Seitenleiste auf <strong>Statische Seiten<\/strong> und dann auf <strong>Website hinzuf\u00fcgen<\/strong>.<\/li>\n<li>W\u00e4hle das Repository und den Zweig aus, von dem aus du deployen m\u00f6chtest.<\/li>\n<li>Gib deiner Site einen eindeutigen Namen.<\/li>\n<li>F\u00fcge die Build-Einstellungen in folgendem Format hinzu:\n<ul>\n<li><strong>Build-Befehl:<\/strong> <code>npm run build<\/code><\/li>\n<li><strong>Node-Version:<\/strong> <code>18.16.0<\/code><\/li>\n<li><strong>Verzeichnis ver\u00f6ffentlichen:<\/strong> <code>out<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<ol start=\"7\">\n<li>Zum Schluss klickst du auf <strong>Website erstellen<\/strong>.<\/li>\n<\/ol>\n<p>Und das war&#8217;s! Innerhalb weniger Sekunden hast du eine fertige Website. Du erh\u00e4ltst einen Link, \u00fcber den du auf die bereitgestellte Version deiner Website zugreifen kannst. Du kannst sp\u00e4ter deine <a href=\"https:\/\/docs.sevalla.com\/applications\/domains\">eigene Domain<\/a> und dein <a href=\"https:\/\/docs.sevalla.com\/applications\/domains#install-a-custom-ssl-certificate\">SSL-Zertifikat<\/a> hinzuf\u00fcgen, wenn du m\u00f6chtest.<\/p>\n<p>Als Alternative zum statischen Website-Hosting kannst du deine statische Website auch mit dem <a href=\"https:\/\/sevalla.com\/application-hosting\/\">Anwendungs-Hosting<\/a> Dienst von Kinsta bereitstellen. Dieser bietet eine gr\u00f6\u00dfere Hosting-Flexibilit\u00e4t, ein breiteres Spektrum an Vorteilen und Zugang zu robusteren Funktionen wie Skalierbarkeit, individuelle Bereitstellung mit einem Dockerfile und <a href=\"https:\/\/docs.sevalla.com\/applications\/analytics\">umfassende Analysen<\/a> mit Echtzeit- und historischen Daten. Au\u00dferdem musst du dein Next.js-Projekt nicht f\u00fcr statisches Rendering konfigurieren.<\/p>\n<h2>Zusammenfassung<\/h2>\n<p>In diesem Artikel hast du gelernt, wie du Headless WordPress in einem Next.js-Projekt nutzen kannst, um Beitr\u00e4ge dynamisch abzurufen und anzuzeigen. Dieser Ansatz erm\u00f6glicht die nahtlose Integration von WordPress-Inhalten in Next.js-Anwendungen und bietet ein modernes und dynamisches Web-Erlebnis.<\/p>\n<p>Das Potenzial der Headless CMS API geht \u00fcber die blo\u00dfe Anzeige von Beitr\u00e4gen hinaus; sie erm\u00f6glicht das Abrufen und Verwalten von Seiten, Kommentaren, Medien und mehr.<\/p>\n<p>Au\u00dferdem muss das Hosting deines WordPress-CMS neben deinen Frontend-Frameworks kein Problem sein. Mit dem <a href=\"https:\/\/my.kinsta.com\/?lang=de\" target=\"_blank\" rel=\"noopener noreferrer\">MyKinsta-Dashboard<\/a> von Kinsta hast du eine einheitliche Plattform, mit der du deine <a href=\"https:\/\/kinsta.com\/de\/wordpress-hosting\/\">WordPress-Websites<\/a>, <a href=\"https:\/\/sevalla.com\/application-hosting\/\">-Anwendungen<\/a>, <a href=\"https:\/\/sevalla.com\/database-hosting\/\">-Datenbanken<\/a> und statischen Websites ganz einfach verwalten kannst.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress gibt es seit \u00fcber 20 Jahren und betreibt laut W3Techs 42,7 % aller Websites im Internet. Au\u00dferdem h\u00e4lt es einen Marktanteil von 62,5 % bei &#8230;<\/p>\n","protected":false},"author":287,"featured_media":69320,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[945,951,999],"class_list":["post-69319","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-headless-cms","topic-javascript-frameworks","topic-wordpress-entwicklung"],"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>Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt- Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"In diesem Leitfaden erf\u00e4hrst du, wie du die Leistung deiner Website durch die Integration von WordPress mit Next.js, einem Top-Framework von React, verbessern kannst.\" \/>\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\/de\/blog\/headless-wordpress-next-js\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt\" \/>\n<meta property=\"og:description\" content=\"In diesem Leitfaden erf\u00e4hrst du, wie du die Leistung deiner Website durch die Integration von WordPress mit Next.js, einem Top-Framework von React, verbessern kannst.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-04T08:07:14+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-07T12:42:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.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=\"Joel Olawanle\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"In diesem Leitfaden erf\u00e4hrst du, wie du die Leistung deiner Website durch die Integration von WordPress mit Next.js, einem Top-Framework von React, verbessern kannst.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@olawanle_joel\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_DE\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Joel Olawanle\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"9\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/\"},\"author\":{\"name\":\"Joel Olawanle\",\"@id\":\"https:\/\/kinsta.com\/de\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07\"},\"headline\":\"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt\",\"datePublished\":\"2024-03-04T08:07:14+00:00\",\"dateModified\":\"2024-03-07T12:42:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/\"},\"wordCount\":1792,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/de\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg\",\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/\",\"url\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/\",\"name\":\"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt- Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg\",\"datePublished\":\"2024-03-04T08:07:14+00:00\",\"dateModified\":\"2024-03-07T12:42:23+00:00\",\"description\":\"In diesem Leitfaden erf\u00e4hrst du, wie du die Leistung deiner Website durch die Integration von WordPress mit Next.js, einem Top-Framework von React, verbessern kannst.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Headless CMS\",\"item\":\"https:\/\/kinsta.com\/de\/thema\/headless-cms\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/de\/#website\",\"url\":\"https:\/\/kinsta.com\/de\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Schnelle, sichere und hochwertige Hosting-L\u00f6sungen\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/de\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/de\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/de\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/de\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/kinsta.com\/de\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/de\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/\",\"https:\/\/x.com\/Kinsta_DE\",\"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\/de\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07\",\"name\":\"Joel Olawanle\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/kinsta.com\/de\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g\",\"caption\":\"Joel Olawanle\"},\"description\":\"Joel is a Frontend developer working at Kinsta as a Technical Editor. He is a passionate teacher with love for open source and has written over 300 technical articles majorly around JavaScript and it's frameworks.\",\"sameAs\":[\"https:\/\/joelolawanle.com\/\",\"https:\/\/www.linkedin.com\/in\/olawanlejoel\/\",\"https:\/\/x.com\/olawanle_joel\",\"https:\/\/www.youtube.com\/@joelolawanle\"],\"gender\":\"male\",\"knowsAbout\":[\"JavaScript\",\"React\",\"Next.js\"],\"knowsLanguage\":[\"English\"],\"jobTitle\":\"Technical Editor\",\"worksFor\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/de\/blog\/author\/joelolawanle\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt- Kinsta\u00ae","description":"In diesem Leitfaden erf\u00e4hrst du, wie du die Leistung deiner Website durch die Integration von WordPress mit Next.js, einem Top-Framework von React, verbessern kannst.","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\/de\/blog\/headless-wordpress-next-js\/","og_locale":"de_DE","og_type":"article","og_title":"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt","og_description":"In diesem Leitfaden erf\u00e4hrst du, wie du die Leistung deiner Website durch die Integration von WordPress mit Next.js, einem Top-Framework von React, verbessern kannst.","og_url":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/","article_published_time":"2024-03-04T08:07:14+00:00","article_modified_time":"2024-03-07T12:42:23+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg","type":"image\/jpeg"}],"author":"Joel Olawanle","twitter_card":"summary_large_image","twitter_description":"In diesem Leitfaden erf\u00e4hrst du, wie du die Leistung deiner Website durch die Integration von WordPress mit Next.js, einem Top-Framework von React, verbessern kannst.","twitter_image":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg","twitter_creator":"@olawanle_joel","twitter_site":"@Kinsta_DE","twitter_misc":{"Verfasst von":"Joel Olawanle","Gesch\u00e4tzte Lesezeit":"9\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/"},"author":{"name":"Joel Olawanle","@id":"https:\/\/kinsta.com\/de\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07"},"headline":"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt","datePublished":"2024-03-04T08:07:14+00:00","dateModified":"2024-03-07T12:42:23+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/"},"wordCount":1792,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/de\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg","inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/","url":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/","name":"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt- Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg","datePublished":"2024-03-04T08:07:14+00:00","dateModified":"2024-03-07T12:42:23+00:00","description":"In diesem Leitfaden erf\u00e4hrst du, wie du die Leistung deiner Website durch die Integration von WordPress mit Next.js, einem Top-Framework von React, verbessern kannst.","breadcrumb":{"@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#primaryimage","url":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg","contentUrl":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/03\/all-how-to-use-wordpress-as-a-headless-cms-for-next-js.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/de\/blog\/headless-wordpress-next-js\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/de\/"},{"@type":"ListItem","position":2,"name":"Headless CMS","item":"https:\/\/kinsta.com\/de\/thema\/headless-cms\/"},{"@type":"ListItem","position":3,"name":"Wie man WordPress als Headless CMS f\u00fcr Next.js nutzt"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/de\/#website","url":"https:\/\/kinsta.com\/de\/","name":"Kinsta\u00ae","description":"Schnelle, sichere und hochwertige Hosting-L\u00f6sungen","publisher":{"@id":"https:\/\/kinsta.com\/de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/de\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/kinsta.com\/de\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/de\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/","https:\/\/x.com\/Kinsta_DE","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\/de\/#\/schema\/person\/efa7de30245ca15be5ce1dcacff89c07","name":"Joel Olawanle","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/kinsta.com\/de\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/051bf577ce2c837846a1db9eef184758?s=96&d=mm&r=g","caption":"Joel Olawanle"},"description":"Joel is a Frontend developer working at Kinsta as a Technical Editor. He is a passionate teacher with love for open source and has written over 300 technical articles majorly around JavaScript and it's frameworks.","sameAs":["https:\/\/joelolawanle.com\/","https:\/\/www.linkedin.com\/in\/olawanlejoel\/","https:\/\/x.com\/olawanle_joel","https:\/\/www.youtube.com\/@joelolawanle"],"gender":"male","knowsAbout":["JavaScript","React","Next.js"],"knowsLanguage":["English"],"jobTitle":"Technical Editor","worksFor":"Kinsta","url":"https:\/\/kinsta.com\/de\/blog\/author\/joelolawanle\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/posts\/69319","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/users\/287"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/comments?post=69319"}],"version-history":[{"count":6,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/posts\/69319\/revisions"}],"predecessor-version":[{"id":69378,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/posts\/69319\/revisions\/69378"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/translations\/de"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/translations\/nl"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/translations\/es"},{"href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69319\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/media\/69320"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/media?parent=69319"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/tags?post=69319"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/topic?post=69319"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}