hook_form_FORMID_alter не работает
function send_xml_form_user_profile_form_alter(&$form, &$form_state){
$form["#submit"][] = 'send_xml_edit_account_submit_function';
drupal_set_message('<pre>' . print_r($form['#submit'], TRUE) . '</pre>');
}
function send_xml_edit_account_submit_function($form, &$form_state) {
drupal_set_message(t("ahoy"));
}
название модуля send_xml.module
,
этот код drupal_set_message('<pre>' . print_r($form['#submit'], TRUE) . '</pre>');
дисплеи
Array
(
[0] => user_profile_form_submit
[1] => send_xml_edit_account_submit_function
)
но этот код drupal_set_message(t("ahoy"));
не отображается...
кто-нибудь звонит в колокол?
довольно неприятно иметь проблемы, которые вы не можете найти причину, почему... кто-нибудь испытывал это раньше? Если да, пожалуйста, поделитесь со мной вашими решениями. Большое спасибо!:)
2 ответа
Решение
Нет проблем с кодом, который вы вставили. Я проверил это, и он отлично работает; Я получаю "Ахой" отображается.
Предложения:
- Попробуйте это на новой установке Drupal.
- Существуют ли обратные вызовы проверки, которые препятствуют выполнению обратного вызова отправки?
Для drupal 7 есть три аргумента с изменением формы.
function hook_form_FORM_ID_alter(&$form, &$form_state, $form_id) {
// your code
}
Надеюсь, это сработает для вас...