@Emmet1

Как сделать отправку формы на Вордпресс с помощью Аякс?

Задача простая, сделать отправку формы на Аякс. По моему я аякс не правильно прописал, так как при отправки формі страница перезагружается, а не должна.
Форма выглядит так
<form action="" id="my-form" method="POST" >
<input type="text" name="name" required>
<input type="tel" name="phone" required>
<button typr="submit">Получить </button>
</form>

AJAX выглядит так:
<script type="text/javascript" >
        jQuery(document).ready(function($) {
          $('#my-form').submit(function(){
            data = {
              action: 'myaction',
              link: $('#my-form').serialize(),
            };
            var ajaxurl = "/wp-admin/admin-ajax.php";
          
            $.ajax({
              type: 'POST',
              url: ajaxurl,
              data: data,
              success: function(response) {
                alert('Отправленно!')
              }
            });
return false;
           });
        });
        </script>

А вот обработчик на пхп
add_action('wp_ajax_myaction', 'my_action_callback');
add_action('wp_ajax_nopriv_myaction', 'my_action_callback');
 

function my_action_callback(){
    $name= trim($_POST["name"]);
    $phone = trim($_POST["phone"]);

    $page_title = "Новая заявка с сайта";
    $message = "Телефон: $phone \nИмя: $name";
    mail('mail@yandex.ru', $page_title, $message, "Content-type: text/plain; charset=\"utf-8\"\n From: mail@yandex.ru" );
    wp_die();
}
  • Вопрос задан
  • 703 просмотра
Пригласить эксперта
Ответы на вопрос 1
Palych_tw
@Palych_tw
Типа веб-разработчик
prevenDefault не хватает
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы