1. 정확한 제품 또는 플러그인 이름
kboard, 워드프레스, 코스모스팜 회원관리, user role editor, wp members
2. 상세 내용
회원정보에 display role name을 추가하고 싶어서 아래 코드를 삽입했습니다. 아래 코드를 넣으니 role name(id)(영어로 되어있음,um_custom_role_1 이런느낌)가 나오던데 저는 display role name(한국어로 설정되어있음)을 보여주고 싶습니다. 코드를 어떻게 수정해야 할까요?
add_filter('wpmem_member_links_args', 'my_wpmem_member_links_args', 999, 1);
function my_wpmem_member_links_args($args){
$current_user = wp_get_current_user();
$role = $current_user->roles[0];
$args['wrapper_before'] = '<div class="cosmosfarm-members-form">';
$args['wrapper_before'] .= '<div class="profile-header"><form id="cosmosfarm_members_avatar_form" method="post" enctype="multipart/form-data">';
$args['wrapper_before'] .= wp_nonce_field('cosmosfarm_members_avatar', 'cosmosfarm_members_avatar_nonce');
$args['wrapper_before'] .= '';
$args['wrapper_before'] .= '<div class="avatar-img"><label for="cosmosfarm_members_avatar_file" title="'.__('Change Avatar', 'cosmosfarm-members').'">'.get_avatar(get_current_user_id(), '150').'<p class="change-avatar-message">'.__('Change Avatar', 'cosmosfarm-members').'</p><input type="file" name="cosmosfarm_members_avatar_file" id="cosmosfarm_members_avatar_file" multiple="false" accept="image/*" onchange="cosmosfarm_members_avatar_form_submit(this)"></label></div>';
$args['wrapper_before'] .= '<div class="display-name">'.$role.' '.$current_user->display_name.'</div>';
$args['wrapper_before'] .= '</form></div>';
$args['wrapper_before'] .= '<ul class="members-link">';
return $args;
}
3. 확인 가능한 상세 페이지 주소
bffc.kr
4. 수정한 코드 내역 (있다면)
add_filter('wpmem_member_links_args', 'my_wpmem_member_links_args', 999, 1);
function my_wpmem_member_links_args($args){
$current_user = wp_get_current_user();
$role = $current_user->roles[0];
$args['wrapper_before'] = '<div class="cosmosfarm-members-form">';
$args['wrapper_before'] .= '<div class="profile-header"><form id="cosmosfarm_members_avatar_form" method="post" enctype="multipart/form-data">';
$args['wrapper_before'] .= wp_nonce_field('cosmosfarm_members_avatar', 'cosmosfarm_members_avatar_nonce');
$args['wrapper_before'] .= '';
$args['wrapper_before'] .= '<div class="avatar-img"><label for="cosmosfarm_members_avatar_file" title="'.__('Change Avatar', 'cosmosfarm-members').'">'.get_avatar(get_current_user_id(), '150').'<p class="change-avatar-message">'.__('Change Avatar', 'cosmosfarm-members').'</p><input type="file" name="cosmosfarm_members_avatar_file" id="cosmosfarm_members_avatar_file" multiple="false" accept="image/*" onchange="cosmosfarm_members_avatar_form_submit(this)"></label></div>';
$args['wrapper_before'] .= '<div class="display-name">'.$role.' '.$current_user->display_name.'</div>';
$args['wrapper_before'] .= '</form></div>';
$args['wrapper_before'] .= '<ul class="members-link">';
return $args;
}
안녕하세요~^^
말씀하신 것처럼 적용하시려면
올려주신 링크의 코드 중
아래의 코드를 찾아서
$role = $current_user->roles[0];
아래의 코드로 교체해보시겠어요?
$role = $current_user->roles[0];
$wp_roles = new WP_Roles();
$role = isset($wp_roles->get_names()[$role]) ? translate_user_role($wp_roles->get_names()[$role]) : $role;
WP_Roles 클래스에 대한 자세한 내용은
아래 링크를 참고해보세요.
https://developer.wordpress.org/reference/classes/wp_roles/
고맙습니다.