WordPress — функция ajax при выходе

Я использую сторонний плагин, позволяющий создавать посты из внешнего интерфейса сайта. По сути, я хочу функциональность, с помощью которой пользователи могут создавать сообщения, и я могу в админ-панели одобрить сообщение или нет. Тем не менее, tt имеет загрузчик AJAX, который позволяет загружать избранные изображения, но это работает, только когда вы вошли в систему. Я вижу, что вызов ajax проходит через wp-admin / admin-ajax.php и в строку:

do_action( 'wp_ajax_nopriv_' . $_REQUEST['action'] );

Я не вижу, как это ограничивает загрузку или как включить загрузку через этот вызов AJAX.

Любая помощь приветствуется.
Спасибо

2

Решение

Ajax работает немного по-другому с WordPress. Вместо того, чтобы отправлять информацию с помощью ajax на URL-адрес для функции, которую нужно забрать, вы отправляете ее на «/wp-admin/admin-ajax.php», и она запускает хук wp_ajax или, в случае внешнего интерфейса, хук wp_ajax_nopriv.

Когда этот файл получает информацию, он сопоставляет переменную action: в вашей функции ajax с действиями, добавленными к хукам wp_ajax_nopriv_ в случае внешнего интерфейса или wp_ajax в случае внутреннего интерфейса.

Чтобы быть понятным, это только код на стороне сервера. Вам понадобится jQuery для запуска действия (например, нажата кнопка), а затем для отправки информации в действие и получения выходных данных. например

    jQuery('#image').click(function() { // fires when some element with id #image is click on

jQuery.ajax({
type: "POST",
url: "/wp-admin/admin-ajax.php",

data: {
action: 'sample_ajax_function',
reg: regnum, // any other data you want to send?
maketaxonomy: '<?php echo $maketaxonomy;?>'
},
success: function (output) { // if data is returned from your function you can pick it up using output now.

console.log(output); //log it to your console so you can see what is returned.

},});

});

а затем в вашем файле функций.

add_action('wp_ajax_nopriv_sample_ajax_function', 'my_ajax_function');

function my_ajax_function() {
$reg= $_POST['reg'];

echo $reg; //output something.
exit; // no more output
}

Если вы ищете метод, который вы можете использовать для загрузки изображений, посмотрите здесь HTML несколько файлов ввода — доступ к Javascript и удаление файлов .

3

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector