在wp_login.php文件中登录成功后无法获取用户ID

时间:2013-09-19 作者:Ardi Wirawan

我在登录文件后想获取用户id WordPress时遇到问题wp_login.php, 我试图在这个文件的第行之后插入一些代码wp_safe_redirect($redirect_to); 在登录情况下。

我必须在登录后获取用户id才能更新我的自定义WordPress表。

session_start();
require( dirname(__FILE__) . \'/wp-load.php\' );
global $wpdb;

$session_id     = session_id(); 
$current_user   = wp_get_current_user();
$id_user        = $current_user->ID;

$wpdb->query( 
    $wpdb->prepare("UPDATE wp_shortlist SET id_user=\'$id_user\' WHERE id_session=\'$session_id\' ")
);
登录文件后获取用户id的想法wp_login.php?

1 个回复
最合适的回答,由SO网友:Maruti Mohanty 整理而成

如上所述,修改核心文件是一个坏主意,这样做会打开安全漏洞,最重要的是,你会丢失升级时所做的更改。

要执行上述操作,您可以尝试wp\\u登录挂钩,将代码放入活动主题的函数中。php

function after_login() {
    $current_user = wp_get_current_user();
    $id_user = $current_user->ID;
       // The query you were trying would go here.
}
add_action( \'wp_login\', \'after_login\' );
希望有帮助!

结束