Technologische Neuigkeiten, Bewertungen und Tipps!

Eine Kurzanleitung zur WordPress REST API

Eine Kurzanleitung zur WordPress REST API

Eine Kurzanleitung zur WordPress REST API

Das Web ist im letzten Jahrzehnt ziemlich gewachsen und WordPress ist ein wenig zurückgefallen. Immer mehr Anwendungen werden mit JavaScript ins Web gebracht und immer mehr dynamische Websites werden mit Sprachen wie Python und Ruby erstellt.

Die Entwickler des WordPress-Kerns und sogar einige professionelle WordPress-Entwickler sind der Meinung, dass die starke Abhängigkeit von PHP und die minimale Verwendung von JavaScript bei WordPress viel zu veraltet sind. Dieses Problem soll die WordPress REST API lösen.

Dies bedeutet nicht, dass WordPress sich von PHP abwendet, aber Entwickler sollten in Erwägung ziehen, JavaScript zu erlernen, wenn sie die Vorteile dieser API nutzen möchten.

Was ist die WordPress REST API?

Die REST-API ist kein neues Konzept. Tatsächlich definierte Roy Fielding den Begriff „Representational State Transfer“ im Jahr 2000, als er ihn zur Entwicklung von HTTP 1.1 und Uniform Resource Identifiers, besser bekannt als „URIs“, verwendete.

Sie wissen wahrscheinlich bereits, dass APIs die Struktur von Softwareanwendungen sind, die eine Reihe von Tools und Protokollen enthalten, mit denen Entwickler diese Anwendungen erstellen können. REST-APIs sind ähnlich, führen jedoch ihre Anfragen über das HTTP-Protokoll aus und empfangen ihre Antworten.

Herkömmliche APIs verwenden normalerweise PHP, Python und Ruby zum Erstellen von Anwendungen. Sie können auch andere Sprachen verwenden, diese sind jedoch die beliebtesten. REST-APIs erleichtern durch die Verwendung des HTTP-Protokolls die Verwendung anderer Programmiersprachen wie JavaScript.

WordPress REST API

Ich habe bereits erklärt, dass es bei der WordPress REST API weniger darum geht, WordPress von PHP abzuheben, sondern vielmehr darum, WordPress näher an den Rest des Webs heranzuführen. Es geht vielmehr darum, Entwicklern die Verwendung von Sprachen wie JSON und JavaScript zu erleichtern, damit WordPress zu einer vollwertigen Plattform wird, mit der sich weit mehr als nur herkömmliche Websites und Blogs erstellen lassen.

Hier ist die Erklärung von WordPress zur Einbindung von JSON in die WordPress REST API:

Die WordPress REST API bietet API-Endpunkte für WordPress-Datentypen, die es Entwicklern ermöglichen, remote mit Websites zu interagieren, indem sie JSON-Objekte (JavaScript Object Notation) senden und empfangen. JSON ist ein offenes Standarddatenformat, das leicht und für Menschen lesbar ist und wie Objekte in JavaScript aussieht; daher der Name. Wenn Sie Inhalte an die API senden oder eine Anfrage an sie stellen, wird die Antwort in JSON zurückgegeben. Dies ermöglicht Entwicklern, WordPress-Inhalte aus clientseitigem JavaScript oder aus externen Anwendungen zu erstellen, zu lesen und zu aktualisieren, selbst aus solchen, die in anderen Sprachen als PHP geschrieben sind.

Es wurde im Wesentlichen entwickelt, um die Lücke zwischen dem PHP, auf dem der WordPress-Kern basiert, und dem JavaScript zu schließen, das viele Webanwendungen heute verwenden. Die Infrastruktur für die WordPress REST API wurde dem WordPress-Kern in Version 4.4 (Codename „Clifford“) im Dezember 2015 hinzugefügt. Damals benötigte man ein Plugin, um die REST API zu verwenden. Der Rest dieser API, genauer gesagt die Inhaltsendpunkte, wurde dem WordPress-Kern jedoch in Version 4.7 (Codename „Vaughan“) im Dezember 2016 hinzugefügt, wodurch die Notwendigkeit für die WP REST API Plugin.

So funktioniert die WordPress REST API

Um zu verstehen, wie die WordPress REST API funktioniert, müssen Sie verstehen, wie HTTP-Anfragen und -Antworten funktionieren. Wenn Sie eine URL in die Adressleiste eines Browsers eingeben, ist das eine Anfrage. Wenn der Server die Website oder Anwendung für diese URL anzeigt, ist das eine Antwort.

