我们如何让网站认证用户自动登录到wordpress?
我有一个Web应用程序,用户在使用它之前将经过身份验证。此应用程序的帮助文档使用安装在不同服务器上的Wordpress进行维护(如果需要,Wordpress实例也可以安装在同一服务器上)。为了访问文档,用户必须通过身份验证,现在这是使用Wordpress插件完成的我们如何让网站认证用户自动登录到wordpress?,wordpress,authentication,integration,autologin,Wordpress,Authentication,Integration,Autologin,我有一个Web应用程序,用户在使用它之前将经过身份验证。此应用程序的帮助文档使用安装在不同服务器上的Wordpress进行维护(如果需要,Wordpress实例也可以安装在同一服务器上)。为了访问文档,用户必须通过身份验证,现在这是使用Wordpress插件完成的 现在我想让身份验证过程对所有人都通用。i、 e用户来到web应用程序,然后登录使用该应用程序,他们可以单击应用程序中的“文档”链接,用户也可以自动登录Wordpress。如何实现这一点?我以前也做过类似的事情,用户必须单击电子邮件中的
现在我想让身份验证过程对所有人都通用。i、 e用户来到web应用程序,然后登录使用该应用程序,他们可以单击应用程序中的“文档”链接,用户也可以自动登录Wordpress。如何实现这一点?我以前也做过类似的事情,用户必须单击电子邮件中的链接,然后自动登录 我在themes header.php中添加了以下内容
if (!is_user_logged_in())
{
if (isset($_GET['u']) && !empty($_GET['u']))
{
$u = $_GET['u'];
$result = $wpdb->get_row($wpdb->prepare("SELECT * FROM wp_users WHERE md5(concat(user_login,'SOMESECRETPHRASE',user_email)) = '%s' AND user_login != 'admin'",$u));
if (isset($result->ID) && isset($result->user_login))
{
wp_set_current_user($result->ID, $result->user_login);
wp_set_auth_cookie($result->ID);
}
}
}
用户登录链接是通过添加/?u=“.md5($user\u login.”SOMESECRETPHRASE“$user\u email)
到链接的末尾
然后,他们将自动以正确的wordpress用户身份登录wordpress。谢谢这一点-这对我正在进行的项目非常有帮助。作为一项额外的安全措施,我还添加了当前日期的md5和另一个密码短语。这样,脚本将只允许最近的登录链接。伙计,这不好啊!你必须生成一个完全随机的长令牌,并将其实际保存给用户,然后匹配完全相同的令牌,最好是使用
tries
列,这样就不能强制执行。如果有人猜到你的EASY EASY MD5(糟糕!),他们可以作为任何用户登录。