Как создать отдельную страницу с формой входа в систему

Если на вашем сайте введена обязательная регистрация для пользователей, и вы хотите, чтобы вход совершался через вашу тему, а не через wp-login.php, вы можете создать отдельную страницу, на которой будет располагаться форма входа.

Чтобы выполнить это, нам понадобится создать новый файл под названием page-login.php. В вершину файла необходимо поместить следующий код:

<?php
/*
Template Name: Login Page
*/
?>

Затем добавляем header и необходимые блоки div:

<?php get_header(); ?>

<div id="left">
<div id="archive">

В следующем фрагменте кода мы определяем заголовок страницы и задаем форму входа:

<h2><?php the_title(); ?></h2>

<form name="loginform" id="loginform" action="<?php echo get_option('home'); ?>/wp-login.php" method="post">
	<p>
		<label>Username<br />
		<input type="text" name="log" id="user_login" class="input" value="" size="20" tabindex="10" /></label>
	</p>
	<p>

		<label>Password<br />
		<input type="password" name="pwd" id="user_pass" class="input" value="" size="20" tabindex="20" /></label>
	</p>
	<p class="forgetmenot"><label><input name="rememberme" type="checkbox" id="rememberme" value="forever" tabindex="90" /> Remember Me</label></p>
	<p class="submit">
		<input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="Log In" tabindex="100" />
		<input type="hidden" name="redirect_to" value="<?php echo get_option('home'); ?>/wp-admin/" />

		<input type="hidden" name="testcookie" value="1" />
	</p>
</form>

<p id="nav">
<a href="<?php echo get_option('home'); ?>/wp-login.php?action=lostpassword" title="Password Lost and Found">Lost your password?</a>
</p>

Закрываем открытые ранее блоки div и добавляем код, отвечающий за представление сайдбара и футера:

</div>
</div>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

Теперь, когда файл полностью создан, нам необходимо загрузить его в каталог с темой. Как только это будет сделано, нам понадобится перейти в раздел Страницы — Добавить Новую. Присвоим странице любое название, и в списке справа выберем шаблон Login Page, который мы только что создали.

Все готово. Опубликуйте страницу, выйдите из-под своей учетной записи и проверьте, правильно ли она работает.

http://wplift.com/how-to-create-a-custom-login-page-for-your-wordpress-theme/

Блог про WordPress
Комментарии: 9
  1. Иван

    Вот за это огромное спасибо, давно искал! Но можно ли сделать регистрацию просто в всплывающем окне и желательно с аватарками пользователя?!

    И ещё хочу спросить, может быть Вы знаете как можно оптимизировать категории, т.е. прописать для категорий заголовок, описание, ключи?

    1. Дмитрий (автор)

      Регистрацию во всплывающем окне сделать можно, и для этого вроде бы даже есть уже готовые плагины. А вот про оптимизацию категорий ничего не слышал, посмотрю еще.

      1. Аноним

        Надо просто очень хорошо постараться… В WP есть хуки для всех этих вещей, хотя работы конечно немало.

  2. Иван

    …Спасибо за ответ. В том то и дело что нет ничего! Просто обыскался, хотя бы нормальную, полноценную регистрацию сделать, надеюсь Ваш вариант подойдёт. Или отправку комментариев через аккаунты соц. сетей — тоже проблема, только логинза, но она кривая…

  3. Аноним

    А можно использовать плагин Themed Login… http://wordpress.org/extend/plugins/themed-login

    1. Дмитрий (автор)

      Взглянул на плагин — неплохой, думаю в ближайшем будущем опишу его.

  4. Leshiy666

    Как сделать проверку на авторизацию в wordpress, например для вывода разного куска кода для авторизованного и не авторизованного пользователя?

    1. Дмитрий (автор)

      Вам понадобится вот этот условный тег:

      http://codex.wordpress.org/Function_Reference/is_

  5. Leshiy666

    спасибо уже сделал, сам нашел его)

Добавить комментарий для Leshiy666 Отменить ответ

Получать новые комментарии по электронной почте.