Всем добрый день! Суть такая, есть страница на которой выводятся записи с фильтром по таксономии и кнопкой показать еще, загрузка и фильтрация записей происходит через ajax, при нажатии на выбранную запись появляется модалка со слайдером.
Если происходит взаимодействие с фильтром или кнопкой показать еще то слайдер соответсвенно перестает работать так как весь контент на странице был загружен.
Понимаю что нужно дополнительно запускать скрипт после отработка ajax, но при попытке сделать это в консоли появляется ошибка
POST https://localhost/wp-admin/admin-ajax.php 400
Код для инициализации слайдера и повторным вызовом после отработки ajax
function initSwiper() {
var swiper = new Swiper('.swiper-container', {
slidesPerView: 1,
spaceBetween: 30,
loop: true,
autoplay: true,
delay: 4000,
pagination: {
el: '.swiper-pagination',
clickable: true,
},
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
});
}
jQuery(document).ready(function() {
initSwiper()
var swiper = new Swiper('.swiper-container', {
slidesPerView: 1,
spaceBetween: 30,
loop: true,
autoplay: true,
delay: 4000,
pagination: {
el: '.swiper-pagination',
clickable: true,
},
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
});
$.ajax({
url: 'ajax_url',
dataType: "json",
type: "POST",
async: true,
data: { },
success: function (data) {
$('#results').html(data.results_html);
initSwiper(); // <---------------
},
error: function (xhr, exception) {
// Error handling
}
});
});
В functions.php добавлена локализация
wp_localize_script( 'custom', 'my_ajax_object',
array( 'ajax_url' => admin_url( 'admin-ajax.php' ) ) );