einführung ins wp rest api

19

Click here to load reader

Upload: wpmeetupka

Post on 12-Apr-2017

277 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Einführung ins WP REST API

WP REST API Einführung16.12.2015

Martin Sotirov

Page 2: Einführung ins WP REST API

Inhalt

• Definition

• Infrastruktur

• Endpoints

• Beispiele

Page 3: Einführung ins WP REST API

RESTful Web

• Representational State Transfer

• Im Jahr 2000 von Roy Fielding eingeführt

• Abstraktion der Struktur und des Verhaltens einer Webseite

GET http://example.com/authors/stephen-king

Page 4: Einführung ins WP REST API

Create Read Update Delete

• Create = POST

• Read = GET

• Update = PUT

• Delete = DELETE

Page 5: Einführung ins WP REST API

Operationen eines RESTful APIs

Inhalt GET PUT POST DELETE

Kollektion

/authors/

Kollektionlesen

Ganze Kollektion aktualisieren

Neues Element erstellen

Kollektionlöschen

Ein Element

/authors/stephen-king

Einziges Elementlesen

Einziges Element aktualisieren

Einziges Elementlöschen

Page 6: Einführung ins WP REST API

Auch WordPress wird RESTful

• 2013 von Ryan McCue als Plugin programmiert

• WordPress 4.4 hat schon die REST-Infrastruktur

• Die Endpoints kommen mit WP 4.5

• https://wordpress.org/plugins/rest-api/

Page 7: Einführung ins WP REST API

REST Infrastruktur

class WP_HTTP_Server { ... }

class WP_HTTP_Request { ... }

class WP_HTTP_Response { ... }

Klassen unter /wp-includes/rest-api/ zu findenHooks und Funktionen unter /wp-includes/rest-api.php

Page 8: Einführung ins WP REST API

Eigene Endpoints erstellen

Page 9: Einführung ins WP REST API

Eigene Endpoints erstellen

register_rest_route( $path, $methods );

Page 10: Einführung ins WP REST API

Eigene Endpoints erstellen

register_rest_route( $path, $methods );

Page 11: Einführung ins WP REST API

Eigene Endpoints erstellen

register_rest_route( $path, $methods );

Page 12: Einführung ins WP REST API

Core Endpoints

/wp/v2/posts//wp/v2/posts/59/

/wp/v2/pages//wp/v2/media//wp/v2/taxonomies//wp/v2/terms/category/

Page 13: Einführung ins WP REST API

CPT Endpoints

/wp/v2/authors/

Page 14: Einführung ins WP REST API

Custom Fields

/wp/v2/authors/

Page 15: Einführung ins WP REST API

Authentifizierung

• Generell nur GET-Operationen ohne Login

• Authentifizierung über Basic Auth, Cookie oder OAuth (v1)

Page 16: Einführung ins WP REST API

Authentifizierung

Post lesen Posts lesen Post aktualisieren Post erstellen

PublicPostMetalesen

PostMetaaktualisieren

PrivatePostMetalesen Usererstellen

Kommentarelesen Kommentareerstellen Kommentarelöschen Useraktualisieren

Page 17: Einführung ins WP REST API

Authentifizierungsmethoden

• Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQBase64 kodiert username:passwordhttps://wordpress.org/plugins/wp-basic-auth/

• X-WP-Nonce: 5b5c8435f2Mit wp_create_nonce('wp_rest') erstellen

• OAuth v1https://github.com/WP-API/OAuth1/

Page 18: Einführung ins WP REST API

Beispiele

Page 19: Einführung ins WP REST API

Fragen