如何在WordPress用户注册时为新用户提供两个特定的用户角色选项

时间:2017-01-19 作者:Konstantin Nikkari

我有一个有客户和供应商的网站。让新注册用户在他们想要的两个特定角色之间进行选择的正确方式是什么?他们是想成为客户并购买物品,还是想开始销售。

我梦想有一个注册页面,您可以在其中输入用户名、电子邮件,然后选择角色。不知道这是否可行。请看附图。

Customer or Vendor picture

1 个回复
SO网友:Kudratullah

看见register_form 用于修改注册表的操作挂钩

add_action( "register_form", function() {
    $html = \'<p>\'.__(\'Do you want to buy or sell?<br>Choose your role\').\'</p>\';
    $html .= \'<p>\';
        $html .= \'<label for="_customer"><input type="radio" name="user_role" id="_customer" value="customer"/>\'.__(\'Customer\').\'</label><br>\';
        $html .= \'<label for="_vendor"><input type="radio" name="user_role" id="_vendor" value="_vendor"/>\'.__(\'Customer\').\'</label>\';
    $html .= \'</p>\';
    echo $html;
} );
您可以使用user_register 保存所选用户角色的操作。

add_action( "user_register", function( $user_id ) {
    $allowed = array( \'customer\', \'vendor\' );
    if( isset( $_POST[\'YourFieldName\'] ) && in_array( $_POST[\'YourFieldName\'], $allowed ) ){
        $user = new WP_User( $user_id );
        $user->set_role($_POST[\'YourFieldName\']);
    }
} );
检查WP_User 类引用document 了解更多信息;

相关推荐

如何将Java脚本添加到Custom-Page.php模板?

如何将javascript添加到自定义页面。php模板?如何使从w3schools ajax教程获得的以下javascript在自定义页面上工作。php模板?任何帮助都将不胜感激。工作javascript包含在以下HTML中:<!DOCTYPE html> <html> <style> table,th,td { border : 1px solid black; border-collapse: collapse;&#x