Как взаимодействовать с WordPress JSON API с помощью PhP?

Я пытаюсь создать скрипт PhP, который будет автоматически публиковать статью на моем сайте WordPress (я использую CMS WordPress, это не сайт WordPress.com).

Вот что я сделал до сих пор:

Установка плагинов

Я установил и активировал WordPress JSON API и плагины Basic Auth на своем веб-сайте.

Библиотека и код

Я скачал WP REST php библиотека и я загрузил файлы в src в ту же папку, что и мой скрипт.

Вот код моего PHP-скрипта:

require_once( 'class-wp-rest-client.php' );
require_once( 'class-wp-rest-request.php' );
require_once( 'class-wp-rest-exception.php' );
require_once( 'class-wp-rest-transport.php' );
require_once( 'class-wp-rest-transport-curl.php' );
require_once( 'class-wp-rest-transport-wp-http-api.php' );
require_once( 'class-wp-rest-object.php' );
require_once( 'class-wpapi-rest-object-post.php' );
require_once( 'class-wpapi-rest-object-posts.php' );
require_once( 'class-wpapi-rest-client.php' );use WP_REST_Client;
use WP_REST_Request;
use WP_REST_Object;
use WP_REST_Exception;
use WP_REST_Transport;
use WP_REST_Transport_WP_HTTP_API;
use WP_REST_Transport_Curl;
use WPAPI_REST_Object_Post;
use WPAPI_REST_Object_Posts;
use WPAPI_REST_Basic_Auth_Client;$post_data=array(
'title' => 'New Post',
'content_raw' => 'This is a test'
);$wp_api_client = new WPAPI_REST_Basic_Auth_Client( 'http://example.com', 'login', 'password' );

if ($wp_api_client) echo "connected";

try {

$current_post = WPAPI_REST_Object_Post::initWithId( 1, $wp_api_client );
$current_post_data = $current_post->get();
echo 'Post Title:' . $current_post_data->ID;

} catch ( WP_REST_Exception $e ) { print_r($e); }

?>

И я получаю эту ошибку:

WP_REST_Exception Object ([message: protected] => ошибка HTTP для запроса; ответ:

Я не уверен, что ошибка исходит от того, что я неправильно использую библиотеку или нет. Кто-нибудь может мне помочь с этим?

Большое спасибо, ребята!

0

Решение

Для тех, у кого такая же проблема, похоже, что не работает плагин Basic Auth.

Для более эффективного API подключите свой сайт с JetPack к WordPress.com и используйте их API.

Ура,
Артур

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]