Передача данных между js и php при создании плагина на wordpress
Пишу плагин для расчета стоимости доставки интернет-магазина (woocommerce). У меня есть js-скрипт, который получает адрес и отдает расстояние в километрах до ближайшего филиала. Следуя документации, я создал шаблон плагина доставки и добавил туда возможность получать значения поля "адрес" в функции calculate_shipping(). Теперь, на сколько я понимаю, мне нужно передавать значение поля "адрес" в js-скрипт расчета, а потом получить из него (скорее всего ajax-запросом) расстояние в километрах. Вопрос в том как правильно это сделать? И можно ли вообще запустить js из php чтобы произвести расчет и получить обратно результат скрипта?
Скрипт не получится переписать на php, так как там я использую API Я.Карт.
Ответы (1 шт):
Запустить js скрипт из php можно, но назад в тот же php процесс результат получить нельзя.
Делать надо наоборот, используя ajax.
- PHP выводит форму с полем адреса.
- Js скрипт ждёт реакции пользователя, чтобы он выбрал адрес через Я.API.
- Получив ответ пользователя, скрипт заполняет поле формы с адресом и отправляет расстояние в километрах в php через ajax.
- Запускается новый процесс php, грузится ядро и плагины, ваш код получает управление и что-то там вычисляет (видимо, стоимость доставки).
- Эту стоимость доставки php возвращает в js как результат ajax запроса.
- Всё тот же скрипт, получив стоимость доставки, выводит её в нужном месте.