2009-09-21 1 views
1

Я создал специальный тип узла для регистрации событий. Я использовал темы (template.php для всех пользовательских tpl.php для формы), чтобы настроить внешний вид формы.drupal w CCK - как переименовать кнопки отправки узлов

Используя рабочий процесс и действия/триггеры, люди могут зарегистрироваться для моего события, а менеджер событий получает уведомление по электронной почте и может войти в систему и посмотреть, кто зарегистрирован. Ухоженная!

Все это работает замечательно, но я не могу найти способ переименовать кнопки по умолчанию drupal node/add - «save» и «preview», чтобы сказать «отправить регистрацию» и «зарегистрировать предварительный просмотр». Просто небольшая вещь, но очень важная для пользователей.

Может ли кто-нибудь помочь мне с этим?

ответ

1

Кроме того, вы можете обойтись без написания модуля и просто добавить пользовательскую функцию темы, как описано в this tutorial.

В основном вы:

  1. Найти форму идентификатор
  2. Создать MyTheme функцию _form_id тему, которая изменяет форма возвращает drupal_render ($ форма) (немного отличается от hook_form_alter)
  3. Найдите правильный элемент формы. Я просто dpm ($ form) и искал результат. Я думаю, что в вашем случае это должно быть в «пуговичном» массиве, но не принимайте мое слово за это.
  4. Измените элемент.
  5. Реализовать MyTheme_theme крюк в вашем template.php, который регистрирует Вышеупомянутый функцию
+0

Хотя выполнимо, этот тип изменения, вероятно, следует оставаться последовательной по темам. Разница в технической сложности между изменением ее в теме и ее изменением в небольшом модуле незначительна. – Grayside

+0

Цитата из вопроса: «Я использовал темы (template.php для всех пользовательских tpl.php для формы), чтобы настроить внешний вид формы». То есть - он уже очень настроен. Итак, если что-то, наоборот, верно: лучше поместить все это в тему, а не распространять это одно изменение на модуль. –

+0

То есть это изменение является неотъемлемой частью темы и поэтому должно оставаться в рамках темы. Речь идет не о сложности (создание hook_theme() немного сложнее, если вообще). По сути, это по той причине, о которой вы говорили: если тема меняется, то такая вещь (пользовательские ярлыки кнопок) также должна измениться. –

3

Возможно, вы захотите использовать hook_form_alter(), чтобы изменить форму и изменить названия кнопок отправки.

К сожалению, для этого вам необходимо создать модуль, так как hook_form_alter() не вызывается в файлах тем.