将Wordpress会话转换为用户ID

时间:2013-10-07 23:44:24

标签: php session wordpress-plugin wordpress

我正在使用WordPress插件,我遇到一个问题,我得到了WordPress登录用户ID&会话,我需要从我的服务器代表此用户创建一个评论。

[更新]我的意思是“我的服务器”来自我自己的Java服务器。我的评论系统在Java服务器上创建注释,Java服务器也需要在wordpress PHP服务器上创建相同的注释。为了创建用户帐户的注释,我将会话发送到Java服务器,因此它将作为wordpress将会话转换为用户,因此它将是安全的。 [/更新]

问题是为了使这个操作安全,我需要用WordPress检查我得到的会话是否有效并匹配用户ID。

我找不到任何将会话转换为用户ID的API,以便检查它是否匹配。

无论如何使用WordPress API做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以通过多种方式从身份验证Cookie中获取用户ID,具体取决于您要使用的路径,这是您应该检查的功能:

get_current_user_id - >返回当前用户的ID。
wp_get_current_user - >检索当前用户对象(WP_User) get_currentuserinfo()的包装器使用全局变量$ current_user。您可以检查此函数here的代码,以了解如何构建脚本。


wp_validate_auth_cookie - 验证身份验证Cookie。它返回用户ID。
我想你将不得不使用最后一个,就像在get_currentuserinfo中使用的那样:

$user = wp_validate_auth_cookie( $_COOKIE[LOGGED_IN_COOKIE], 'logged_in' )
if ($user != 0) { //then we have a valid user...}