我需要在wordpress网站中创建一个注册/登录系统。认证将使用外部API源。我以前创建过基本的登录系统,但从未通过WP。应用程序的一般流程是:
登录提交->API身份验证->登录用户。注销提交->API认证->注销用户。
我感兴趣的部分是第三部分(在身份验证之后)。检查用户是否登录($_SESSION
?DB?BOTH?)的过程应该是什么
我思考的过程如下:1) 用户登录-创建新会话-并将sessionID保存在cookie中。2) 在主题index.php
中,检查是否已设置$_session(sessionID)
3) 如果是-$var=in; else $var=out
;2) 每页检查$var==是否为in或out。
这是在wordpress中计划安全登录的好方法吗?
Wordpress登录系统已经安全,但如果您想添加外部身份验证,而不是自己构建所有登录系统,您只需使用wp_login操作挂钩调用外部API即可。
当用户使用标准wp登录页面登录时,就会触发wp_login操作挂钩,您可以在那里执行代码。
<?php
function your_function($user_login, $user) {
// enter your external authentification API call here
}
add_action('wp_login', 'your_function', 10, 2);
?>
使用$user变量从wp数据库中检索您想要的用户数据
更多信息:http://codex.wordpress.org/Plugin_API/Action_Reference/wp_login