Modul Registrasi Pengguna untuk Drupal


22

Drupal menggunakan email untuk tujuan pendaftaran pengguna. Alih-alih registrasi pengguna Drupal out-of-box yang mengharuskan pengguna untuk menentukan nama pengguna dan alamat email, saya ingin formulir pendaftaran pengguna lengkap (dengan captcha, profil pengguna dll, seperti pendaftaran yahoo atau gmail) untuk situs web saya.

Apakah ada modul yang melakukan itu?

Jawaban:


24

Ada beberapa opsi untuk ini.

Untuk mendapatkan bidang profil, solusi yang paling umum adalah modul profil yang termasuk dalam inti Drupal. Pergi ke Administer > Site building > Modulesdan aktifkan di bawah core-opsional. Kemudian Anda dapat mengkonfigurasi modul Profil di Administer > User settings > Profiledan di pengaturan Anda dapat mengatakan apakah bidang akan ditampilkan saat pendaftaran atau tidak.

Untuk mendapatkan captcha saat pendaftaran, Anda akan memerlukan salah satu dari beberapa modul:

Saya lebih suka Mollom karena berfungsi sangat baik tanpa mengganggu, tetapi mengirimkan konten Anda ke situs eksternal untuk melakukan verifikasi.

Ada juga Captcha yang kurang dapat diandalkan daripada Mollom tetapi yang menyimpan konten di dalam situs Anda.


Menggunakan modul profil konten adalah pilihan yang lebih baik daripada modul profil standar. Profil konten membuat simpul.
eddy147

2
Blech. Tidak juga. Profil konten adalah sekelompok overhead. Jika profil inti berfungsi dengan baik untuk kebutuhan pengguna (yang ia lakukan dalam kasus ini) maka itu jauh lebih sederhana daripada profil konten. "Profil konten menciptakan simpul" tetapi Simpul tidak selalu lebih baik!
greggles

10

Pilihan khas untuk ini adalah menggunakan kombinasi content_profile untuk membuat profil pengguna sebagai node, content_profile_registration , komponen content_profile, untuk membuat profil seperti itu pada saat pendaftaran menggunakan formulir edit simpul yang lengkap, dan mungkin auto_assign_role jika Anda memiliki beberapa tipe pengguna dengan tipe profil berbeda.

Untuk bagian captcha, Mollom adalah layanan yang menarik, seperti yang disarankan Greggles, tetapi Anda mungkin juga ingin mempertimbangkan reCaptcha , yang juga bagus bahkan berfungsi ganda sebagai layanan publik.


7

Tampaknya proses yang disarankan sekarang adalah membuat bidang. Dari situs Drupal :

Modul Profile sudah tidak digunakan lagi di Drupal 7. Hanya disimpan untuk menyediakan jalur peningkatan untuk situs Drupal 6 yang menggunakannya. Penggunaan modul Profile2 atau membuat bidang langsung pada entitas pengguna direkomendasikan di Drupal 7.


1

ReCaptcha pasti.

Anda juga dapat menampilkan bidang profil inti sederhana dalam pendaftaran jika Anda ingin tetap ramping. Meskipun ini sering mengharuskan Anda untuk tema user_profile.tpl.php jika Anda ingin halaman tersebut publik.

PS: Modul Registrasi Email mungkin dari pengguna, juga LoginToboggan .


1

Sehubungan dengan "formulir pendaftaran pengguna lengkap", Anda dapat pergi ke Admin >> Gunakan Manajemen >> Profil kemudian buat / sesuaikan bidang Anda dan pastikan bahwa Anda mencentang opsi "Terlihat dalam formulir pendaftaran pengguna".


0

Jika saya mengedit user_profile.tpl.phpmaka saya dapat dengan mudah mempertahankan bagian pendaftaran seperti yang saya inginkan.

<?php
   // Validate the username:
   if (user_access('change own username') || user_access('administer users') || arg(1) == 'register') {
     if ($error = user_validate_name($edit['name'])) {
       form_set_error('name', $error);
     }
     else if (db_num_rows(db_query("SELECT uid FROM {users} WHERE uid != %d AND LOWER(name) = LOWER('%s')", $uid, $edit['name'])) > 0) {
       form_set_error('name', t('The name %name is already taken.', array('%name' => $edit['name'])));
     }
     else if (drupal_is_denied('user', $edit['name'])) {
       form_set_error('name', t('The name %name has been denied access.', array('%name' => $edit['name'])));
     }
   }
?>
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.