2009-09-07 3 views
2

Этот вопрос два раза:Добавление принудительного предварительного просмотра к узлу и изменение значения кнопки отправки в Drupal?

  1. Есть ли способ, чтобы заставить пользователя первого просмотра конкретного узла перед его отправкой? т. е. не все узлы, использующие/admin/content/node-settings ... но только ОДИН конкретный узел.
  2. Есть ли способ изменить ярлыки вместо того, чтобы говорить «submit» и «preview», скорее сказать «Процесс» и «Обзор»?

ответ

1

Вы можете изменить, требуется ли предварительный просмотр перед отправкой до /admin/content/node-settings (Drupal 6).

Что касается изменения текста кнопки, вам, вероятно, придется это сделать либо с помощью кода-крючка в форме, либо где-нибудь в вашей теме.

+0

Есть ли способ заставить его использовать только один тип узла? – coderama

+0

В ядре Drupal? Насколько мне известно. Кто-то, возможно, написал модуль для этого. – Amber

+1

Например, вот что: http://drupal.org/project/confirm – Amber

3

Основным ответом на оба вопроса является hook_form_alter(). Вам нужно будет проверить параметр $form_id, чтобы определить, находитесь ли вы в форме редактирования узла (они получают идентификатор [contenttype]_node_form, см. Первую строку примера реализации на странице документации API для способа запуска для всех типов контента).

Для вашего удобства 1, вы должны установить $node->nid, чтобы узнать, является ли это вашим конкретным узлом. Если это так, вы изменили бы элементы определения формы отправки «#access», чтобы отключить его, если вы не на странице предварительного просмотра (см. Функцию node_form() от модуля узла о том, как Drupal делает это - довольно далеко до конца функции).

Для вашей потребности 2 вы просто измените записи '#value' определений кнопки отправки и предварительного просмотра в массиве $ form.