Intereting Posts
сначала проверить вход в систему Как отобразить выбранное изображение для каждого сообщения? Показывать только сообщения из одной категории на странице архива типа персонализированного сообщения Добавить элемент управления в панели деталей изображения Пользовательский WP_Query без сообщений для вывода Интеграция wordpress в существующий сайт и настройка htaccess? Ошибка wp_handle_upload «Указанный файл с ошибкой при загрузке», но все же создает вложение? Обновление постмета после переключения темы Можно ли «прикреплять» изображения к нескольким сообщениям без вставки или выгрузки дважды? Как настроить тему Нижний колонтитул исчезает при использовании функции__состояния () WordPress Сообщение # из # фильтруется по категориям slug Добавить функцию фильтра в медиамодуле Отображение заголовка сообщения на странице «Редактировать страницу»? Есть ли способ установить активную вкладку по умолчанию на вкладке Post UI Tab pluggin?

Включая необходимые функции для пользовательской формы регистрации ajax

Я знаю, что есть несколько вопросов о регистрационных формах, но я думаю, что мое немного отличается от того, что я не нашел ответа в процессе поиска.

Я делаю простой виджет подписки, который берет электронную почту пользователя и добавляет ее в таблицу WordPress Users в качестве подписчика.

Он начинается с простой формы с помощью только ввода электронной почты и отправки. Действие формы – это php-файл в моей плагиновой папке ajax-signup.php . Я использую ajax для отправки данных формы в этот файл, который затем «регистрирует» адрес электронной почты и возвращает ответ ajax.

Старшие плагины включали только файл registration.php который предоставил все необходимые функции файлу ajax php, чтобы он мог выполнить регистрацию (проверьте проверку электронной почты, напишите в базу данных и т. Д.), Поскольку файл существует вне WP. Что мне нужно включить, или что такое лучший метод, который позволит мне это сделать? Может быть, функция внутри среды WP, а не отдельный файл? Я не уверен, как использовать ajax таким образом, хотя …

Solutions Collecting From Web of "Включая необходимые функции для пользовательской формы регистрации ajax"

Вот базовая настройка, которую я использую для AJAX с WordPress. вместо загрузки wp-load.php в отдельный php-файл; просто используйте метод WordPress по умолчанию для вызовов AJAX. Это позволяет также фильтровать вызовы функций из Javascript через коммутатор. Я также добавил быстрый пример для wp_localize_script.

 <?php add_action('wp_enqueue_scripts', 'YOUR_NAME_scripts'); //back end function YOUR_NAME_scripts( $hook_suffix ) { wp_enqueue_script('YOUR_NAME-js'); global $blog_id; $params = array( 'site_url' => site_url(), 'admin_ajax_url' => site_url() . '/wp-admin/admin-ajax.php' ); wp_localize_script( 'jquery', 'YOUR_NAME', $params ); } add_action('wp_ajax_nopriv_YOUR_NAME_ajax', 'YOUR_NAME_ajax_function'); add_action('wp_ajax_YOUR_NAME_ajax', 'YOUR_NAME_ajax_function'); function YOUR_NAME_ajax_function(){ fobu_load_classes(); switch($_REQUEST['fn']): case 'test_ajax': $output = $_REQUEST['data']; break; default: $output = 'No function specified, check your jQuery.ajax() call'; break; endswitch; ob_clean(); $output=json_encode($output); if( is_array( $output ) ): print_r( $output ); else: echo $output; endif; die(); } ?> <script> //in YOUR_NAME.js or whatever jQuery(document).ready(function() { (function ($) { jQuery.ajax({ url: YOUR_NAME.admin_ajax_url, dataType: 'json', //type:'POST', data: { 'action':'YOUR_NAME_ajax', 'fn': 'test_ajax', 'data': data }, success: function(results){ //console.log(results); if( results ){ } },// end of success error: function(errorThrown){console.log(errorThrown);} });// end of ajax })(jQuery); }); </script> 

Если вы используете встроенный wordpress AJAX, вы можете легко получить доступ к функциям wordpress, не используя wp-load.php.