Что такое WP REST API. Живые примеры

Что такое WP REST API.  Живые примеры

WP REST API - это интерфейс программирования приложений (API), который позволяет взаимодействовать с содержимым WordPress через HTTP-запросы. Он предоставляет возможность получать и отправлять данные из WordPress, используя стандартные HTTP-методы, такие как GET, POST, PUT, DELETE и т.д.

Вот несколько примеров использования WP REST API с живыми примерами кода:

1. Получение списка всех постов:

// Подключаемся к API WordPress $url = 'https://example.com/wp-json/wp/v2/posts'; $response = wp_remote_get( $url ); // Если запрос успешен, обрабатываем данные if( is_array( $response ) ) { $posts = json_decode( $response['body'] ); foreach( $posts as $post ) { echo $post->title->rendered; echo $post->content->rendered; } }

2. Создание нового поста:

// Подготавливаем данные для отправки $data = array( 'title' => 'Название нового поста', 'content' => 'Текст нового поста', 'status' => 'publish' );
// Отправляем POST-запрос на API WordPress $url = 'https://example.com/wp-json/wp/v2/posts'; $response = wp_remote_post( $url, array( 'method' => 'POST', 'headers' => array( 'Content-Type' => 'application/json', 'Authorization' => 'Basic ' . base64_encode( 'username:password' ) ), 'body' => json_encode( $data ) ) );
// Если пост успешно создан, выводим сообщение if( is_array( $response ) && !is_wp_error( $response ) ) { echo 'Пост успешно создан!'; }

3. Обновление существующего поста:

// Подготавливаем данные для отправки $data = array( 'title' => 'Новое название поста', 'content' => 'Новый текст поста' );
// Отправляем PUT-запрос на API WordPress $url = 'https://example.com/wp-json/wp/v2/posts/123'; $response = wp_remote_post( $url, array( 'method' => 'PUT', 'headers' => array( 'Content-Type' => 'application/json', 'Authorization' => 'Basic ' . base64_encode( 'username:password' ) ), 'body' => json_encode( $data ) ) );
// Если пост успешно обновлен, выводим сообщение if( is_array( $response ) && !is_wp_error( $response ) ) { echo 'Пост успешно обновлен!'; }

4. Удаление поста:

// Отправляем DELETE-запрос на API WordPress $url = 'https://example.com/wp-json/wp/v2/posts/123'; $response = wp_remote_request( $url, array( 'method' => 'DELETE', 'headers' => array( 'Authorization' => 'Basic ' . base64_encode( 'username:password' ) ) ) );
// Проверяем статус ответа $status_code = wp_remote_retrieve_response_code( $response );
// Если пост успешно удален, выводим сообщение if( $status_code === 200 ) { echo 'Пост успешно удален!'; } else { echo 'Ошибка удаления поста. Код ошибки: ' . $status_code; }
11
2 комментария