Wenn Sie die WordPress REST API verwenden, werden Sie einige verschiedene Arten von Anfragen oder „HTTP-Methoden“ sehen. Hier sind die vier Haupttypen von HTTP-Methoden, die das Web verwendet:

  • ERHALTEN – Wird verwendet, um Daten vom Server abzurufen
  • POST – Wird verwendet, um Daten an den Server zu senden
  • SETZEN – Wird verwendet, um Daten auf dem Server zu ändern oder zu aktualisieren
  • LÖSCHEN – Wird verwendet, um Daten vom Server zu entfernen

Unter Berücksichtigung dieser einfachen Definitionen ist die Eingabe einer URL in einen Browser eine GET-Anfrage. Die Eingabe Ihrer Anmeldeinformationen für eine Website ist eine POST-Anfrage. Die Änderung Ihres aktuellen Passworts in ein neues ist eine PUT-Anfrage, während die Schließung Ihres Kontos eine DELETE-Anfrage ist.

Weitere Begriffe, die Ihnen auffallen werden, sind „Routen“ und „Endpunkte“. Eine Route ist normalerweise die URL oder ein Teil der URL, auf die Sie zugreifen möchten, während ein Endpunkt normalerweise die Antwort ist, die Sie vom Server erhalten.

Wenn externe Quellen HTTP-Anfragen an den Server senden, auf dem Ihre WordPress-Site gehostet wird, stellt die REST-API Ihre Daten auf sichere Weise bereit, indem sie auf diese Anfragen mit einer gemeinsamen Architektur und einem eigenen Satz von Protokollen antwortet.

Dadurch können WordPress-Inhalte wie Beiträge, Seiten und Kommentare als Rohdaten verarbeitet werden. Wir werden uns das gleich genauer ansehen. Der Hauptzweck besteht darin, Ihnen zu ermöglichen, Änderungen am Inhalt Ihrer Site vorzunehmen, ohne auf den WordPress-Administrationsbereich zugreifen zu müssen. Auf diese Weise können Sie mithilfe von JSON Änderungen an Ihrer Site vornehmen, deren Antworten Entwicklern verschiedene Möglichkeiten bieten, mit ihren Sites zu interagieren.

Lassen Sie uns ein wenig die Hände schmutzig machen, um zu sehen, wie das alles funktioniert.

Verwenden der WordPress-REST-API

Wir werden uns damit befassen, wie man tatsächlich verwenden die WordPress REST API, aber leider gibt es ein paar Schlüsselkonzepte, die wir zuerst durchgehen müssen, damit alles Sinn ergibt. Hier sind die Schlüsselkonzepte, aus denen diese API besteht:

  • Routen &038; Endpunkte
  • Anfragen
  • Antworten
  • Schema
  • Controller-Klassen

Lasst uns anfangen.

Routen &038; Endpunkte

Die technische Definition einer Route ist eine URL, die über verschiedene HTTP-Methoden zugeordnet werden kann. Die Zuordnung zwischen einer Route und einer HTTP-Methode wird als „Endpunkt“ bezeichnet. Sie können auf die WordPress REST API zugreifen und sehen, welche Routen und Endpunkte für Ihre Site verfügbar sind, indem Sie die Route „/wp-json/“ an das Ende Ihrer URL hinzufügen.

Sie können dies auf WordPress.org sehen, indem Sie https://www.wordpress.org/wp-json/:

Installieren Sie eine Erweiterung namens JSON-Viewer für Chrome (JSON-Viewer für Firefox verfügbar Hier), um dieses Durcheinander zu beseitigen:

Wenn Sie keine hübschen Permalinks verwenden, verwenden Sie „?rest_route=“ statt „wp-json“. So oder so sehen Sie hier ein Beispiel für eine Route und einen Endpunkt. „/wp-json/“ und „/?rest_route=/“ sind Routen. Sie ermöglichen Ihnen den Zugriff auf die WordPress-REST-API über die HTTP-Methode GET. Die Ihnen angezeigte WordPress-REST-API oder, wenn Sie so wollen, die Daten sind ein Endpunkt, der uns über eine JSON-Antwort bereitgestellt wird.

Anfragen

Die WordPress REST API verarbeitet Anfragen mit einer Klasse namens WP_REST_Request. Dies ist eine primäre Klasse in der WordPress REST API-Infrastruktur. Sie wird zum Speichern und Abrufen von Informationen für alle Ihre Anfragen verwendet.

Sie können Anfragen remote mit den HTTP-Methoden senden, die wir besprochen haben, oder Sie können sie wie gewohnt intern über PHP stellen.

