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:
/**
* 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;
}
}
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
/**
* Implements hook_form_alter().
*/
function YOURPROFILENAME_form_alter(&$form, $form_state, $form_id) {
if (strpos($form_id, 'contact_message_') !== FALSE) {
$form['actions']['preview']['#access'] = FALSE;
}
}
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.