This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| programmieren:wordpress:rest_api_einrichten [2020/12/21 13:35] – jgehrke | programmieren:wordpress:rest_api_einrichten [2024/07/12 20:10] (current) – jgehrke | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Wordpress Rest-API Endpunkt einrichten ====== | ====== Wordpress Rest-API Endpunkt einrichten ====== | ||
| + | |||
| + | **AKTUALISIERTE VERSION MIT STATIC CLASS »» ** [[programmieren: | ||
| + | |||
| Mit diesem Script kann ein neuer Rest-API Endpunkt eingerichtet werden, der dann über die Website URL aufrufbar ist. In diesem Beispiel wird ein //News Endpunkt// erstellt, alles nur fiktiv, aber es zeigt wie man es macht. | Mit diesem Script kann ein neuer Rest-API Endpunkt eingerichtet werden, der dann über die Website URL aufrufbar ist. In diesem Beispiel wird ein //News Endpunkt// erstellt, alles nur fiktiv, aber es zeigt wie man es macht. | ||
| Line 19: | Line 22: | ||
| function register_news_endpoint(){ | function register_news_endpoint(){ | ||
| // http:// | // http:// | ||
| - | $namespace = ' | + | // ohne Slash am Anfang und Ende |
| + | $namespace = ' | ||
| /* type => string aus klein Großbuchsten, | /* type => string aus klein Großbuchsten, | ||
| /* ID => integer Zahl */ | /* ID => integer Zahl */ | ||
| Line 26: | Line 30: | ||
| ' | ' | ||
| ' | ' | ||
| + | ' | ||
| ]; | ]; | ||
| Line 50: | Line 55: | ||
| ]; | ]; | ||
| - | return$return_array; | + | return $return_array; |
| } | } | ||
| </ | </ | ||
| + | |||
| + | ===== Alternative Schreibweise als Klasse/ | ||
| + | |||
| + | Es ist sinnvoll die Registrierung der REST-API Route in Wordpress in eine eigene Klasse zu packen. Man verhindert Namenskonflikte, | ||
| + | |||
| + | <code php> | ||
| + | /** | ||
| + | * | ||
| + | */ | ||
| + | class CreateTrackingPoint | ||
| + | { | ||
| + | |||
| + | function __construct() | ||
| + | { | ||
| + | add_action( ' | ||
| + | } | ||
| + | |||
| + | public function register_endpoint() | ||
| + | { | ||
| + | // / | ||
| + | $namespace = ' | ||
| + | $route | ||
| + | $args | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ]; | ||
| + | |||
| + | register_rest_route( $namespace, $route, $args ); | ||
| + | } | ||
| + | |||
| + | public function render_endpoint( $request ) { | ||
| + | |||
| + | $user_id | ||
| + | | ||
| + | |||
| + | $return_array = [ | ||
| + | ' | ||
| + | ' | ||
| + | ]; | ||
| + | |||
| + | |||
| + | |||
| + | return $return_array; | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||