Убираем поле логин из формы регистрации.

+10
2.68K
Из серии мелочь но приятно.

В некоторых случаях лучше оставить возможность пользователям придумать себе логин, в некоторых, это лишнее.
Несколько строк в components/registration/fronted.php

вместо

  1. // получаем данные
  2. $item['login'] = cmsCore::request('login', 'str', '');


это
  1.  
  2. // получаем данные
  3. $loginkey1 = rand(1, 9);
  4. $loginkey2= rand(1, 99);
  5. $loginkey3 = date(U);
  6. $loginkey4 = $loginkey1.''.$loginkey3.''.$loginkey2;
  7. $user_login = 'id'.$loginkey4;
  8. $item['login'] = $user_login;
Позволяют за пользователя при регистрации сгенерировать достаточно уникальный логин вида id54646767643

вместо id естественно можно что угодно

user98625277387
z987655678
или как на мамбе
mb736688299988)

для тех, кто не понял: меняется здесь

  1. $user_login = 'id'.$loginkey4;
Соответственно из /templates/components/registration.tpl можно удалить

  1. <tr>
  2. <td width="269" valign="top" class="">
  3. <div><strong>{$LANG.LOGIN}:</strong></div>
  4. <div><small>{$LANG.USED_FOR_AUTH}
  5. {$LANG.ONLY_LAT_SYMBOLS}</small></div>
  6. </td>
  7. <td valign="top" class="">
  8. <input name="login" id="logininput" class="text-input" type="text" style="width:300px" value="{$item.login|escape:'html'}" onchange="checkLogin()" autocomplete="off"/>
  9. <span class="regstar">*</span>
  10. <div id="logincheck"></div>
  11. </td>
  12. </tr>

Теперь при регистрации пользователю нужно ввести только имя и email.
В дальнейшем он может входить либо по email либо по логину, который он получит в приветственном письме после регистрации.

Несколько дней погонял на своем новом сайте, побочных эффектов не обнаружил.
Ссылка на профиль пользователя получается типа site.ru/users/id67788993877

Действует для новых пользователей, у старых ничего не меняется.
0
Dost Dost 7 лет назад #
Нужно вообще сделать регистрацию только по email, а пароль приходит на почту при активации. Меня бесят эти кучи полей для заполнения на сайты, на которые заходишь на 1 раз. Если сайтом пользуешься постоянно то и без принуждения потом заполнишь профиль.
На одно поле меньше уже плюс))
0
Sonat Sonat 7 лет назад #
Dost:
На одно поле меньше уже плюс))
Если только ради уменьшения писанины в полях, не проще ли Логинзу или Юлогин поставить, вместо того чтобы править файлы системы?
0
Dost Dost 7 лет назад #
Нет не проще. Проще чем регистрация по email я ничего не встречал))
0
Нил™ Нил™ 7 лет назад #
Ну можно и через логинзу наверно.
Лично меня логинза напрягает тем, что
а) сторонний сервис, и я не знаю, как они поведут себя завтра
б) в случае желания или если придётся отвязываться от логинзы непонятно (мне) как потом пользователи будут попадать в свой профиль.
в) ещё не придумал.
Лично я замутил то что описал выше по той причине, что на новый сайт решил напарсить профилей пользователей с одного сайта знакомств. (Это все в рамках партнерской программы и помимо того, что я первоначально имею какие то лица в списке пользователей на нулёвом сайте, я могу направлятьс профиля на моем сайте направлять на профиль на исходном сайте по реф ссылке). Так вот логин там получить возможности не было, поэтому решил делать такие id, ну и что бы те кто уже регистрируются изначально на моем сайте не отличались от первоначальной базы логинами, сделал такие логины для всех. И смотрится не плохо и пользователям вконтакте на вид "что то что они уже видели".
Ну и да, форма регистрации уменьшена. Кстати кому интересен этот вопрос, можно еще сократить форму регистрации. Например можно убрать повтор пароля. Либо в шаблоне скрыть второе поле через hidden и js делать дублирование из первого поля пароль во второе, либо в компоненте fronted.php убрать проверку на второй пароль. Можно сделать скрытым полем город, если использовать автоопределение города и заполнять его тем, что определилось автоматически.
Всё зависит от сайта и окружения. Где то желательно что бы форма регистрации на вид была как можно проще что бы регистрировались чаще. Где то наоборот не стоит упрощать и оставить некоторые препятствия, что бы сразу отсечь некоторых пользователей, от которых потом все равно не будет толка. По ситуации)
0
Bubble Gumoff Bubble Gumoff 7 лет назад #
TS:
Ссылка на профиль пользователя получается типа site.ru/users/id67788993877
Светить id пользователя не всегда хорошо, и первая ветка в плюсе от этого имхо.
Но согласен что никнейм, логин по барабану пользователям обычно, главное быстрее и без геммороя получить доступ.
0
amigo amigo 7 лет назад #
1) Почему не хорошо светить id?)
2) У тс, насколько я понял, пользователю задается случайное число в id, а не последовательное (отобрающий количество зарегистрировашихся пользователей).
0
Bubble Gumoff Bubble Gumoff 7 лет назад #
Если так, тогда все гуд !
0
Александр Александр 7 лет назад #
где то тут было, что проходишь по ссылки с письма и сразу авторизовываешься на сайте, такое можно сделать или как?
тогда еще упросим регистрацию пользователю)

Еще от автора

Капча на сайт или разделы сайта
Если нужно, закрыть весь сайт или некоторые его разделы каптчей.
Пинг поисковых систем для первой ветки
Небольшая интеграция инструментов для пингования, чтобы сделать его чуть удобнее
Генератор карты сайта в формате txt на лету без крона
Вообще то где то тут уже есть вполне рабочие генераторы карты для первой ветки, но этот вариант тоже имеет право быть.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.