Ho personalizzato le etichette dei vari campi del mio modulo contatti tramite una funzione nel mio template.php:
function mioTema_preprocess_contact_mail_page(&$vars) {
$vars['form']['name']['#title'] = t('Nome/Azienda ');
$vars['form']['mail']['#title'] = t('E-mail ');
......
.......etc...etc...
}
sono tutti campi obbligatori, il problema è che nel momento in cui uno di questi campi vieni omesso, nel messaggio di errore viene riportato il nome del campo originario, esempio:
Il campo Il tuo nome è obbligatorio
Il campo Il tuo indirizzo e-mail è obbligatorio
anzichè:
Il campo nome/azienda è obbligatorio
Il campo e-mai è obbligatorio
Qualcuno sa spiegarmi il motivo di questo comportamento?
grazie
Domanda: ma perchè non hai modificato il form tramite l'hook _form_alter() ?
M.
--
Michel 'ZioBudda' Morelli -- [email protected]
Sviluppo applicazioni CMS DRUPAL e web dinamiche -- Corsi Drupal -- Amministrazione Drupal -- Hosting Drupal
Forse ignoro il motivo per cui stai facendo questa modifica via codice, ma avevi già scartato l'uso di webform?
http://drupal.org/project/webform
E' molto flessibile e l'ideale per customizzare una propria pagina di contatti.
Abbiamo realizzato un modulo contatti per esempio di questo tipo,
http://www.nylux.it/it/contattaci
ma puoi farci molto e molto altro.
Ciao
La risposta è che semplicemente non ho ancora fatto miei tutti i concetti di drupal, sinceramente ho fatto solo qualche lettura superficiale, giusto per conoscenza generale sul meccanismo degli hook.
Per intercettarlo devo creare un mio modulo, è corretto?
Ti ringrazio, non ho preso in considerazione il modulo perchè, comunque i campi del form contatti di default di drupal, mi vanno bene. Non ho intenzione di aggiungere altri campi, ma soltanto di modificarne le voci esistenti. A tuo giudizio è il caso di utilizzare comunque il modulo?
Entrambe rappresentano un esperienza, quindi a mio avviso sono due approcci comunque validi, uno più "sistemistico" e di configurazione e uno più di programmazione.
Sicuramente una buona modifica, fatta bene, è una soluzione pulita e pratica in molte circostanze.
Io quando posso preferisco usare i moduli, perché a mio avviso ho dei vantaggi significativi:
- Evito di riscrivere la ruota e fare modifiche via codice non necessarie.
- Prendo dimestichezza con i moduli e mi rendo conto dei loro eventuali limiti, quindi in futuro saprò meglio se è il caso o meno di utilizzare WebForm per eventuali nuovi obiettivi che mi verranno in mente.
- Oggi posso usarlo per fare una cosa semplice, domani potranno essermi utili per lavori più complessi. Un domani potrei mangiarmi le mani sapendo che quel modulo faceva esattamente quello che volevo io e bastava saperlo prima e mi saresti risparmiato tanto lavoro inutile.
- Se voglio programmare e contribuire con nuove funzionalità posso farlo in linea con la comunità e quindi il mio codice acquisterebbe maggiore valore ai fini di questo progetto che fondamentalmente si basa sulle nostre esigenze e il nostro lavoro.
Ammetto che questa è una mia opinione e potrebbe essere opinabile, ma spero di averti dato qualche elemento in più per valutare la scelta più adatta alle tue esigenze.
Ciao