Отправка данных с помощью JQuery, используя AJAX в WordPress

В этой статье я опишу способ, как без перезагрузки страницы передать данные в WordPress, используя JQuery.

По сути, отличия как такового нет, если бы мы просто рассматривали сайт написанный на php и использовали  JavaScript. При работе в Wordpres , мы в скрипте просто добавим одну строку, в которой передается название зарегистрированной функции, которая будет обрабатывать наши данные в  Wordpress. Дело в том, что в WordPress все запросы отправляются на один файл – /wp-admin/admin-ajax.php, а функция, которая будет обрабатывать этот запрос определяется или в  functions.php вашей темы, или это будет написанный вами плагин, где будет зарегистрирована функция обработчик AJAX запросов. В нашем случае, я буду приводить пример, где функцию мы будем размещать в functions.php.

Я рассмотрю варианты передачи значения некой переменой и передача массива с помощью метода JSON.

Для примера я, напишем код кнопки с value=”2”

Наша задача, получить значение value и передать его по технологии AJAX в функцию, которая получит это значение и результат вернет, который мы, с помощью alert, выведем на странице.

Пишем скрипт, который будет отрабатывать по клику кнопки <button>. Не забываем про подключенную библиотеку jquery.

В functions.php  пишем функцию, которая будет обрабатывать запрос:

Этого будет достаточно, чтобы обработать запрос, и вернуть ответ.

Теперь рассмотрим вариант, как передать массив данных. В качестве примера будем использовать поле input с type=”checkbox”. Представим ситуацию, нам нужно отобрать поля, где стоит отметка checkbox, и значение value передать массивом используя JSON

Пример:

Отбор полей будет также происходить по клику мышкой по кнопке <button>

Пишем скрипт:

Теперь изменим функцию в functions.php , для приема JSON данных. Мы примем все значение value, просуммируем их, и вернем результат на экран. Массив у нас получается вида {1,2,3}

Если бы у нас массив был вида:{“Input1”:100,”Input2”:200}, то добраться до значений массива, например к полю Input1, в php файле, можно было бы вот так:

Вот и все, все очень просто и без лишнего кода.

(Пока оценок нет)
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x