Intereting Posts
Страница блога, показывающая тот же контент, что и главная страница Как я могу показать Cubepoints ряды / точки в ответах bbpress Добавить класс для публикации заголовка, если ссылка заканчивается определенным расширением Функция cforms plugin «my_cforms_logic» (для написания пользовательской логики) работает 5 раз Проблемы страницы блога WP – застряли в течение недели Как исправить оператор цикла Как я могу «удалить» персонализированный пост, когда вы вошли в систему как Admin Как дублировать шаблон страницы, но внести незначительные изменения в заголовок? Обновление WordPress с непубличной машины Система флагов StackExchange для WordPress После переключения multisite на nginx регистрация Buddypress прекратила работу Лучше ли в долгосрочной перспективе использовать дату публикации или пользовательскую таксономию для сортировки / разделения сообщений по годам? get_post_meta () извлекает мета из определенной записи на страницах, а не просматриваемую страницу Как получить доступ к настраиваемым страницам Получение категорий и описаний из пользовательского типа сообщений

Пользовательская регистрация и форма регистрации в Ajax

Как создать пользовательскую форму регистрации / регистрации с помощью AJAX.

Вот простой короткий код, который выполняет свою работу:

add_shortcode('ajax_login','ajaxlogin_shortcode_handler'); function ajaxlogin_shortcode_handler($atts,$content=null){ if (is_user_logged_in()) return; $retval = '<p id="message" style="color:red"></p>' .wp_login_form(array('form_id' => 'ajaxloginform','echo' => false)). '<div id="login-result" style="position:absolute; top:300px; left: 670px;"> <img src="path/ajax-loader.gif"/> </div>'; $js = <<<JS <script type="text/javascript"> jQuery(document).ready(function($){ $("#ajaxloginform").click(function() { // turn loading screen on $('#login-result').toggle(); //get foem data var input_data = $('#my-login-form').serialize(); //make ajax call $.ajax({ type: "POST", url: "<?php echo site_url('wp-login.php','login_post'); ?>", data: input_data, success: function(msg) { // if login incorrect, wordpress will redirect user to its own login form. We scan for an error term. var reg1 = /login_error/g; if (reg1.test(msg)) { $('#message').html("<?php _e('Your login credentials is not correct. Please try again.'); ?>"); }else { // login success. redirect users to some page. //$(location).attr('href', '/my-account/'); //or reload the same page location.reload(); } } }); // turn loading screen off $('#login-result').toggle(); // prevent actual submission of form return false; }); }); </script> JS; //enqueue jquery if its not already loaded wp_enqueue_script('jquery'); return $retval .$js; } 

Применение:

[ajax_login]