Saya akan mulai mengerjakan prototipe untuk klien - dan salah satu fitur yang diperlukan adalah integrasi dengan sistem otentikasi / registrasi pengguna internal.
Sistem ini akan bertindak sebagai basis data pengguna yang resmi, dan menyediakan antarmuka yang TENANG untuk membuat pengguna baru, dan mengautentikasi pengguna yang valid.
Saya harus dapat membuat pengguna baru di WP dan sebagai bagian dari proses itu membuat panggilan ke API otentikasi eksternal untuk membuat / memvalidasi pengguna itu.
Seseorang yang adalah pengguna yang valid tetapi tidak dikenal oleh WP harus dapat login untuk berkomentar, tanpa harus mendaftar di situs WP sendiri.
Seseorang yang masuk ke situs web keseluruhan juga harus secara otomatis masuk ke WordPress.
Saya pikir yang berikut ini adalah jalan yang harus ditempuh.
Untuk (1) - apakah ada kait registrasi yang dapat saya gunakan?
Untuk (2) - Saya berasumsi saya mengaitkan filter otentikasi - yaitu ketika seseorang mencoba masuk, saya menjebaknya, melakukan panggilan ke sistem eksternal, dan kemudian memproses login WP atau mengarahkan mereka ke proses pendaftaran di mana ( 1) menerima tawaran.
Untuk (3) - baca cookie login yang ditetapkan oleh situs utama dan lanjutkan dengan (2)?
Saya kira saya juga harus memasukkan catatan ke tabel pengguna dan usermeta.
Jadi, apakah hal di atas masuk akal - saya belum memikirkan sesuatu. Siapa pun punya sumber daya yang bagus untuk membantu dengan ini (@reak - Saya melihat Anda telah melakukan beberapa pekerjaan dalam hal ini !!).
Memperbarui
Jadi saya masih sedikit membenturkan kepala terhadap hal ini, pada dasarnya saya mencoba menghubungkan ke filter otentikasi, dan menggunakannya untuk:
- memeriksa apakah cookie masuk untuk situs 'master' telah ditetapkan, dan jika ya, validasi ulang terhadap API autentikasi mereka, dan jika valid, paksa masuk dengan WP
wp_signon()
, menggunakan informasi yang terkandung dalam cookie situs master (email dan kata sandi hash) sebagai kredensial untuk WP - jika cookie tidak disetel, arahkan ke halaman login situs master dan dapatkan login / pendaftaran lalu kembali ke langkah 1
- jika tidak ada pengguna WP ketika ada pengguna situs master yang diautentikasi, buatlah dan kemudian jadi 'transparan' (yaitu agar pengguna tidak melihat formulir login WP)
Pada dasarnya, saya ingin menyembunyikan formulir login WP sepenuhnya untuk pengguna yang hanya akan berkomentar, dan kemudian menemukan cara untuk memungkinkan penulis dan admin untuk mengaksesnya secara langsung.
Ini berjalan cukup lambat, inilah yang bisa saya gunakan bantuan:
apakah filter otentikasi yang tepat untuk digunakan? Tampaknya tidak dipanggil dalam semua situasi yang saya harapkan - misalnya widget meta menampilkan tautan masuk / keluar tanpa penguncian kait autentikasi
saya bisa
wp_signon()
mengembalikanWP_User
objek (menunjukkan keberhasilan), tetapi itu tidak mempengaruhi status login - yaitu widget meta masih akan ditampilkan di "Login" bahkan setelah menyegarkan.
Setiap bantuan dengan penuh terima kasih :)