来自子文件夹非wp cookie WordPress的身份验证

时间:2013-12-11 作者:user3091886

我对WordPress多站点站点中的用户身份验证有疑问。

我的网站是http://www.drezzy.it 它有自己的用户数据库和登录和注销系统。这是一个非WP网站。当您登录时,它会提供一个cookie,其中包括用户的电子邮件和密码。

我在这里面创建了一个WordPress多站点网站,http://www.drezzy.it/community/speciale/ 可以访问cookie的。

我的问题是:

我如何允许WordPress使用主站点的cookie登录用户,这样他们就不必再次注册或登录?主站点和WP之间的一种桥梁,使其能够只登录一次。

如何在WP中为登录主网站的每个用户创建新用户?

P.S.对不起,我的英语不好,如果你在理解上有困难,可以问我,我会解释得更好D

1 个回复
SO网友:brandoncamenisch

这是一个快速的函数,我有躺在那里,它正是你所说的。它使用一些核心WP功能来完成工作,您必须对其进行修改以满足您的需要,可能需要再次检查事物的安全性,但它应该给您一个良好的开端。

function auto_function() {
    if ( isset( $_GET[\'username\'] ) && isset( $_GET[\'email\'] ) ){

        $user_name   = $_GET[\'username\'];
        $user_email  = $_GET[\'email\'];

        $user_id = username_exists( $user_name );
        if ( ! $user_id and email_exists( $user_email ) == false ) {
            $random_password = wp_generate_password( $length=12, $include_standard_special_chars=false );
            $user_id         = wp_create_user( $user_name, $random_password, $user_email );

            $creds = array();
            $creds[\'user_login\'] = $user_name;
            $creds[\'user_password\'] = $random_password;
            $creds[\'remember\'] = true;
            $user = wp_signon( $creds, false );

            $meta_key = \'some_meta_key\';
            $meta =& get_user_meta($user, $meta_key, true);
            $site_allowance = 3;

            add_user_meta( $user->id, $meta_key, $site_allowance , TRUE );

            #Redirect to help page
            wp_redirect( site_url(\'/user-profile/\') ); exit;

        } else {
            $random_password = __(\'User already exists.  Password inherited.\');
        }
    }
}

结束

相关推荐

WordPress Form to Email.php and Theme

我的模板页面中有一些自定义表单。我正在使用表单“action”链接到formtoemail。php文件。如果我离开formtoemail,一切都会好起来的。php原样,但我想调用我的主题元素来动态设置页面样式。我尝试了以下操作,但不幸的是出现了一个错误“调用未定义的函数get\\u header()”如果我从页面复制/粘贴html,一切都很好,但我真的不想每次都更新html。我确信有一种方法可以做到这一点,但我不是超级PHP高手。有人能帮忙吗?<?php $my_email = \