在注销前获取注销时间
Get log out time just before logging out
我有一个代码可以在您注销 wordpress 时获取用户名并将其写入日志文件,但是当我将 wordpress 核心更新到 5.7 时它已停止工作。
当您注销时,用户名不再写入文件。也许我的钩子有问题。这是我的代码:
function get_username(){
if(is_user_logged_in()){
$active_user = wp_get_current_user();
$username = $active_user->user_login;
$username = "User's username: ".$username;
log_file_setup($username);
}
}
add_action('wp_logout', 'get_username',1);
您可以使用clear_auth_cookie
函数获取用户名。
function users_last_login() {
if(is_user_logged_in()){
$active_user = wp_get_current_user();
$username = $active_user->user_login;
$username = "User's username: ".$username;
update_user_meta( $active_user->ID, 'logout_time', date('Y-m-d H:i:s') );
log_file_setup($username);
}
}
add_action( 'clear_auth_cookie', 'get_username_on_logout', 10 );
或者您可以使用 template_redirect
function get_username_on_template_redirect() {
if ( isset( $_GET['action'] ) && $_GET['action'] == 'logout' && is_user_logged_in() ) {
$active_user = wp_get_current_user();
$username = $active_user->user_login;
$username = "User's username: ".$username;
update_user_meta( $active_user->ID, 'logout_time', date('Y-m-d H:i:s') );
log_file_setup($username);
}
}
add_action( 'template_redirect', 'get_username_on_template_redirect' );
我想我明白了
我更改了挂钩:
add_action( 'wp_logout', 'get_username', 1 );
至
add_action('clear_auth_cookie', 'get_username',1);
欢迎提出任何其他建议
我有一个代码可以在您注销 wordpress 时获取用户名并将其写入日志文件,但是当我将 wordpress 核心更新到 5.7 时它已停止工作。 当您注销时,用户名不再写入文件。也许我的钩子有问题。这是我的代码:
function get_username(){
if(is_user_logged_in()){
$active_user = wp_get_current_user();
$username = $active_user->user_login;
$username = "User's username: ".$username;
log_file_setup($username);
}
}
add_action('wp_logout', 'get_username',1);
您可以使用clear_auth_cookie
函数获取用户名。
function users_last_login() {
if(is_user_logged_in()){
$active_user = wp_get_current_user();
$username = $active_user->user_login;
$username = "User's username: ".$username;
update_user_meta( $active_user->ID, 'logout_time', date('Y-m-d H:i:s') );
log_file_setup($username);
}
}
add_action( 'clear_auth_cookie', 'get_username_on_logout', 10 );
或者您可以使用 template_redirect
function get_username_on_template_redirect() {
if ( isset( $_GET['action'] ) && $_GET['action'] == 'logout' && is_user_logged_in() ) {
$active_user = wp_get_current_user();
$username = $active_user->user_login;
$username = "User's username: ".$username;
update_user_meta( $active_user->ID, 'logout_time', date('Y-m-d H:i:s') );
log_file_setup($username);
}
}
add_action( 'template_redirect', 'get_username_on_template_redirect' );
我想我明白了
我更改了挂钩:
add_action( 'wp_logout', 'get_username', 1 );
至
add_action('clear_auth_cookie', 'get_username',1);
欢迎提出任何其他建议