根据用户角色为用户自定义字段赋值



我在Wordpress中创建了用户自定义字段"wpcf-shop-hodnota-bodu-01"现在,我需要根据登录用户的角色为该字段分配一个值(例如,对于管理员角色,值应该是"500",对于商店经理角色,值应该是"350",…)。此外,当用户更改他/她的角色时,该值也应更新。

我已经做到了,这是我所能做的…

add_action('show_user_profile', 'my_add_extra_profile_fields');
function my_add_extra_profile_fields($user) 
{
if ($user->has_cap('administrator'))
{update_user_meta( $user->ID, 'wpcf-shop-hodnota-bodu-01', '900' );}
}

但是使用这个解决方案,只有当用户显示他/她的用户配置文件时才触发更改。我需要在每次保存functions.php文件时执行此更改…

请帮忙好吗?谢谢,汤姆

问题解决了,如果有人对我的解决方案感兴趣:更改用户登录后触发的操作:

function my_add_extra_profile_fields($user_login, $user) 
{
if ($user->has_cap('administrator'))
{update_user_meta( $user->ID, 'wpcf-shop-hodnota-bodu-01', '900' );}
}
add_action('wp_login', 'my_add_extra_profile_fields', 10, 2);

最新更新