{"id":69684,"date":"2024-04-08T19:24:29","date_gmt":"2024-04-08T18:24:29","guid":{"rendered":"https:\/\/kinsta.com\/de\/?p=69684&#038;preview=true&#038;preview_id=69684"},"modified":"2024-04-15T09:01:43","modified_gmt":"2024-04-15T08:01:43","slug":"wp-rest-api-benutzerdefinierter-endpunkt","status":"publish","type":"post","link":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/","title":{"rendered":"WordPress f\u00fcr Entwickler anpassen: Entwicklung eigener REST-API-Endpunkte"},"content":{"rendered":"<p><a href=\"https:\/\/kinsta.com\/de\/blog\/was-ist-wordpress\/\">WordPress<\/a> ist eines der weltweit beliebtesten <a href=\"https:\/\/kinsta.com\/de\/blog\/content-management-system\/\">Content Management Systeme<\/a> (CMS), das kleinen und gro\u00dfen Unternehmen hilft, verschiedene Formen von Website-Inhalten einzurichten und zu erstellen. Aber WordPress hat sich \u00fcber die Unterst\u00fctzung traditioneller Blog-Inhalte hinaus entwickelt &#8211; und das ist vor allem der WordPress REST API zu verdanken.<\/p>\n<p>Die <a href=\"https:\/\/kinsta.com\/de\/blog\/wordpress-rest-api\/\">WordPress REST API<\/a> verbindet WordPress mit anderen externen Webanwendungen. Sie erm\u00f6glicht eine leichter zug\u00e4ngliche Kommunikation und hilft dir dabei, ansprechende Webangebote zu erstellen, die sich nahtlos in die CMS-Plattform integrieren.<\/p>\n<p>Diese API verwendet Endpunkte, um WordPress-Inhalte als JSON-Objekte abzurufen und zu bearbeiten. Mit diesen Endpunkten kannst du WordPress-Inhalte aus der Ferne erstellen, lesen, aktualisieren und l\u00f6schen (CRUD), ohne dich in das <a href=\"https:\/\/kinsta.com\/de\/blog\/wordpress-admin\/\">WordPress-Administratorkonto<\/a> einloggen zu m\u00fcssen, was die Flexibilit\u00e4t erh\u00f6ht und die Funktionalit\u00e4t von WordPress \u00fcber die Kernfunktionen hinaus erweitert.<\/p>\n<p>In diesem Leitfaden erf\u00e4hrst du, was die WordPress REST API ist, welche Vorteile sie bietet, wie sie die Basisfunktionen von WordPress erweitert und wie du einen benutzerdefinierten Endpunkt erstellst, registrierst und darauf zugreifst.<\/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>Voraussetzungen<\/h2>\n<p>Um diesem Tutorial zu folgen, brauchst du:<\/p>\n<ul>\n<li>Kenntnisse der REST API<\/li>\n<li>Eine WordPress-Website (du kannst <a href=\"https:\/\/kinsta.com\/de\/docs\/wordpress-hosting\/wordpress-erste-schritte\/neue-seite\/\">sie ganz einfach \u00fcber das MyKinsta-Dashboard<\/a> einrichten)<\/li>\n<li>Kenntnisse im Umgang mit <a href=\"https:\/\/kinsta.com\/de\/blog\/was-ist-wordpress\/\">WordPress<\/a> und <a href=\"https:\/\/kinsta.com\/de\/blog\/was-ist-php\/\">PHP<\/a><\/li>\n<\/ul>\n<h2>Verstehen der WordPress REST API<\/h2>\n<p>Die WordPress REST API ist eine leistungsstarke Schnittstelle, mit der du \u00fcber <a href=\"https:\/\/kinsta.com\/de\/thema\/http-status-codes\/\">Standard-HTTP-Methoden<\/a> programmatisch mit WordPress-Websites interagieren kannst.<\/p>\n<p>Zu den Standardfunktionen geh\u00f6ren der Zugriff auf und die Bearbeitung von verschiedenen Arten von WordPress-Daten, wie z. B. Beitr\u00e4ge, Seiten, Kommentare, Benutzer und Taxonomien, in einem strukturierten JSON-Format. Du kannst auch aus der Ferne CRUD-Aktionen auf Inhalte durchf\u00fchren.<\/p>\n<p>Der wahre Wert der WordPress REST API liegt jedoch in ihrer Erweiterbarkeit durch benutzerdefinierte Endpunkte. Du kannst benutzerdefinierte Endpunkte erstellen, um die API an bestimmte Bed\u00fcrfnisse anzupassen, z. B. um zus\u00e4tzliche Funktionen, Dienste von Drittanbietern oder einzigartige Datenstrukturen zu integrieren. Dank dieser Flexibilit\u00e4t kannst du sehr individuelle und funktionsreiche Anwendungen auf der Grundlage von WordPress entwickeln.<\/p>\n<h2>So planst du deinen benutzerdefinierten API-Endpunkt<\/h2>\n<p>Die Planung der Struktur und des Zwecks deiner benutzerdefinierten Endpunkte ist der Schl\u00fcssel f\u00fcr eine effiziente API-Entwicklung. Benutzerdefinierte Endpunkte, die auf deine spezifischen Bed\u00fcrfnisse zugeschnitten sind, m\u00fcssen sorgf\u00e4ltig geplant werden, um optimale Funktionalit\u00e4t zu gew\u00e4hrleisten. Eine strategische Planung erleichtert die Skalierbarkeit und Anpassungsf\u00e4higkeit und macht die Endpunkte zukunftssicher, damit sie den sich entwickelnden Gesch\u00e4ftsanforderungen gerecht werden.<\/p>\n<p>Die Planung deiner benutzerdefinierten API-Endpunkte vor der Implementierung hilft:<\/p>\n<ul>\n<li><strong>Klarheit \u00fcber die Funktion des Endpunkts<\/strong> &#8211; Die Planung deines Endpunkts kl\u00e4rt die spezifische Funktion des Endpunkts, seine erwarteten Datentypen und seine Verwendung.<\/li>\n<li><strong>Konsistenz und Entwicklungseffizienz<\/strong> &#8211; Die Planung sorgt auch f\u00fcr Konsistenz bei der Verwendung der Endpunkte, Antworttypen und Formatierung, was die Interaktion mit der API verbessert. Au\u00dferdem erm\u00f6glicht die Kenntnis des Zwecks der API eine ordnungsgem\u00e4\u00dfe Implementierung, was die Entwicklungszeit und das Fehlerrisiko verringert.<\/li>\n<li><strong>Skalierbarkeit und Anpassungsf\u00e4higkeit<\/strong> &#8211; Wenn du den Bedarf deines Endpunkts festlegst, ist er zukunftssicher und kann sich an ver\u00e4nderte Gesch\u00e4ftsanforderungen anpassen, ohne dass ein komplettes Redesign erforderlich ist.<\/li>\n<li><strong>Sicherheit <\/strong>&#8211; Die richtige Planung des Endpunkts hilft dabei, die Notwendigkeit einer Authentifizierung f\u00fcr den Zugriff auf oder die Bearbeitung von Daten zu bestimmen. Der Zugriff auf Inhalte \u00fcber die API erfordert manchmal keine Benutzerauthentifizierung. F\u00fcr Inhalte, die sensible oder nicht autorisierte Daten enthalten, ist es jedoch wichtig, Sicherheitsanforderungen zu definieren und Ma\u00dfnahmen wie Autorisierung und Zugriffskontrollen zu implementieren, um die Datensicherheit zu gew\u00e4hrleisten.<\/li>\n<\/ul>\n<p>In den folgenden praktischen Abschnitten wird erkl\u00e4rt, wie du einen benutzerdefinierten Endpunkt erstellst, der unter <code>site-domain\/wp-json\/custom\/v2\/testimonials<\/code> verf\u00fcgbar ist, um Kundenstimmen von einer WordPress-Datenbank-Website abzurufen.<\/p>\n<p>Nachdem du eine Anfrage gesendet hast, gibt der Endpunkt ein JSON-Objekt zur\u00fcck, das Informationen \u00fcber die Kundenstimmen auf deiner WordPress-Website enth\u00e4lt, wie sie in deiner Callback-Funktion definiert sind.<\/p>\n<p>Lass uns eintauchen!<\/p>\n<h2>Erstelle einen benutzerdefinierten Beitragstyp f\u00fcr deinen Endpunkt<\/h2>\n<p>Zuerst musst du einen benutzerdefinierten Beitragstyp erstellen.<\/p>\n<ol start=\"1\">\n<li>Navigiere im Bereich <strong>Erscheinungsbild<\/strong>\u00a0deines <a href=\"https:\/\/kinsta.com\/de\/blog\/wordpress-admin\/\">WordPress-Admin-Dashboards<\/a> zum <strong>Theme-Dateieditor<\/strong>.<\/li>\n<li>\u00d6ffne die Datei <strong>function.php<\/strong> deines Themes und f\u00fcge den folgenden Code ein:\n<pre><code class=\"language-php\">function create_custom_testimonial_type() {\n    register_post_type('testimonials', array(\n        'labels' =&gt; array(\n            'name' =&gt; 'Testimonials',\n            'singular_name' =&gt; 'Testimonial',\n        ),\n        'public' =&gt; true,\n        'has_archive' =&gt; true,\n        'show_in_rest' =&gt; true, \/\/ This enables REST API support\n    ));\n}\nadd_action('init', 'create_custom_testimonial_type');<\/code><\/pre>\n<p>Dieser Code erstellt einen benutzerdefinierten &#8222;Testimonials&#8220;<a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/register_post_type\/\" target=\"_blank\" rel=\"noopener noreferrer\">-Posttyp<\/a> und aktiviert die WordPress REST API-Unterst\u00fctzung (<code>'show_in_rest' =&gt; true<\/code>). Die <code><a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/add_action\/\" target=\"_blank\" rel=\"noopener noreferrer\">add_action hook<\/a><\/code> ruft die Callback-Funktion <code>create_testimonial_type<\/code> auf und startet sie w\u00e4hrend der Ausf\u00fchrung.<\/p>\n<p>Du kannst die Bezeichnungen und Argumente anpassen, indem du sie entfernst oder hinzuf\u00fcgst, um sie an deine Bed\u00fcrfnisse anzupassen.<\/li>\n<li>Klicke auf <strong>Datei aktualisieren<\/strong>, um deine \u00c4nderungen zu speichern.\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/03\/creating-custom-testimonial-post-type.jpg\" alt=\"Screenshot des Codes in der Datei functions.php, der einen benutzerdefinierten \"Testimonial\"-Posttyp erstellt\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Erstellen eines <code>custom_testimonial<\/code> Beitragstyps<\/figcaption><\/figure>\n<p>Aktualisiere das Dashboard, um zu sehen, dass die Option <strong>Testimonials<\/strong> zu deinem WordPress-Dashboard hinzugef\u00fcgt wurde.<\/p>\n<p><figure id=\"attachment_105526\" aria-describedby=\"caption-attachment-105526\" style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/03\/post-type-created.jpg\" alt=\"Screenshot showing the newly created testimonial post type\" width=\"1001\" height=\"471\"><figcaption id=\"caption-attachment-105526\" class=\"wp-caption-text\">Der neu erstellte Beitragstyp &#8222;Testimonials&#8220;.<\/figcaption><\/figure><\/li>\n<li>Erstelle einen neuen Beitrag mit Testimonials, indem du auf <strong>Testimonials &gt; Neuen Beitrag hinzuf\u00fcgen<\/strong> klickst. Du kannst den <strong>Pullquote-Block<\/strong> verwenden. Je nachdem, wie du dein Zeugnis pr\u00e4sentierst, kannst du auch andere Bl\u00f6cke verwenden.<\/li>\n<\/ol>\n<p>Hier sind zwei Beispiele f\u00fcr Zeugnisse, die mit dem Pullquote-Block erstellt wurden:<\/p>\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/03\/two-testimonials-added.jpg\" alt=\"Screenshot der beiden Testimonials, die mit dem Pullquote-Block erstellt wurden\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Neu erstellte Testimonials<\/figcaption><\/figure>\n<h2>Einen benutzerdefinierten Endpunkt in WordPress registrieren<\/h2>\n<p>Wenn du einen benutzerdefinierten Endpunkt registrierst, steht er \u00fcber die REST-API zur Verf\u00fcgung. Dazu musst du die Funktion <code>register_rest_route<\/code> verwenden, sie \u00fcber den <code><a href=\"https:\/\/developer.wordpress.org\/reference\/hooks\/rest_api_init\/\" target=\"_blank\" rel=\"noopener noreferrer\">rest_api_init<\/a><\/code> Hook aufrufen und eine Callback-Methode bereitstellen, die aufgerufen wird, wenn die Route aufgerufen wird.<\/p>\n<p>F\u00fcge den folgenden Code in die Datei <strong>function.php<\/strong> deines Themes ein:<\/p>\n<pre><code class=\"language-php\">add_action( 'rest_api_init', 'register_testimonial_rest_route' );\n \nfunction register_testimonial_rest_route(){\n\tregister_rest_route(\n\t\t'custom\/v2',\n\t\t'\/testimonials',\n\t\tarray(\n\t\t\t'methods' =&gt; 'GET',\n\t\t\t'callback' =&gt; 'get_testimonials',\n\t\t)\n\t);\n}<\/code><\/pre>\n<p>Diese <code><a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/register_rest_route\/\" target=\"_blank\" rel=\"noopener noreferrer\">register_rest_route()<\/a><\/code> nimmt drei Parameter entgegen:<\/p>\n<ul>\n<li><strong>Route Namespace<\/strong> (<code>$route_namespace<\/code>) &#8211; Dies ist der erste Teil des URL-Segments und sollte dem Vendor\/Versionsnummer-Muster folgen. Der Vendor steht f\u00fcr den Slug des Anbieters oder Themes. Der Namespace hilft bei der Unterscheidung der Endpunkte und erleichtert es den Kunden, den Support f\u00fcr deinen benutzerdefinierten Endpunkt zu kontaktieren. In diesem Leitfaden wird der Namespace <code>custom\/v2<\/code> verwendet.<\/li>\n<li><strong>Die Basis-URL <\/strong> (<code>$route<\/code>) &#8211; Sie folgt auf den Namespace und ist eine URL, die einer Methode zugeordnet ist. Du kannst mehr als einen einzigen Endpunkt f\u00fcr deine Route registrieren. F\u00fcr diesen Leitfaden verwendest du die Route <code>\/testimonials<\/code>, die dem Endpunkt mitteilt, dass er Zeugnisse abrufen soll.<\/li>\n<li><strong>Die Optionen des Endpunkts (<code>$args<\/code>) &#8211; Hier handelt es sich um ein Array, das die HTTP-Methode enth\u00e4lt, die beim Aufruf der Route verwendet wird, sowie die Callback-Funktion, die der Endpunkt aufruft, wenn du eine Anfrage sendest. Wir werden diese Callback-Funktion im n\u00e4chsten Abschnitt n\u00e4her erl\u00e4utern.<\/strong><\/li>\n<\/ul>\n<p>Zum Schluss notierst du dir die Adresse deines Endpunkts. Das Format f\u00fcr einen Endpunkt ist <code>site-address\/wp-json\/namespace\/route<\/code>. In diesem Beispiel lautet der Endpunkt also <code>https:\/\/www.staging.kidspartysanctuary.co.uk\/wp-json\/custom\/v2\/testimonials<\/code>.<\/p>\n<h2>Implementiere die Callback-Funktion f\u00fcr den Endpunkt<\/h2>\n<p>Nachdem du den benutzerdefinierten Beitragstyp erstellt und deinen benutzerdefinierten Endpunkt registriert hast, musst du im n\u00e4chsten Schritt deine Callback-Funktion schreiben. Diese Callback-Funktion wird jedes Mal aufgerufen, wenn auf den Endpunkt zugegriffen wird.<\/p>\n<ol start=\"1\">\n<li>Deklariere deine <code>get_testimonials<\/code> Callback-Funktion mit dem unten stehenden Code:\n<pre><code class=\"language-php\">function get_testimonials(){\n\n}<\/code><\/pre>\n<\/li>\n<li>Initialisiere ein leeres Testimonials-Array, um die abgerufenen WordPress-Testimonial-Daten zu speichern:\n<pre><code class=\"language-php\">$testimonials = array();<\/code><\/pre>\n<\/li>\n<li>Richte ein Array namens <code>$args<\/code> mit Abfrageparametern f\u00fcr einen <code><a href=\"https:\/\/developer.wordpress.org\/reference\/classes\/wp_query\/\" target=\"_blank\" rel=\"noopener noreferrer\">WP_Query<\/a><\/code> aufruf.\n<pre><code class=\"language-php\">$args = array(\n    'post_type' =&gt; 'testimonials', \/\/specifies you want to query the custom post type   \n'testimonial',\n    'nopaging' =&gt; true,  \/\/ no pagination, but retrieve all testimonials at once\n),<\/code><\/pre>\n<\/li>\n<li>Erstelle eine Instanz der Klasse <code>WP_Query<\/code>, die das Array <code>$args<\/code> aufnimmt, eine Abfrage mit den angegebenen Parametern durchf\u00fchrt und die Ergebnisse der WordPress-Abfrage in der Variablen <code>$query<\/code> speichert.\n<pre><code class=\"language-php\">$query = new WP_Query($args)<\/code><\/pre>\n<\/li>\n<li>Schreibe eine bedingte Anweisung, um zu pr\u00fcfen, ob es Testimonial-Beitr\u00e4ge gibt. Erstelle dann eine <code>while<\/code> Schleife, um durch die Beitr\u00e4ge zu iterieren und die <code>title<\/code> und <code>content<\/code> der Testimonials zur\u00fcckzugeben.\n<pre><code class=\"language-php\">if ( $query-&gt;have_posts() ) {\n        while ( $query-&gt;have_posts() ) {\n            $query-&gt;the_post();\n            $testimonial_data = array( \/*an array that stores the title \nand content of every post*\/\n            'title' =&gt; get_the_title(),\n                'content' =&gt; get_the_content(),\n                \/\/ Add other fields as needed\n            );\n            $testimonials[] = $testimonial_data; \n        }\n        wp_reset_postdata(); \/* restores $post \nglobal to the current post to avoid any conflicts in subsequent queries*\/\n    }\n    return rest_ensure_response( $testimonials ); \/*ensures response is \ncorrectly set as a response object for consistency*\/<\/code><\/pre>\n<p>Hier ist der vollst\u00e4ndige Code:<\/p>\n<pre><code class=\"language-php\">function get_testimonials() {\n$testimonials = array();\n$args = array(\n    'post_type' =&gt; 'testimonials',\n    'nopaging' =&gt; true,\n);\n$query = new WP_Query( $args );\nif ( $query-&gt;have_posts() ) {\n    while ( $query-&gt;have_posts() ) {\n        $query-&gt;the_post();\n        $testimonial_data = array(\n            'title' =&gt; get_the_title(),\n            'content' =&gt; get_the_content(),\n            \/\/ Add other fields as needed\n        );\n        $testimonials[] = $testimonial_data;\n    }\n    wp_reset_postdata();\n}\nreturn rest_ensure_response( $testimonials );\n}<\/code><\/pre>\n<\/li>\n<li>Teste deinen Endpunkt mit <a href=\"https:\/\/www.postman.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Postman<\/a>, um zu \u00fcberpr\u00fcfen, ob du auf deine Daten zugreifen kannst.\n<figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/03\/testing-with-postman.png\" alt=\"Screenshot eines erfolgreichen Postman-API-Aufrufs an den benutzerdefinierten Endpunkt \"Testimonial\"\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Postman zeigt eine erfolgreiche Antwort an<\/figcaption><\/figure>\n<p>Du kannst dies auch mit einem Browser testen. Rufe den Endpunkt auf, indem du die URL <code>site-domain\/wp-json\/custom\/v2\/testimonials<\/code> in die Adresszeile deines Browsers eingibst.<\/p>\n<p><figure style=\"width: 1001px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2024\/03\/testing-with-browser.png\" alt=\"Screenshot des erfolgreichen Zugriffs auf den Endpunkt in einem Webbrowser\" width=\"1001\" height=\"471\"><figcaption class=\"wp-caption-text\">Das Browserergebnis, das beim Zugriff auf den Endpunkt erscheint<\/figcaption><\/figure><\/li>\n<\/ol>\n<h2>Zusammenfassung<\/h2>\n<p>In diesem Leitfaden wurde erkl\u00e4rt, wie du einen benutzerdefinierten WordPress-API-Endpunkt implementierst. Damit Nutzer auf die Daten deiner WordPress-Datenbank zugreifen und mit ihnen interagieren k\u00f6nnen, musst du nur die Route registrieren, die eine Callback-Funktion implementiert.<\/p>\n<p>Willst du wissen, wie du WordPress f\u00fcr dein Unternehmen optimal nutzen kannst? Kinsta bietet zahlreiche erweiterte Optionen im Rahmen unseres <a href=\"https:\/\/kinsta.com\/de\/wordpress-hosting\/\">Managed WordPress Hosting Service<\/a> an, um deine individuellen Gesch\u00e4ftsanforderungen zu erf\u00fcllen. Eine besondere Option ist das <a href=\"https:\/\/kinsta.com\/de\/docs\/wordpress-hosting\/kinsta-mu-plugins\/\">Kinsta MU-Plugin (Must-Use)<\/a>, das das Caching f\u00fcr deine Website verwaltet und implementiert, um die Latenzzeit zu verringern und die Leistung zu verbessern. <a href=\"https:\/\/kinsta.com\/de\/anmelden\/wp\/\">Teste Kinsta noch heute<\/a>!<\/p>\n<p><em>Was h\u00e4ltst du von der Entwicklung eigener WordPress-API-Endpunkte? Hast du schon welche entwickelt? Wir w\u00fcrden uns freuen, von deinen Erfahrungen zu h\u00f6ren. Teile sie in den Kommentaren unten mit.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress ist eines der weltweit beliebtesten Content Management Systeme (CMS), das kleinen und gro\u00dfen Unternehmen hilft, verschiedene Formen von Website-Inhalten einzurichten und zu erstellen. Aber WordPress &#8230;<\/p>\n","protected":false},"author":199,"featured_media":69685,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[925,999,1009],"class_list":["post-69684","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-api","topic-wordpress-entwicklung","topic-wordpress-themes"],"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 benutzerdefinierte WordPress REST API Endpunkte erstellt - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Erfahre, wie du deine WordPress-Website durch das Erstellen von benutzerdefinierten Beitragstypen und das Konfigurieren ihrer REST-API-Endpunkte 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\/wp-rest-api-benutzerdefinierter-endpunkt\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"WordPress f\u00fcr Entwickler anpassen: Entwicklung eigener REST-API-Endpunkte\" \/>\n<meta property=\"og:description\" content=\"Erfahre, wie du deine WordPress-Website durch das Erstellen von benutzerdefinierten Beitragstypen und das Konfigurieren ihrer REST-API-Endpunkte verbessern kannst.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/\" \/>\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-04-08T18:24:29+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-15T08:01:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api.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=\"Erfahre, wie du deine WordPress-Website durch das Erstellen von benutzerdefinierten Beitragstypen und das Konfigurieren ihrer REST-API-Endpunkte verbessern kannst.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-1024x512.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@Kinsta_DE\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_DE\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeremy Holcombe\" \/>\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\/wp-rest-api-benutzerdefinierter-endpunkt\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/\"},\"author\":{\"name\":\"Jeremy Holcombe\",\"@id\":\"https:\/\/kinsta.com\/de\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21\"},\"headline\":\"WordPress f\u00fcr Entwickler anpassen: Entwicklung eigener REST-API-Endpunkte\",\"datePublished\":\"2024-04-08T18:24:29+00:00\",\"dateModified\":\"2024-04-15T08:01:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/\"},\"wordCount\":1396,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/de\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-2.jpg\",\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/\",\"url\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/\",\"name\":\"Wie man benutzerdefinierte WordPress REST API Endpunkte erstellt - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-2.jpg\",\"datePublished\":\"2024-04-08T18:24:29+00:00\",\"dateModified\":\"2024-04-15T08:01:43+00:00\",\"description\":\"Erfahre, wie du deine WordPress-Website durch das Erstellen von benutzerdefinierten Beitragstypen und das Konfigurieren ihrer REST-API-Endpunkte verbessern kannst.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-2.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-2.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/de\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API\",\"item\":\"https:\/\/kinsta.com\/de\/thema\/api\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"WordPress f\u00fcr Entwickler anpassen: Entwicklung eigener REST-API-Endpunkte\"}]},{\"@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\/4eee42881d7b5a73ebb4f58dd5223b21\",\"name\":\"Jeremy Holcombe\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/kinsta.com\/de\/#\/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\/de\/blog\/author\/jeremyholcombe\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Wie man benutzerdefinierte WordPress REST API Endpunkte erstellt - Kinsta\u00ae","description":"Erfahre, wie du deine WordPress-Website durch das Erstellen von benutzerdefinierten Beitragstypen und das Konfigurieren ihrer REST-API-Endpunkte 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\/wp-rest-api-benutzerdefinierter-endpunkt\/","og_locale":"de_DE","og_type":"article","og_title":"WordPress f\u00fcr Entwickler anpassen: Entwicklung eigener REST-API-Endpunkte","og_description":"Erfahre, wie du deine WordPress-Website durch das Erstellen von benutzerdefinierten Beitragstypen und das Konfigurieren ihrer REST-API-Endpunkte verbessern kannst.","og_url":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/Kinsta-Deutschland-207459890108303\/","article_published_time":"2024-04-08T18:24:29+00:00","article_modified_time":"2024-04-15T08:01:43+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api.jpg","type":"image\/jpeg"}],"author":"Jeremy Holcombe","twitter_card":"summary_large_image","twitter_description":"Erfahre, wie du deine WordPress-Website durch das Erstellen von benutzerdefinierten Beitragstypen und das Konfigurieren ihrer REST-API-Endpunkte verbessern kannst.","twitter_image":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-1024x512.jpg","twitter_creator":"@Kinsta_DE","twitter_site":"@Kinsta_DE","twitter_misc":{"Verfasst von":"Jeremy Holcombe","Gesch\u00e4tzte Lesezeit":"9\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/"},"author":{"name":"Jeremy Holcombe","@id":"https:\/\/kinsta.com\/de\/#\/schema\/person\/4eee42881d7b5a73ebb4f58dd5223b21"},"headline":"WordPress f\u00fcr Entwickler anpassen: Entwicklung eigener REST-API-Endpunkte","datePublished":"2024-04-08T18:24:29+00:00","dateModified":"2024-04-15T08:01:43+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/"},"wordCount":1396,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/de\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-2.jpg","inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/","url":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/","name":"Wie man benutzerdefinierte WordPress REST API Endpunkte erstellt - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-2.jpg","datePublished":"2024-04-08T18:24:29+00:00","dateModified":"2024-04-15T08:01:43+00:00","description":"Erfahre, wie du deine WordPress-Website durch das Erstellen von benutzerdefinierten Beitragstypen und das Konfigurieren ihrer REST-API-Endpunkte verbessern kannst.","breadcrumb":{"@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#primaryimage","url":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-2.jpg","contentUrl":"https:\/\/kinsta.com\/de\/wp-content\/uploads\/sites\/5\/2024\/04\/wp-how-to-add-custom-endpoints-to-wordpress-rest-api-2.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/de\/blog\/wp-rest-api-benutzerdefinierter-endpunkt\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/de\/"},{"@type":"ListItem","position":2,"name":"API","item":"https:\/\/kinsta.com\/de\/thema\/api\/"},{"@type":"ListItem","position":3,"name":"WordPress f\u00fcr Entwickler anpassen: Entwicklung eigener REST-API-Endpunkte"}]},{"@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\/4eee42881d7b5a73ebb4f58dd5223b21","name":"Jeremy Holcombe","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/kinsta.com\/de\/#\/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\/de\/blog\/author\/jeremyholcombe\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/posts\/69684","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\/199"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/comments?post=69684"}],"version-history":[{"count":5,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/posts\/69684\/revisions"}],"predecessor-version":[{"id":69732,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/posts\/69684\/revisions\/69732"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/translations\/fr"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/translations\/jp"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/translations\/es"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/translations\/nl"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/translations\/de"},{"href":"https:\/\/kinsta.com\/de\/wp-json\/kinsta\/v1\/posts\/69684\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/media\/69685"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/media?parent=69684"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/tags?post=69684"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/de\/wp-json\/wp\/v2\/topic?post=69684"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}