Quando si crea un nuovo node, Drupal visulizza il messaggio di status Nome content type ... has been created.
Se fosse un visitatore a creare questo nuovo node, si potrebbe avere il bisogno di eliminare o personalizzare questo messaggio.
La funzione drupal_get_messages ci permette di eliminare la coda dei messaggi del tipo specificato, che in questo caso è status.
Uno dei modi per eseguire questa funzione nella creazione di un node è aggiungere una funzione personalizzata nei submit_handlers del form.
function MYMODULE_form_alter(&$form, &$form_state, $form_id) {
switch($form_id) {
case 'nodetype_node_form':
$form['#validate'][] = '_custom_feedback_node_form_validate';
break;
}
}
function _custom_feedback_node_form_validate($form, &$form_state) {
$form_state['submit_handlers'][] = '_custom_feedback_node_form_disable_msg';
}
function _custom_feedback_node_form_disable_msg($form, &$form_state) {
$status_msg = drupal_get_messages('status');
drupal_set_message(t("Thank you for your interest in this web site!"));
}
Un'altro modo è utilizzare il modulo Disable Messages ma questo per un sito multilingua può risultare poco amichebole.
E così Drupal diventa muto quanto Buster Keaton.