2017-05-11 4 views
0

Ich habe einen Anwendungsserver in PHP geschrieben, und es muss mit einer WordPress-Bereitstellung durch WP REST API interagieren. Ich habe Schwierigkeiten, die REST-API des WP mit Authentifizierung aufzurufen. Zum Beispiel, wie erstelle ich einen Benutzer nach der Authentifizierung mit WP?Aufruf WordPress REST API vom Server

Die meisten Beispiele, die ich online gefunden habe, verwenden entweder Ajax oder Cookies zur Authentifizierung, die in der Serversituation nicht funktionieren.

Kann jemand vorschlagen?

+0

Wir verwenden php curl beim Aufruf anderer PHP-Endpunkte. Ich schlage vor, Sie können es sich ansehen: http://php.net/manual/en/book.curl.php. – carloliwanag

Antwort

1

Sie fragen also: Wie erstelle ich einen Benutzer nach der Authentifizierung mit WP? Ich denke, Sie haben keine Probem im Prozess der Authentifizierung. Wenn Sie PHP verwenden, können Sie PHP file_get_contents Funktion oder cURL verwenden brüllen ich Ihnen ein Beispiel mit PHP cURL geben

$post = array(
'username' => 'user2', 
'email'  => '[email protected]', 
'password' => 'somerandompassword'); 

$post = http_build_query($post); 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "http://localhost/wp/wp-json/wp/v2/users"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $post); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_USERPWD, "username" . ":" . "password" 
); 
$headers = array(); 
$headers[] = "Content-Type: application/x-www-form-urlencoded"; 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
$result = curl_exec($ch); 
if (curl_errno($ch)) { 
echo 'Error:' . curl_error($ch); 
} 
curl_close ($ch); 
print_r(json_decode($result, true), true); 

Sie können auch file_get_contents Funktion, wenn der Server aus irgendwelchen Gründen nicht verwenden können cURL verwenden. Sie können hier ein weiteres Beispiel von WP REST API mit php finden www.wpsaga.info/tag/wp-rest-api