Como obter o userid no gancho de ação wp_logout?

6

Eu preciso executar alguma limpeza depois que um usuário fez logout, então adicionei um gancho de ação wp_logout. O problema é que wp_get_current_user () já retorna null se chamado dentro do gancho de ação wp_logout. Como obtenho o logout dos usuários userid dentro de um gancho de ação wp_logout?

    
por Davos Seaworth 22.01.2012 / 18:07

3 respostas

11

Que tal enganchar 'clear_auth_cookie' com a limpeza que você precisa fazer? Se você precisar de mais profundidade, você pode substituir o wp_clear_auth_cookie() , mas isso pode entrar em problemas onde ele entrará em conflito com outros plugins, então evite isso se possível.

    
por mor7ifer 22.01.2012 / 18:12
-2

Eu sei que isso é um pouco tarde .... mas eu me deparei com esse problema. Foi assim que resolvi o problema.

Adicione o seguinte ao seu functions.php

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

Isso basicamente armazena o ID do usuário em um parâmetro de url quando o usuário efetua logout.

Em seguida, basta obter o parâmetro com o seguinte:

$_GET['userid']

Espero que isso ajude alguém no futuro a encontrar este post.

    
por danyo 11.12.2013 / 13:46
-3
add_action('wp_logout', 'user_id');

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

use isso no arquivo principal do plugin

    
por sandeep 24.09.2012 / 07:41

Tags