Un module personnalisé peut utiliser hook_form_alter()pour supprimer l'élément de formulaire du bouton d'aperçu dans n'importe quel formulaire:
/**
* Implements hook_form_alter().
*/function MYMODULE_form_alter(&$form, $form_state, $form_id){// Look for any form provided by the contact module.// If you want to target a specific form you'll use the whole form ID// (e.g. Website feedback = 'contact_message_feedback_form').if(strpos($form_id,'contact_message_')!== FALSE){
$form['actions']['preview']['#access']= FALSE;}}
Si je me souviens bien, la meilleure façon de supprimer un élément de formulaire au lieu d'utiliser unset () est de définir la propriété #access sur FALSE, donc: $ form ['actions'] ['preview'] ['# access'] = FALSE ;
batigolix
Cela ne fonctionne pas pour les boutons d'action dans D8. Si cela a été corrigé ou s'il existe une alternative (je n'ai pas eu le temps de rechercher ce qui s'y passe), n'hésitez pas à mettre à jour la réponse en conséquence.
Shawn Conn
Semble bien fonctionner. J'ai mis à jour l'extrait de
code
A-t-il été effectué via un thème, un hook_form_form_id_alter()crochet, un extrait de code complet (fonctionne pour un formulaire de contact par défaut):function THEME_form_contact_message_feedback_form_alter(&$form, &$form_state, $form_id) { $form['actions']['preview']['#access'] = FALSE; }
tulvit
1
Cela fonctionne pour moi La meilleure façon de le faire Ajoutez ce code à votre fichier YOURPROFILENAME.profile
Il y a des correctifs en cours de travail et de test, mais aucun commit n'est encore https://www.drupal.org/project/drupal/issues/2960353 . Les correctifs fonctionnent sur le dernier D8 à ce jour, mais jusqu'à ce qu'un correctif soit validé, suggérez d'utiliser le module Masquer le bouton de prévisualisation https://www.drupal.org/project/hide_preview fonctionne également bien pour d'autres pages de formulaire. Dans le cas, cela aide ceux qui ne sont pas à l'aise avec le travail avec des crochets et des patchs.
Réponses:
Un module personnalisé peut utiliser
hook_form_alter()
pour supprimer l'élément de formulaire du bouton d'aperçu dans n'importe quel formulaire:la source
hook_form_form_id_alter()
crochet, un extrait de code complet (fonctionne pour un formulaire de contact par défaut):function THEME_form_contact_message_feedback_form_alter(&$form, &$form_state, $form_id) { $form['actions']['preview']['#access'] = FALSE; }
Cela fonctionne pour moi La meilleure façon de le faire Ajoutez ce code à votre fichier YOURPROFILENAME.profile
la source
Il y a des correctifs en cours de travail et de test, mais aucun commit n'est encore https://www.drupal.org/project/drupal/issues/2960353 . Les correctifs fonctionnent sur le dernier D8 à ce jour, mais jusqu'à ce qu'un correctif soit validé, suggérez d'utiliser le module Masquer le bouton de prévisualisation https://www.drupal.org/project/hide_preview fonctionne également bien pour d'autres pages de formulaire. Dans le cas, cela aide ceux qui ne sont pas à l'aise avec le travail avec des crochets et des patchs.
la source