Я уже описывал способ вывода формы входа в любом месте блога. Есть еще один альтернативный способ вывода формы входа с помощью шорткода, который можно вставить в содержимое любого поста или страницы.
Шорткод использует встроенную функцию wp_login_form. Для создания шорткода откройте файл functions.php, и вставьте в него код:
add_action( 'init', 'my_add_shortcodes' );
function devpress_add_shortcodes() {
add_shortcode( 'my-login-form', 'my_login_form_shortcode' );
} Добавьте после него код вызова функции my_login_form_shortcode:
function my_login_form_shortcode() {
if ( is_user_logged_in() )
return '';
return wp_login_form( array( 'echo' => false ) );
}
Теперь вы можете использовать шорткод [my-login-form]. Шорткод не требует указания никаких дополнительных параметров, однако их можно добавить, чтобы управлять названиями полей формы входа. Функция шорткода с параметрами будет выглядеть так:
function my_login_form_shortcode( $attr ) {
if ( is_user_logged_in() )
return '';
/* Установки по умолчанию */
$defaults = array(
'label_username' => 'Имя',
'label_password' => 'Пароль'
);
/* Замена настроек по умолчанию данными, которые вводит пользователь */
$attr = shortcode_atts( $defaults, $attr );
/* Установка значения 'echo' в 'false' для того, чтобы можно было и дальше использовать шорткод с настройками по умолчанию */
$attr['echo'] = false;
return wp_login_form( $attr );
} Теперь шорткод формы входа с аргументами выглядит так: Можно ли как-то изменить форму входа? Можно, если добавить в файл style.css оформление элементов формы: Пользуйтесь![my-login-form label_username="Введите имя" label_password="Введите пароль"] /* Область поля ввода имени */
.login-username {}
/* Название поля ввода имени */
.login-username label {}
/* Поле ввода имени */
.login-username .input {}
/* Область поля ввода пароля */
.login-password {}
/* Название поля ввода пароля */
.login-password label {}
/* Поле ввода пароля */
.login-password .input {}
/* Область размещения чекбокса */
.login-remember {}
/* Название чекбокса */
.login-remember label {}
/* Чекбокс */
.login-remember input[type="checkbox"] {}
/* Область кнопки */
.login-submit {}
/* Копка */
.login-submit .button-primary {} 







