Для работы с API WP, нужно установить плагин JWT Authentication for WP-API. С помощью этого плагина можно организовать аутентификацию API, получив token.
Так же для тестирования WP API, можно скачать программу Postman.
Далее, для того чтобы мы могли получать, добавлять, изменять или удалять данные, нужно получить token.
Ссылка, указанная в в запросе на изображении — http://ithaz.loc/wp-json/jwt-auth/v1/token?username=Dmitriy&password=password
В данной ссылке вместо http://ithaz.loc/ укажите адресс Вашего WP сайта.
В программе Postman обязательно должен быть указан тип запроса — POST и добавлены два параметра — username и password, в значениях которых указаны Ваши идентификационные данные для wordpress.
Нажимаем кнопку Send и получаем в ответе — примерно такое содержимое:
{
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9pdGhhei5sb2MiLCJpYXQiOjE1NzM0NzQxOTgsIm5iZiI6MTU3MzQ3NDE5OCwiZXhwIjoxNTc0MDc4OTk4LCJkYXRhIjp7InVzZXIiOnsiaWQiOiIxIn19fQ.0ZYv2dyXwSZVFCbhyj8DHc9zB3OwAuX1yT9kuU1B0Sc",
"user_email": "dmitriyprogrammer@yandex.ru",
"user_nicename": "dmitriy",
"user_display_name": "Dmitriy"
}
Таким образом Мы получили token, он необходим для работы API WP.
Дальше можно протестировать работу API. Копируем token в буфер обмена и переходим в соседнюю вкладку Postman.
Прописываем ссылку — http://ithaz.loc/wp-json/wp/v2/posts/1 . Где http://ithaz.loc/ — Ваш домен WP. 1 — номер поста:
Указываем метод POST — изменение. Добавляем параметры — title — its my new title. В разделе Headers добавляем параметр Authorization, для него в value(значение) вставляемиз буфера обмена — «Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9pdGhhei5sb2MiLCJpYXQiOjE1NzM0NzMwNjksIm5iZiI6MTU3MzQ3MzA2OSwiZXhwIjoxNTc0MDc3ODY5LCJkYXRhIjp7InVzZXIiOnsiaWQiOiIxIn19fQ.XHt6-YetAjBm8A3L1xwvR5L18KlJLv1Dcx9lPUcDJek » — (ЗДЕСЬ ДОЛЖЕН БЫТЬ ВАШ TOKEN). Один момент, не знаю зачем добавлено перед ключом слово — Bearer , но без него не работает :-).
Нажимаем кнопку Send и видим примерно следующую картинку:
Мы видим, что title изменился, и это легко проверить зайдя на сайт.
Таким образом, мы смогли изменить title у поста №1, через REST API WP.
Если нужно изменить title через JavaScript, можно это сделать с помощью Ajax запроса:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script>
$.ajax({
type: "POST",
beforeSend: function(request) {
request.setRequestHeader("Authorization", 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9pdGhhei5sb2MiLCJpYXQiOjE1NzM0NzMwNjksIm5iZiI6MTU3MzQ3MzA2OSwiZXhwIjoxNTc0MDc3ODY5LCJkYXRhIjp7InVzZXIiOnsiaWQiOiIxIn19fQ.XHt6-YetAjBm8A3L1xwvR5L18KlJLv1Dcx9lPUcDJek');
},
url: "http://ithaz.loc/wp-json/wp/v2/posts/1",
data: "title=Ya molodec!!!",
success: function(msg){
console.info( " ");
}
});
</script>
На выходе имеем:
Пишите комментарии, друзья…если что-то не понятно, постараюсь помочь!