无法使用REST API创建新的WooCommerce客户

时间:2020-08-31 作者:Seb

在我的网站上,我在react中创建了一个注册页面,我正在使用WoodPress headless和WooCommerce。

因此,我希望使用我拥有的注册页面创建一个新用户,因为Wordpress端默认设置为创建“Customer”;任何新注册的用户类型。

注册正在部分工作。让我解释一下。为了实现注册,我做了以下工作:

在wordpress上,我已经安装了来自Sk8tech的插件:WP Rest user/wp-json/wp/v2/users/register 包含用户名、电子邮件和密码的正文

  • 新用户被创建并具有;“客户”;键入
  • ,但此新用户不会显示在WooCommerce客户仪表板中。

    当我安装WooCommerce插件时,首先,我通过Wordpress仪表板手动将用户类型从订阅者更改为客户,它们都显示在客户部分。

    我注意到WooCommerce确实有一个api来创建新客户/wp-json/wc/v3/customers 但我无法设置密码。

    那么,我必须打两个电话吗?WooCommerce的一个电话会自动呼叫创建新客户吗?

    当做

    1 个回复
    SO网友:drcrow

    在WP REST用户的文档中https://wordpress.org/plugins/wp-rest-user/ 您拥有aswer:

    要在注册用户后执行进一步操作,请写入并添加\\u操作:

    add_action(\'wp_rest_user_user_register\', \'user_registered\');
    function user_registered($user) {
        // Do Something
    }
    
    替换“/”“做点什么”;用于更改用户角色的代码。类似于此(未测试):

    $u = new WP_User( 3 ); //set your user ID
    // Remove role
    $u->remove_role( \'subscriber\' );
    // Add role
    $u->add_role( \'customer\' );
    

    相关推荐

    在不同的域上拥有wp-admin

    我有一个wordpress wp管理员在另一个域上运行。换句话说WP_SITEURL = \'https//admin.example.com\' 和WP_HOME = \'https://www.example.com\' 最近我有个坏主意,把wordpress更新到最新版本。一切似乎都很好,但当我意识到不可能添加新帖子或更新现有帖子后。例如,当我添加一篇新帖子(/wp admin/post new.php)时,管理员向www发出的获取请求很少:https://www.example.com/wp-js