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.