wp_login_form()
Виводить HTML код форми авторизації (входу).
Хуки з функції
Повертає
null|Строку
. Виводить на екран HTML код форми авторизації. Якщо вказати параметр echo=0 , результат буде повернено для подальшої обробки.
Шаблон використання
wp_login_form(array( 'echo' => true, 'redirect' => site_url( $_SERVER['REQUEST_URI'] ), 'form_id' => 'loginform', 'label_username' => __( 'Username' ), 'label_password' => __( 'Password' ), 'label_remember' => __( 'Remember Me' ), 'label_log_in' => __( 'Log In' ), 'id_username' => 'user_login', 'id_password' => 'user_pass', 'id_remember' => 'rememberme', 'id_submit' => 'wp-submit', 'remember' => true, 'value_username' => NULL, 'value_remember' => false )));
Використання
<?php wp_login_form( $args ); ?>
-
$args
(рядок/масив) -
Масив аргументів, які контролюють результат.
За замовчуванням: параметри за замовчуванням
Аргументи параметра $args
-
echo
(логічний) -
Вивести на екран (1) або повернути (0).
За замовчуванням: 1 -
redirect
(рядок) -
УРЛ на який перекине після авторизації.
Типово: поточна сторінка -
form_id
(рядок) -
id атрибут тега
<form id=”loginform”> .
За замовчуванням: ‘loginform’ -
label_username
(рядок) -
Текст заголовка поля ім’я користувача.
За замовчуванням: ‘__( ‘Username’ )’ -
label_password
(рядок) -
Текст заголовка поля “пароль”.
За замовчуванням: ‘__( ‘Password’ )’ -
label_remember
(рядок) -
Текст заголовка поля “запам’ятати мене”.
За замовчуванням: ‘__( ‘Remember Me’ )’ -
label_log_in
(рядок) -
Текст кнопки сабміту.
За замовчуванням: ‘__( ‘Log In’ )’ -
id_username
(рядок) -
Значення атрибута id:
<input id=”user_login” />
За замовчуванням: ‘user_login’ -
id_password
(рядок) -
Значення атрибута id:
<input id=”user_login” />
За замовчуванням: ‘user_pass’ -
id_remember
(рядок) -
Значення атрибута id:
<input id=”user_login” />
За замовчуванням: ‘rememberme’ -
id_submit
(рядок) -
Значення атрибута id:
<input id=”user_login” />
За замовчуванням: ‘wp-submit’ -
remember
(логічний) -
Запам’ятати значення полів (1) чи ні (0).
За замовчуванням: 1 -
value_username
(рядок) -
Ім’я користувача за промовчанням.
За замовчуванням: ” -
value_remember
(рядок) -
Значення атрибута value, поля “запам’ятати мене”. За замовчуванням 1 – галочка відзначена. 0 – галочка знята.
За замовчуванням: 1
Приклади
#1 Звичайне відображення форми:
<?php wp_login_form(); ?>
Виведе на екран:
<form name="loginform" id="loginform" action="http://wp-kama.ru/wp-login.php" method="post"> <p class="login-username"> <label for="user_login">Логін</label> <input type="text" name="log" id="user_login" class="input" value="" size="20" tabindex="10" /> </p> <p class="login-password"> <label for="user_pass">Пароль</label> <input type="password" name="pwd" id="user_pass" class="input" value="" size="20" tabindex="20" /> </p> <p class="login-remember"><label><input name="rememberme" type="checkbox" id="rememberme" value="forever" tabindex="90" /> Запам'ятати мене</label></ > <p class="login-submit"> <input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="Увійти" tabindex="100" /> <input type="hidden" name="redirect_to" value="http://wp-kama.ru/s" /> </p> </form>
#2 Залишити на тій самій сторінці при введенні невірного логіну/паролю
За умовчанням, якщо в таку форму введено неправильний логи, то користувача перекине на базову сторінку авторизації із зазначенням помилки.
Щоб змінити та залишити користувача на колишній сторінці, навіть якщо він ввів неправильні дані, можна використовувати хук wp_login_failed :
## Залишає користувача на тій самій сторінці при введенні невірного логіна/паролю у формі авторизації wp_login_form() add_action( 'wp_login_failed', 'my_front_end_login_fail'); function my_front_end_login_fail( $username ) { $referrer = $_SERVER['HTTP_REFERER']; // звідки надійшов запит // Якщо є referrer і це не сторінка wp-login.php if( !empty($referrer) && !strstr($referrer,'wp-login') && !strstr($referrer,'wp-admin') ) { wp_redirect( add_query_arg('login', 'failed', $referrer)); // Редиркет і додамо параметр запиту ?login = failed exit; } }
#3 Форма реєстрації WordPress
Для виведення форми реєстрації спеціальна функція не передбачена. Тому форму можна вивести, написавши свій HTML код. Ось приклад такого HTML коду форми реєстрації:
<form id="registerform" action="<?php site_url('wp-login.php?action=register'); ?>" method="post"> <p> <label for="user_login"> Ім'я користувача<br> <input type="text" name="user_login" id="user_login" class="input" value="" size="20" style=""> </label> </p> <p> <label for="user_email"> E-mail<br> <input type="email" name="user_email" id="user_email" class="input" value="" size="25"> </label> </p> <p id="reg_passmail">Підтвердження реєстрації буде надіслано на ваш e-mail.</p> class="clear"> <input type="hidden" name="redirect_to" value=""> <p class="submit"><input type="submit" name="wp-submit" id="wp-submit" class="button button-primary button-large" value="Реєстрація"></p> </form>
список змін
З версії 3.0.0 | Введено. |