Antworten

Antworten werden mit der Klasse WP_REST_Response verarbeitet. Eine Antwort sind, wie bereits erwähnt, die Daten, die Sie von einer Anfrage erhalten. Die API verwendet diese Klasse, um von Endpunkten gesendete Daten zurückzugeben. Sie kann auch Fehler zurückgeben.

Schema

Schema ist ein Konzept innerhalb der WordPress REST API, das verschiedenen Zwecken dient. Das API-Schema definiert die Datenstrukturen, die Endpunkte verwenden können, und enthält eine Liste der Eigenschaften, die die WordPress REST API zurückgeben kann. Es enthält auch die Parameter, die die API akzeptieren kann, und bietet Sicherheit, indem es die Anfragen validiert, die die API empfängt.

Controller-Klassen

Die WordPress REST API registriert Routen und Endpunkte, verarbeitet Anfragen, verwendet Schemata, um die verwendbaren Daten und Eigenschaften zu definieren, und generiert darüber hinaus API-Antworten. Die API und Sie als Entwickler müssen alle diese beweglichen Teile irgendwie verwalten können. Dafür gibt es Controller-Klassen. Sie ermöglichen es Ihnen, alle diese Elemente zu sammeln und an einem einzigen Ort zu organisieren.

Verwenden der WordPress REST-API, um über Endpunkte auf Ihre Inhalte zuzugreifen

Eine Route ist die URL, die Sie verwenden, um auf einen Endpunkt zuzugreifen, und ein Endpunkt ist die Antwort, die Sie vom Server erhalten. Wenn Sie die Beiträge Ihrer Site über die WordPress REST API abrufen möchten, verwenden Sie die Route „/wp/v2/posts/“. WordPress erklärt, dass „/wp-json/“ nicht in diesen längeren Routen enthalten ist, da es der „Basispfad für die API selbst“ ist. Die End-URL lautet „example.com/wp-json/wp/v2/posts“.

Wenn Sie über die API auf einen bestimmten Beitrag zugreifen möchten, fügen Sie einfach die ID des Beitrags an das Ende der URL an, sodass sie folgendermaßen aussieht: „example.com/wp-json/wp/v2/posts/123“

Wenn Sie nach Beiträgen suchen möchten, die eine bestimmte Phrase oder ein bestimmtes Schlüsselwort verwenden, verwenden Sie diesen Weg: „/wp/v2/posts?=search[ insert keyword here]“, daher sieht die URL folgendermaßen aus: „example.com/wp-json/wp/v2/posts?search[insert keyword here].

Wenn Sie über die API auf das Profil eines bestimmten Benutzers zugreifen möchten, fügen Sie der Route „/users/“ sowie die Benutzer-ID dieses Benutzers hinzu. Die URL sieht dann folgendermaßen aus: „example.com/wp-json/wp/v2/users/2“. Wenn Sie auf die Benutzer einer Site zugreifen möchten, lassen Sie die ID weg, sodass die URL folgendermaßen aussieht: „example.com/wp-json/wp/v2/users/“.

Sie können weitere Endpunkte anzeigen Hier.

Erweitern der REST-API

Wir überspringen ein paar Schritte und lernen, wie man die Eigenschaften der REST-API verwendet, um sie zu erweitern. Sie sollten sich vorher mit Dingen wie globalen Parametern, Paginierung, Verknüpfen und Einbetten sowie Authentifizierung vertraut machen, aber für die Zwecke dieser Schnellstartanleitung überspringen wir diese Schritte.

Durch die Erweiterung der REST-API können Sie Folgendes erreichen:

  • Benutzerdefinierte Endpunkte hinzufügen
  • Erstellen Sie Routen für benutzerdefinierte Beitragstypen und benutzerdefinierte Taxonomien
  • Antworten ändern

Wenn Sie ein erfahrener Entwickler sind, sind Sie wahrscheinlich bereits mit den Konzepten vertraut, die zum Hinzufügen eines benutzerdefinierten Endpunkts zur REST-API erforderlich sind. Sie müssen nur lernen, wie Sie die beiden verbinden.

Sie beginnen mit der Erstellung einer Funktion, die einfach oder kompliziert sein kann, je nachdem, wie komplex die Funktionalität ist, die Sie der REST-API hinzufügen möchten. Hier ist die einfache Funktion, die WordPress in seinem Handbuch bereitstellt. Sie dient dazu, die Titel der neuesten Beiträge Ihrer Site nach Autor zu erfassen:



    
            
    
    		    

Your Header Sidebar area is currently empty. Hurry up and add some widgets.