Добрый день.
Я начинающий. Хочу сделать сайт на Drupal 7.4, но возникла проблема.
Надо добавить вводимый пользователем параметр при регистрации, который в последующем юзер изменить не сможет.
Каким образом можно реализовать задуманное?
Спасибо.
P.S. Добавлял новое поле в настройках модуля user, но там как ни крути, а в профиле каждый пользователь может изменить данный параметр...
Комментарии
В hook_form_alter можно закрыть доступ к данному поля следующим образом
$form['myfield']['#access'] = FALSE;
и тогда пользователь не сможет его изменить
Почитал про hook_form_alter, но так и не понял, куда вставлять эту PHP функцию.
Пишут, что в модуль, но у модуля "user" в папке modules пять файлов с расширением ".php"...
Ржунимагу.
Ройте на предмет прав на сск-поля. Можно настроить вывод для показа не редактируемым полем, а простым текстом. В конце-концов никто не мешает просто читать данные из БД и выводить как душе угодно.
Но раз уж в пляс пошли, то вот Вам еще пару возможностей:
1. Сделать запрет на редактирование input-форме (ява-скрипт, css свойство или иной доступный метод).
2. Вообще нафик скрыть поле и не показывать его юзверю (css достаточно).
3. На этапе отрисовки страницы предусмотреть прехват выводимого cck-поля и перерисовывать его - темизация шаблонов вам в помощь.
Не знаю, чей ответ лучше. В вашем случае матчасть учить надо, потом решение само в голову придет.
Что касаемо первого ответа от Ahiles, то это чистой воды темизация форм друпала. Если на пальцах объяснить - это сумма моих второго и третьего пункта.