jQuery, а на нативном JS.
Обычно вывод поста я делаю так:
function ajaxPost(linkPost) {
jQuery.post(
ссылка на admin-ajax.php,
{
action: 'get_post',
link: linkPost
},
function (response) {
locationData.html(response)
});
};
Т.е. перехватываю полученную ссылку linkPost, по которой перешёл, пользователь, а затем отправляю её в admin-ajax.php На бэкенде этот запрос обрабатывается, и возвращается запрошенный пост в соответствующей html-разметке. Остаётся просто вставить ответ в нужное место.
А вот на нативном JS никак не получается. Идея вроде как такая, но всё затухло на стадии первого эксперимента:
function ajaxPost(linkPost) {
let request = new XMLHttpRequest();
request.open("POST", ссылка на admin-ajax.php);
request.send(?????????);
request.onreadystatechange = function() {
if (request.readyState != 4) return;
popupBooksContent.innerHTML = 'Готово!';
if (request.status != 200) {
alert(request.status + ': ' + request.statusText);
};
};
popupBooksContent.innerHTML = 'Загружаю...';
};
Я так и не нашёл, как мне передать action: 'get_post' и ссылку linkPost методом send() в функцию admin-ajax.php
Выдаётся ошибка 400: Bad request
Кто это делал на чистом JS, подскажите, пожалуйста.
выложи код в песочницу?
там все чуть сложнее чем просто ajax. На wp там тебе сначала нужна функция, чтобы обрабатывать эти запросы
тоже сталкивался с этим) в итоге решил через GET передавать параметры request.open('GET', ajaxUrl.url + '?action=название_функции&тут твои параметры которые хоттишь передать);
Обсуждают сегодня