Bagaimana cara mendapatkan userid di wp_logout action hook?


8

Saya perlu melakukan pembersihan setelah pengguna keluar, jadi saya menambahkan kait tindakan wp_logout. Masalahnya adalah, wp_get_current_user () sudah mengembalikan null jika dipanggil dari dalam kait tindakan wp_logout. Bagaimana cara mendapatkan userid logout pengguna di dalam wp_logout action hook?

Jawaban:


14

Bagaimana dengan mengaitkan 'clear_auth_cookie'dengan pembersihan yang perlu Anda lakukan? Jika Anda perlu lebih mendalam, Anda bisa langsung mengganti wp_clear_auth_cookie(), tetapi itu bisa menjadi masalah di mana itu akan bertentangan dengan plugin lain, jadi hindari itu jika memungkinkan.


Terima kasih banyak! Ini persis apa yang saya cari.
— Davos Seaworth

Ini bekerja dengan sempurna. Saya telah menggunakan pengait ini untuk plugin audit khusus, untuk merekam acara logout. Terima kasih.
— julianm

-2

Saya tahu ini agak terlambat .... tetapi saya mengalami masalah ini sendiri. Ini adalah bagaimana saya menyelesaikan masalah.

Tambahkan berikut ini ke functions.php Anda

function logout_redirect765(){
  $current_user = wp_get_current_user(); 
  wp_redirect( home_url().'/?userid='.$current_user->ID ); 
  exit; 
}
add_action('wp_logout','logout_redirect765');

Ini pada dasarnya menyimpan userid dalam parameter url ketika pengguna logout.

Maka cukup dapatkan parameter dengan yang berikut:

$_GET['userid']

Saya harap ini membantu seseorang di masa depan yang menemukan pos ini.


-3
add_action('wp_logout', 'user_id');

function user_id()
{
    wp_get_current_user()->data->ID;
}

gunakan ini di file utama plugin


4
Karena OP menyatakan 'wp_get_current_user () sudah mengembalikan null jika dipanggil dari dalam kait tindakan wp_logout' - jadi ini tidak akan berfungsi.
— marfarma
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.