#php #ajax #wordpress
Вопрос:
Я пытался заменить элемент с помощью вызова ajax, но появляется ошибка вот мой код
script.js
jQuery(document).on('change','.joinee-filter-month',function(e){
e.preventDefault();
var category=jQuery(this).find('option:selected').val();
console.log(category);
jQuery.ajax({
type : "POST",
dataType: 'JSON',
url : "/wp-admin/admin-ajax.php",
data:{action:'month_filter',category:category},
success:function(response)
{
jQuery('.rowAppend').html(response);
},
error:function(response)
{
console.log("function not working");
}
})
function.php
function joinee_month_filter_function()
{
?>
<div>hello</div>
<?php
}
add_action('wp_ajax_month_filter', 'joinee_month_filter_function');
ошибка: функция не работает
Ответ №1:
в function.php
убедитесь, что вы вызываете функцию для вошедшего/гостевого пользователя
Для непользователей
https://developer.wordpress.org/reference/hooks/wp_ajax_nopriv_action/
Для пользователей
https://developer.wordpress.org/reference/hooks/wp_ajax_action/
function joinee_month_filter_function()
{
?>
<div>hello</div>
<?php
die();
}
add_action("wp_ajax_month_filter", "joinee_month_filter_function");
add_action("wp_ajax_nopriv_month_filter", "joinee_month_filter_function");
Также это учебник по использованию ajax в WordPress
https://www.smashingmagazine.com/2011/10/how-to-use-ajax-in-wordpress/
Комментарии:
1. с какой проблемой вы сталкиваетесь?
2. когда оставьте функцию в function.php пустой мой ajax не показывает ошибки, но при возврате чего-то он выдает ошибку
3. тогда это работает, но проблема в функции кода в function.php, Вы можете показать мне функцию, чтобы проверить ее