Уроки по программированию

Темизация формы авторизации в Drupal 7

Темизация формы авторизации в Drupal 7 мне была необходима для расположения формы авторизации в шапке сайта. Искал очень долго решение, оно оказалось простым. Для этого нужно создать файл в папке с вашей темой c названием

block--user--login.tpl.php

.
Далее нужно разместить следующий код:

<form accept-charset="UTF-8" id="user-login-form" method="post" action="/node?destination=node">
<div >
    <div >
        <div style="width:163px;float:left;">
            <div style="float:left;">Логин</div>
            <div style="float:left;">
                  <input type="text" name="name" id="edit-name">
                <div class="txt-field">
                    <a href="/user/register">Регистрация</a>                            
                </div>
            </div>
        </div>
        <div style="width:163px;float:left;margin-left:30px;">
            <div style="float:left;">Пароль</div><br/>
            <div style="float:left;">
                <input type="password" name="pass" id="edit-pass">
                <input type="hidden" value="" name="form_build_id">
                <input type="hidden" value="user_login_block" name="form_id">
                <div class="txt-field">
                    <a href="/user/password">Забыли пароль?</a>    
                     <input type="submit" class="form-submit" value="Войти" name="op" id="edit-submit">
                </div>
            </div>
        </div>
        <div style="clear:both;"></div>
    </div>
</div>
</form>

Прописываем стили для формы.

input[type="text"],.autoriz input[type="password"]{
    height:21px;
    width:145px;
    /* Фоновая картинка для полей, если не нужна можно удалить */
    background:url(../img/input-text.png) no-repeat;
    border:none;
    padding-left:10px;
    padding-right:10px;
}
input[type="submit"]{
    /* Фоновая картинка для кнопки */
    background:url(../img/button_enter.png) no-repeat;
    width:49px;
    height:21px;
    border:none;
    float:right;
}

В панели администратора у блока «Вход в систему» нужно будет выбрать существующий регион в котором будет размещаться форма.

У меня получилась такая форма.

autorizform

Комментарии к статье

  • Аватарка 21.10.2013
    Ответить Валентин Королёв

    То есть хук прописывать не нужно получается?

    • Аватарка 21.10.2013

      Попробуйте тем способом что я описал выше у меня все заработало. Если что-то не получится отправьте мне вопрос через «помощь населению»

  • Аватарка 25.10.2013
    Ответить Иващенко Юлиан

    опишите подробнее весь процес

    • Аватарка 26.10.2013

      на самом деле все очень просто зайдите в папку с вашей темой создайте файл block—user—login.tpl.php и разместите код. После нужно добавить стили в свой css файл.

      • Аватарка 04.11.2013
        Ответить йцукен

        в то м то и дело — не получилось так

        • Аватарка 04.11.2013

          (:smile:) Бред конечно, но у меня почему-то два дефиса заменяются длинным тире возможно вся проблема была в название файла. Файл должен называться block—user—login.tpl.php. Второе нужно выбрать регион либо его создать для размещения в нужном месте. Третье нужно чистить кэш.

  • Аватарка 13.04.2014
    Ответить Михаил Ахраменко

    Форму не закрыл / 😉

  • Аватарка 25.04.2014
    Ответить Artur Drapeza

    Спасибо за статью, долго искал как сделать вход на сайт, пока не создал файл block—user—login.tpl.php, после чего и блок авторизации стал выводится

  • Аватарка 07.07.2015
    Ответить Gremlin_G@vSS

    Великое ЧЕЛОВЕЧЕСКОЕ СПАСИБО!!!

  • Аватарка 19.05.2016

    Почему-то ничего не меняется 🙁 Где ошибаюсь

    • Аватарка 22.05.2016

      Еще раз все хорошо проверьте.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *