it-swarm-id.com

Nonaktifkan daftar notifikasi email

Saya telah melakukan penelitian mendalam melalui web dan saya juga mencoba banyak solusi alternatif, tetapi saya tidak menemukan solusi untuk menonaktifkan notifikasi email untuk pengguna baru.

Di Pengaturan Pengguna saya, saya memiliki opsi "Pengunjung dapat membuat akun tetapi persetujuan administrator diperlukan" dicentang, dan opsi "Memerlukan verifikasi email ketika pengunjung membuat akun" tidak dicentang.

Apakah kamu punya ide?

19
lnunesbr

Jika Anda melihat fungsi _ user_email_notify () , ia memeriksa variabel 'user_mail_' . $op . '_notify' apakah harus mengirim email atau tidak. Dengan anggapan Anda telah menonaktifkan konfirmasi email (jika tidak, menonaktifkan pemberitahuan email akan aneh;)), $ op adalah 'register_no_approval_required'. Jadi nama variabel lengkapnya adalah 'user_mail_register_no_approval_required_notify'.

Tampaknya tidak ada Antarmuka Pengguna untuk variabel itu. Namun, Anda dapat mengaturnya di settings.php Anda, menambahkan baris berikut di akhir settings.php (mungkin di dalam situs/default).

$conf['user_mail_register_no_approval_required_notify'] = FALSE;

Anda dapat melakukan hal yang sama untuk notifikasi surat lain juga; kemungkinan lain $op nilai terdaftar di halaman tertaut.

31
Berdir

Anda dapat menggunakan modul Mailcontrol .

Ini memungkinkan Anda untuk menghidupkan/mematikan standar Drupal email yang Anda inginkan langsung dari UI.

Memiliki kontrol penuh atas surat-surat default yang dikirim oleh Drupal 7 di luar kotak.

Deskripsi

Modul kecil ini memperluas halaman pengaturan akun asli Drupal 7 dengan kemampuan untuk secara global AKTIF/MATIKAN semua surat standar. Secara default Drupal 7 tidak memberikan opsi untuk secara global nonaktifkan mail berikut:

  • Selamat datang (pengguna baru dibuat oleh administrator)
  • Selamat datang (menunggu persetujuan)
  • Selamat datang (tidak diperlukan persetujuan)
  • Pemulihan kata sandi
8
Reszli

Dalam Drupal 8, setara dengan kode yang diberikan dari Berdir untuk file settings.php adalah yang berikut.

$config['user.settings']['notify.register_no_approval_required'] = FALSE;
5
dongjie

Anda dapat menggunakan ini dalam modul khusus untuk menambahkan pengaturan dalam kotak centang seperti yang dilakukan dalam pengaturan aktivasi akun.

function your_module_form_user_admin_settings_alter(&$form, &$form_state) {

  // allow admin to choose if a notification mail is sent to no approval required users
  form['email_no_approval_required']['user_mail_register_no_approval_required_notify'] = array(
    '#type' => 'checkbox',
    '#title' => t('Notify user when account is created.'),
    '#default_value' => variable_get('user_mail_register_no_approval_required_notify', FALSE),
  );
}
4
Will

Dalam Drupal 7:

Anda dapat mengedit tabel variabel secara langsung: nama: user_mail_status_activated_notify nilai: i: 0;

atau di file template.php Anda:

if(variable_get('user_mail_status_activated_notify') == 1){
    variable_set('user_mail_status_activated_notify', 0);
}
4
Chris Callender

Ada kotak centang untuk menonaktifkan di admin/pengguna/pengguna/buat. Bagi saya, ini dinonaktifkan secara default.

1
Pol Dellaiera

ntuk Drupal 8 pekerjaan berikut untuk saya.

Kode berikut tidak mengirim email setelah pendaftaran.

/**
 * Implements hook_mail_alter().
 *
 * Don't send any mail during registration.
 */
function mymodule_mail_alter(&$message) {
  if ($message['id'] == 'user_register_no_approval_required' && $message['key'] == 'register_no_approval_required') {
      $message['send'] = FALSE;
      return;
  }
}
0
vijay