开发的 WordPress 主题或 WordPress 小程序,如果有微信登录,QQ登录等功能,正常输入账户密码登录的方式显示是不能用了。
用户信息验证通过后,如何把用户设置为登录状态呢?
方法一、使用函数 wp_signon
可以参考一下之前的文章《WordPress函数:wp_signon 登录 WordPress 站点 》
将以下代码应用到你的 WordPress 中即可实现自动登录功能:
if (!is_user_logged_in()) {
$creds = array();
$creds['user_login'] = 'example'; // 用户名是 example,自行修改
$creds['user_password'] = '123456'; // 密码是 123456
$creds['remember'] = true;
$user = wp_signon( $creds );
if ( is_wp_error($user) )
echo $user->get_error_message();
}
方法二、无需账号密码的方法
使用微信扫码登录的话,就需要这种方式了。
通过上面的介绍我们可以看出 wp_signon()函数是需要知道用户的用户名及密码的;而现在有种更好的实现方法,不需要知道帐号密码,只需指定用户名即可,实现代码如下:
if (!is_user_logged_in()) {
$user_login = 'example'; // 用户名是 example,自行修改
// 获取用户 id
$user = get_userdatabylogin($user_login);
$user_id = $user->ID;
// 登录
wp_set_current_user($user_id, $user_login);
wp_set_auth_cookie($user_id,true);
do_action('wp_login', $user_login);
}
在这里用到了这个函数:wp_set_auth_cookie(),这个函数的用法跟 wp_signon()函数类似:wp_set_auth_cookie( $user_id, $remember, $secure ),第一个参数是用户 ID,第二个是是否记住用户,第三个是是否启用安全 cookie~
建议不要设置启用安全 cookie ,不太清楚这个参数的原理…… 启用之后总是各种问题……
-
WordPress函数:esc_attr__ 转义属性及翻译WordPress函数:esc_attr__ 转义属性及翻译
-
WordPress函数:esc_attr_e 属性转义、翻译、显示WordPress函数:esc_attr_e 属性转义、翻译、显示
-
WordPress函数:esc_attr_x 带上下文的转义属性,翻译显示WordPress函数:esc_attr_x 带上下文的转义属性,翻译显示
-
WP Multilang WordPress翻译插件WP Multilang插件的主要功能是提供多语言支持,使用户能够创建多语言版本的网站,满足不同语言用户的需求。
-
WordPress公司官网主题在众多的WordPress企业官网主题中,追格公司推出了多款关于WordPress企业官网主题作品。我们之前已经分享过一些关于追格的企业官网主题,包括收费和免费版本,这些主题都因其独特的设计和出色的功能而深受用户喜爱。
-
WordPress必备:使用wp_get_theme()函数获取当前主题详情在WordPress中,wp_get_theme() 函数用于获取当前启用的主题或指定主题的信息。这个函数返回一个 WP_Theme 对象,该对象包含了主题的详细信息,如主题名称、版本、模板目录、样式表目录等。
暂无评论,抢个沙发...