Как я могу удалить кнопку предварительного просмотра из контактной формы?


Как отключить предварительный просмотр в контактной форме в Drupal 8.1.x

enter image description here

 8
Author: Wim Mostrey, 2016-08-01

3 answers

Пользовательский модуль может использовать hook_form_alter() чтобы удалить элемент формы кнопки предварительного просмотра в любой форме:

/**
 * 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;
  }
}
 15
Author: Shawn Conn, 2016-12-21 11:39:32

Для меня это лучший способ сделать это, добавив этот код в файл 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;
  }
}
 1
Author: omkar gaonkar, 2017-11-23 11:03:18

В процессе работы и тестирования находятся исправления, но пока нет фиксаций https://www.drupal.org/project/drupal/issues/2960353 . Исправления работают на последней версии D8 на сегодняшний день, но до тех пор, пока исправление не будет зафиксировано, рекомендуется использовать модуль кнопки скрытия предварительного просмотра https://www.drupal.org/project/hide_preview хорошо работает и для других страниц форм. В случае, если это поможет тем, кому неудобно работать с крючками и заплатками.

 1
Author: jaesperanza, 2020-04-04 03:55:18