在 Woocommerce 中获取并使用用户组名
Get and use the user group name in Woocommerce
我只将 Wordpress 与 Woocommerce 结合使用。有没有办法根据登录用户的信息获取用户组名?
我有一组名为 'Group1' 的用户,并为其分配了 2 个用户 - user1、user12
我有第二组用户 'Group2' 并为其分配了 2 个用户 - user2 和 user23。
现在我需要检查登录用户来自哪个用户组(所有用户都具有相同的角色 - 客户)。
这是我正在尝试执行的代码示例:
$user_logged = wp_get_current_user();
$user_group_name = // how to get user_logged's group name ?
if ($user_group_name == 'Group1') // do 1st
if ($user_group_name == 'Group2') // do 2nd
组的名称不会更改,因此我会将它们作为字符串放入代码中。但是我需要在用户以他分配到的组的名称登录后动态获取。
我该怎么做?
感谢任何帮助。
使用 wp_get_current_user()->roles
检索用户所属的组。
$roles = wp_get_current_user()->roles;
if (in_array('group1',$roles)) {
echo 'Do something here for group 1';
}
如果你的意思是想知道在线用户的角色是什么?
最后,你应该使用下面的代码。
$get = wp_get_current_user();
if ( in_array( 'administrator', $get->roles ) )
// do 1st
if ( in_array( 'editor', $get->roles ) )
// do 2st
if ( in_array( 'group1', $get->roles ) )
// do 3st
if ( in_array( 'groupN', $get->roles ) )
// do N st
您可以轻松直接地使用 current_user_can()
具有特定用户角色(或用户能力)的 WordPress 专用功能,例如:
if ( current_user_can( 'Group1' ) ) {
// do 1st
} elseif ( current_user_can( 'Group2' ) ) {
// do 2st
}
WordPress and Woocommerce don't provide any Usergroup functionality by default. What related plugin are you using for those Usergroups.
You need to search in the database table wp_usermeta
to see if 'Group1' or 'Group2' are assigned to users and give us the meta_key used for it.
你几乎成功了。根据文档,wp_get_current_user() return WP_User 对象具有属性 roles(用户所属的角色)。
$roles = wp_get_current_user()->roles;
if (in_array("Group1", $roles)) {
// do 1st
}
if (in_array("Group2", $roles)) {
// do 2nd
}
希望对您有所帮助
我只将 Wordpress 与 Woocommerce 结合使用。有没有办法根据登录用户的信息获取用户组名?
我有一组名为 'Group1' 的用户,并为其分配了 2 个用户 - user1、user12
我有第二组用户 'Group2' 并为其分配了 2 个用户 - user2 和 user23。
现在我需要检查登录用户来自哪个用户组(所有用户都具有相同的角色 - 客户)。
这是我正在尝试执行的代码示例:
$user_logged = wp_get_current_user();
$user_group_name = // how to get user_logged's group name ?
if ($user_group_name == 'Group1') // do 1st
if ($user_group_name == 'Group2') // do 2nd
组的名称不会更改,因此我会将它们作为字符串放入代码中。但是我需要在用户以他分配到的组的名称登录后动态获取。
我该怎么做?
感谢任何帮助。
使用 wp_get_current_user()->roles
检索用户所属的组。
$roles = wp_get_current_user()->roles;
if (in_array('group1',$roles)) {
echo 'Do something here for group 1';
}
如果你的意思是想知道在线用户的角色是什么?
最后,你应该使用下面的代码。
$get = wp_get_current_user();
if ( in_array( 'administrator', $get->roles ) )
// do 1st
if ( in_array( 'editor', $get->roles ) )
// do 2st
if ( in_array( 'group1', $get->roles ) )
// do 3st
if ( in_array( 'groupN', $get->roles ) )
// do N st
您可以轻松直接地使用 current_user_can()
具有特定用户角色(或用户能力)的 WordPress 专用功能,例如:
if ( current_user_can( 'Group1' ) ) {
// do 1st
} elseif ( current_user_can( 'Group2' ) ) {
// do 2st
}
WordPress and Woocommerce don't provide any Usergroup functionality by default. What related plugin are you using for those Usergroups.
You need to search in the database tablewp_usermeta
to see if 'Group1' or 'Group2' are assigned to users and give us the meta_key used for it.
你几乎成功了。根据文档,wp_get_current_user() return WP_User 对象具有属性 roles(用户所属的角色)。
$roles = wp_get_current_user()->roles;
if (in_array("Group1", $roles)) {
// do 1st
}
if (in_array("Group2", $roles)) {
// do 2nd
}
希望对您有所帮助