Modul khusus dapat digunakan hook_form_alter()untuk menghapus elemen bentuk tombol pratinjau dalam bentuk apa pun:
/**
* 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;}}
Jika saya ingat betul cara yang lebih disukai untuk menghapus elemen form daripada menggunakan unset () adalah dengan menyetel properti #access ke FALSE, jadi: $ form ['actions'] ['preview'] ['# access'] = FALSE ;
batigolix
Ini tidak berfungsi untuk tombol aksi di D8. Jika ini sudah diperbaiki atau ada alternatif (saya tidak punya waktu untuk meneliti apa yang terjadi di sana), jangan ragu untuk memperbarui jawabannya.
Shawn Conn
Tampaknya bekerja dengan baik. Saya memperbarui cuplikan
batigolix
Apakah itu melalui theming sebagai gantinya, hook_form_form_id_alter()kait, potongan kode lengkap (berfungsi untuk formulir kontak default):function THEME_form_contact_message_feedback_form_alter(&$form, &$form_state, $form_id) { $form['actions']['preview']['#access'] = FALSE; }
tulvit
1
Ini berfungsi untuk saya Cara terbaik untuk melakukannya. Tambahkan kode ini file YOURPROFILENAME.profile Anda
Ada tambalan yang sedang dikerjakan dan sedang diuji tetapi belum ada komitmen https://www.drupal.org/project/drupal/issues/2960353 . Tambalan berfungsi pada D8 terbaru hingga saat ini, tetapi sampai tambalan telah dikomit, sarankan untuk menggunakan modul Sembunyikan Tombol Pratinjau https://www.drupal.org/project/hide_preview juga berfungsi dengan baik untuk halaman formulir lainnya. Dalam hal ini membantu mereka yang tidak nyaman bekerja dengan kait dan tambalan.
Jawaban:
Modul khusus dapat digunakan
hook_form_alter()
untuk menghapus elemen bentuk tombol pratinjau dalam bentuk apa pun:sumber
hook_form_form_id_alter()
kait, potongan kode lengkap (berfungsi untuk formulir kontak default):function THEME_form_contact_message_feedback_form_alter(&$form, &$form_state, $form_id) { $form['actions']['preview']['#access'] = FALSE; }
Ini berfungsi untuk saya Cara terbaik untuk melakukannya. Tambahkan kode ini file YOURPROFILENAME.profile Anda
sumber
Ada tambalan yang sedang dikerjakan dan sedang diuji tetapi belum ada komitmen https://www.drupal.org/project/drupal/issues/2960353 . Tambalan berfungsi pada D8 terbaru hingga saat ini, tetapi sampai tambalan telah dikomit, sarankan untuk menggunakan modul Sembunyikan Tombol Pratinjau https://www.drupal.org/project/hide_preview juga berfungsi dengan baik untuk halaman formulir lainnya. Dalam hal ini membantu mereka yang tidak nyaman bekerja dengan kait dan tambalan.
sumber