Intereting Posts
Определенный способ разрешить пользователям WordPress просматривать их текущий пароль? И отредактировать его? Есть ли плагин, который предоставляет редактор стиля stackoverflow для wordpress? Как я могу избежать постоянной ссылки на «блог» при использовании настраиваемого типа сообщений? Повторно сортировать результаты запроса get_posts Использование доменного имени условные метки – как использовать короткие коды Как отображать отображаемое изображение без его появления в сообщении? Плагин менеджера изображений Как настроить тему? PHP включает в себя действия AJAX 301 перенаправление с веб-страницы на страницу wordpress в том же корне Динамическое изменение значений короткого кода в шаблоне темы Как найти, на какой индексной странице находится сообщение? wp_signon всегда передавал пароль, хотя пароль неверен Можно ли ограничить настраиваемые мета-поля в зависимости от того, какой шаблон страницы используется?

Вставить нового пользователя в форму submit 'init' hook

Я отправляю форму для вставки нового пользователя и подключения моей функции к init. Этот код находится в моей папке mu-plugins.

Пользователь получает вставляемый штраф, но страница не загружается после опекунов.

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

Похоже, что есть проблема со страницей?

Ниже приведен код моей функции

/* * Register a new reminder_service user */ function reminder_register(){ if(@$_POST['reminder_register']){ $user["user_login"] = $_POST["email"]; $user["user_pass"] = $_POST["password"]; $user["user_email"] = $_POST["email"]; $user["display_name"] = $_POST["name"]; $user["user_nicename"] = strtolower(str_replace(" ", "-", $_POST["name"])); $user["role"] = 'reminder_service'; $user["user_registered"] = date('Ymd H:i:s'); $user["show_admin_bar_front"] = false; $user_id = wp_insert_user($user); if(is_int($user_id)){ echo 'yes'; }else{ foreach($user_id->errors as $error){ foreach($error as $e) echo $e."<br />"; } } } } add_action('init', 'reminder_register'); 

Это мой код формы

 <form action="" id="reminder_register_form" method="post"> <fieldset class="blue"> <span><legend><div class="circle c_1"></div> Your Details</legend></span> <ul class="form floated"> <li> <label for="name">Your Name<span class="required">*</span></label> <input type="text" name="name" id="name" class="required"> </li> <li class="right"> <label for="postcode">Postcode<span class="required">*</span></label> <input type="text" name="postcode" id="postcode" class="required"> </li> <li> <label for="email">Your Email<span class="required">*</span></label> <input type="email" name="email" id="email" class="required"> </li> <li class="right"> <label for="mobile">Mobile No<span class="required">*</span></label> <input type="text" name="mobile" id="mobile" class="required"> </li> <li> <label for="password">Password<span class="required">*</span></label> <input type="password" name="password" id="password" class="required"> </li> <li class="right"> <label for="password_confirm">Confirm Password<span class="required">*</span></label> <input type="password" name="password_confirm" id="password_confirm" class="required"> </li> <li> <label for="terms" class="radio_label">I agree with the Terms of Service, the Privacy Policy and Terms &amp; Conditions of the Good Dealer Scheme Reminder Service</label> <input type="checkbox" name="terms" id="terms" class="required" value="yes"> </li> <li class="right"> <label for="communication" class="radio_label">Please select if you are happy to receive further communication from the Good Dealer Scheme. </label> <input type="checkbox" name="communication" id="communication" value="yes"> </li> </ul> </fieldset> <div class="submit_button_container"> <input type="submit" value="Register" name="reminder_register" class="orange"> <label><span class="required">*</span> Please complete these fields before clicking the register button</label> </div> </form> 

Способ, которым я хочу, чтобы это работало, – отправить форму на ту же страницу и показать соответствующий контент на основе результата пользовательской вставки

Solutions Collecting From Web of "Вставить нового пользователя в форму submit 'init' hook"

Проблема 404 страницы в именах полей формы. Существует список переменных публичных запросов, которые использует WordPress. Если одно из полей формы использует одно из этих имен, результат не гарантируется.

Список доступен где-то в Codex, но вы можете распечатать список в файле шаблона страницы. Добавьте эту строку вверху:

 wp_die( '<pre>' . var_export( $wp->public_query_vars, true ) . '</pre>' ); 

$wp – глобальная переменная WordPress. wp_die () должен разорвать вашу страницу и предоставить вам список, похожий на этот:

 array ( 0 => 'm', 1 => 'p', 2 => 'posts', 3 => 'w', 4 => 'cat', 5 => 'withcomments', 6 => 'withoutcomments', 7 => 's', 8 => 'search', 9 => 'exact', 10 => 'sentence', 11 => 'calendar', 12 => 'page', 13 => 'paged', 14 => 'more', 15 => 'tb', 16 => 'pb', 17 => 'author', 18 => 'order', 19 => 'orderby', 20 => 'year', 21 => 'monthnum', 22 => 'day', 23 => 'hour', 24 => 'minute', 25 => 'second', 26 => 'name', 27 => 'category_name', 28 => 'tag', 29 => 'feed', 30 => 'author_name', 31 => 'static', 32 => 'pagename', 33 => 'page_id', 34 => 'error', 35 => 'comments_popup', 36 => 'attachment', 37 => 'attachment_id', 38 => 'subpost', 39 => 'subpost_id', 40 => 'preview', 41 => 'robots', 42 => 'taxonomy', 43 => 'term', 44 => 'cpage', 45 => 'post_type', 46 => 'post_format', ) 

Не назовите ни одно из полей этих имен, и вы должны перейти на свою правильную страницу.

Например, одно из ваших полей называется name .

 <label for="name">Your Name<span class="required">*</span></label> <input type="text" name="name" id="name" class="required"> 

Пункт 26 указывает, что это name будет захвачено WordPress. Используйте что-то еще:

 <label for="user_name">Your Name<span class="required">*</span></label> <input type="text" name="user_name" id="user_name" class="required">