Как вывести форму входа и регистрации прямо в сайдбаре, чтобы не открывать отдельную страницу? Есть несколько способов, с помощью которых можно реализовать такую возможность, но сначала хотел бы рассказать о способе без плагинов.
Вставьте в нужное место шаблона следующий код:
01 |
<?php if (!(current_user_can('level_0'))){ ?> |
03 |
<form action="<?php echo get_option('home'); ?>/wp-login.php" method="post"> |
05 |
<p><label for="log">Имя</label><input type="text" name="log" id="log" value="<?php echo wp_specialchars(stripslashes($user_login), 1) ?>" size="20" /> </p> |
07 |
<p><label for="pwd">Пароль</label><input type="password" name="pwd" id="pwd" size="20" /></p> |
09 |
<p><input type="submit" name="submit" value="Войти" class="button" /></p> |
12 |
<label for="rememberme"><input name="rememberme" id="rememberme" type="checkbox" checked="checked" value="forever" /> Запомнить меня</label> |
13 |
<input type="hidden" name="redirect_to" value="<?php echo $_SERVER['REQUEST_URI']; ?>" /> |
17 |
<a href="<?php echo get_option('home'); ?>/wp-register.php">Регистрация</a> |
18 |
<a href="<?php echo get_option('home'); ?>/wp-login.php?action=lostpassword">Восстановить пароль</a> |
20 |
<ul class="admin_box"> |
21 |
<li><a href="<?php echo get_option('home'); ?>/wp-admin/">Консоль</a></li> |
22 |
<li><a href="<?php echo get_option('home'); ?>/wp-admin/post-new.php">Написать новый пост</a></li> |
23 |
<li><a href="<?php echo get_option('home'); ?>/wp-admin/page-new.php">Создать страницу</a></li> |
24 |
<li><a href="<?php echo get_option('home'); ?>/wp-login.php?action=logout&redirect_to=<?php echo urlencode($_SERVER['REQUEST_URI']) ?>">Выйти</a></li> |
Эта простенькая форма отлично умещается в сайдбаре. Если пользователь еще не вошел, то он видит поля ввода имени и пароля, а так же ссылку на регистрацию.

После входа пользователь опять попадет на ту страницу, на которой был. Форма изменит свое содержание — появятся ссылки для быстрого доступа к разделам в админке.

Источник: wordpresse.ru