wordpress - 我们怎样才能让网站经过身份验证的用户自动登录到 WordPress?

标签 wordpress authentication integration autologin

我有一个 Web 应用程序,用户在使用它之前将对其进行身份验证。此应用程序的帮助文档是使用安装在不同服务器上的 Wordpress 维护的(如果需要,Wordpress 实例也可以安装在同一服务器上)。为了访问文档,用户必须经过身份验证,现在这是使用 Wordpress 插件完成的。

现在我想让所有人都通用身份验证过程。即用户进入 Web 应用程序,然后登录以使用该应用程序,他们可以单击应用程序内的“文档”链接,用户也会自动登录到 Wordpress。我该如何实现这个?

最佳答案

我以前必须做类似的事情,用户必须单击电子邮件中的链接,然后它会自动登录。

我将以下内容添加到我的主题 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_login."SOMESECRETPHRASE".$user_email) 创建的 到链接末尾

然后他们将作为正确的 WordPress 用户自动登录到 WordPress。

关于wordpress - 我们怎样才能让网站经过身份验证的用户自动登录到 WordPress?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10425747/

相关文章:

R:建立积分矩阵的最快方法?

matlab - 获取综合向量值

javascript - 计算一个 div 中的 div 数量,在一页 wordpress 帖子上有多个父 div

html - Wordpress:页脚下方的额外空间

css - WordPress/阿瓦达主题 : How to globally change link style?

linux - 通过登录脚本跟踪路径

asp.net - 如何在 Windows Server 2008 R2 上安装 PayPal API 证书

php - Wordpress - 为媒体库中的图像正确的 php 链接

spring - 自定义 AuthenticationFailureHandler 中的 Flash 属性

通过 IIS 在 ASP Classic 中进行 HTTP 身份验证(基本或摘要)