Paksa Pengguna Untuk Login Sebelum Membaca Tulisan di WordPress

Jika blog Anda memiliki beberapa area terlarang yang tidak ingin Anda publikasikan ke semua pengunjung, hanya untuk anggota saja, Anda mungkin menginginkannya memaksa pengguna untuk login sebelum membaca posting ini . Untungnya, WordPress memiliki fungsi built-in yang bisa membantu kita untuk melakukan itu.

WordPress: Paksa User Untuk Login Sebelum Membaca Tulisan

Fungsi auth_redirect (), begitulah cara kerjanya: Ketika dipanggil dari sebuah halaman, ia akan memeriksa apakah pengguna melihat halaman tersebut masuk. Jika pengguna tidak masuk, mereka akan dialihkan ke halaman login . Pengguna diarahkan sedemikian rupa sehingga, saat log in, mereka akan menjadi dikirim langsung ke halaman yang awalnya mereka coba akses .

Dengan menggunakan fungsi ini, kita bisa menerapkan kode kita yang memeriksa apakah posting dibatasi atau tidak, dan mengarahkan pengguna ke halaman login jika diperlukan.

Cukup tempelkan kode berikut ke tema Anda functions.php mengajukan:

fungsi my_force_login () {
     pos $ global;

     jika (! is_single ()) kembali;

     $ ids = array (188, 185, 171);  // kumpulan ID pos yang memaksa login untuk membaca

     if (in_array ((int) $ post-> ID, $ id) &&! is_user_logged_in ()) {
     auth_redirect ();
     }
     } 

Ubah susunan ID pos agar sesuai dengan kebutuhan Anda. Setelah itu, buka header.php file dan letakkan kode berikut di bagian paling atas:

Kodenya sederhana, tapi bisa memperluasnya dengan lebih banyak pilihan seperti: memerlukan login di beberapa kategori tertentu, buatlah sebuah halaman pilihan untuk ID posting masukan yang mudah, dll.

Fungsinya auth_redirect () tersedia sejak WordPress 1.5.