Здравствуйте.
Изучаю Drupal чуть более недели, собственно поэтому я здесь)
Передо мной стоит задача создать форму регистрации отличную от стандартной (не только полями, но и оформлением).
Поля, которые должны быть: First name, Last name, E-mail, Password, Retype password.
Вопрос: каким путем лучше пойти, чтобы сделать свою форму регистрации?..
Комментарии
Нашел один из путей решения: создание модуля и использование в нем hook_form_FORM_ID_alter().
В D7 id формы регистрации: user_register_form.
Поэтому содержание файла .module должно быть следующим (MODULENAME - имя модуля):
<?php
// $Id$
/**
* Implements hook_form_FORM_ID_alter().
*/ function MODULENAME_form_user_register_form_alter(&$form, &$form_state) {
//здесь можем менять форму
}?>
А чтобы просмотреть содержимое $form можно использовать:
<?php
drupal_set_message('</p><pre>' . check_plain(var_export($form, TRUE)) . '</pre><p>');
?>
Примерно так темизируется форма:
<?php
function realty_theme() {
return array(
'user_profile_form' => array(
'render element' => 'form',
),
);
}
function realty_user_profile_form($variables) {
//print_x($variables['form']);
$form = $variables['form'];
hide($form['locale']);
hide($form['contact']);
$output = drupal_render_children($form);
return $output;
} ?>
Можно пример как добавить поле Password?
Буду премного благодарен!
* Сам разобрался
Смотрите http://drupal.org/project/profile2
Подскажите пожалуйста как сделать свой форму регистрации. Я особо не программист..
в интернете полно примеров темизации формы авторизации,а регистрации не нашел.
Мне нужно оставить только ввод емаила в форме регистрации, а поле логин приравнивать к емаилу.
И еще мне эту форму регистрации надо на главной странице вывесить.
Но не нашел названия этих полей и куда передавать значения... Может конечно модуль есть, который задачу решит...
вот пример для формы авторизации. По аналогии подскажите как регистрацию сделать
<input class="field" type="text" name="name" id="edit-name" value="Ваш Логин">
Пароль: <input class="field" 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">
<input type="submit" class="submit" value="Войти" name="op" id="edit-submit" OnClick="SetCookie()">
<a href="/user/register">Регистрация</a> / <a href="/user/password">Забыли пароль?</a>
</form>
- очень простой код для темизации окна авторизации. Вот типа такого для регистрации можно?