Я нашел обсуждение некоторых методов для d6 здесь http://drupal.org/node/344802 о том, как изменить текст кнопки «Сохранить» узла на sg else.
Любые советы для d7? Я бы предпочел использовать форму API.
Я нашел обсуждение некоторых методов для d6 здесь http://drupal.org/node/344802 о том, как изменить текст кнопки «Сохранить» узла на sg else.
Любые советы для d7? Я бы предпочел использовать форму API.
Ответы:
Вы можете использовать модуль переопределения строк или использовать ловушку:
function yourmodule_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'name_of_form') {
$form['actions']['submit']['#value'] = 'Your button text';
}
}
Вот пример: я создал модуль с именем change_form_values
и идентификатором формы моего типа контента content_type_test_node_form
:
эта работа для меня в Drupal 7:
function change_form_values_form_alter(&$form, &$form_state, $form_id) {
//dsm($form_id); // to see form ID
if ($form_id == "content_type_test_node_form") {
$form['actions']['submit']['#value'] = 'New button text';
}
}
эта работа для меня в Drupal 6:
function change_form_values_form_alter(&$form, &$form_state, $form_id) {
//dsm($form['form_id']['#id']);
if ($form_id == "content_type_test_node_form") {
$form['buttons']['submit']['#value'] = 'New button text';
}
}
Я надеюсь, что информация будет полезной.
Я нашел отличный модуль для редактирования кнопок Node для этого, и он работает на самом деле из нашего окна, используя admin. Вот выдержка об этом со страницы проекта модуля:
Это простой маленький модуль, который позволяет изменять текст на кнопках «Сохранить», «Предварительный просмотр» и «Удалить» в форме узла.
Для Drupal7 все просто:
$form['buttons'] = array(
'#type' => 'submit',
'#value' => t('Your desire text here'),
);
Без дополнительных функций ...
#weight
, #validate
, #submit
...). Вам лучше пойти только за #value
, как написано в других ответах выше.