[코스모스팜 회원관리] 회원 정보페이지에 각 회원별 추가정보 추가

수정필요 부분 : https://imgur.com/CRUAXmu

참고 url : https://imgur.com/ey5jGNy

 

수정 필요 부분에 참고URL 처럼 각 회원별 정보를 보여주고 싶습니다.

시작일, 종료일, 선생님 이름, 교재명, 수업 요일, 수업 시간

 

위 정보는 워드프레스 관리자 -> 사용자 목록에서 기입하는 필드를 만들어서 넣어주고싶습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    코스모스팜 회원관리 플러그인의 회원정보 페이지 레이아웃은

    WP-Members 플러그인의 레이아웃을 토대로 구성하고 있기 때문에 변경이 비교적 쉽지 않습니다.

    wpmem_member_links_args 필터로 회원정보 페이지에 표시되는 레이아웃을 편집하실 수 있습니다.

    해당 필터에 대한 자세한 내용은

    아래의 링크를 참고해보시겠어요?

    https://rocketgeek.com/plugins/wp-members/docs/filter-hooks/wpmem_page_links_args/

     

    워드프레스 wp_get_current_user 함수를 활용하시면

    로그인한 사용자 정보를 가져올 수 있습니다.

    get_user_meta 함수를 사용하시면 사용자의 meta 정보도 가져올 수 있습니다.

    wpmem_member_links_args 필터에 위 함수들을 활용해보시겠어요?

    고맙습니다.

  • add_filter('wpmem_member_links_args', 'my_member_link_args');
    function my_member_link_args($args){
        $member_info = wp_get_current_user();
        $args['rows'][]= '<li><a href="#">시작일 : ' . get_field('start_date','user_' . $member_info->ID).'</a></li>';
        $args['rows'][]= '<li><a href="#">종료일 : ' . get_field('end_date','user_' . $member_info->ID).'</a></li>';
        $args['rows'][]= '<li><a href="#">교재 : ' . get_fields('material','user_' . $member_info->ID).'</a></li>';
        $args['rows'][]= '<li><a href="#">선생님 : ' . get_fields('teacher_name','user_' . $member_info->ID).'</a></li>';
        return $args;
    }

     

    https://imgur.com/cOktRKZ

    위 처럼 나오긴 했는데 파란색 버튼에 동일하게 추가하면 너무 지저분하고 공간차지를 해서 , 빨간네모표시에 가로로 글씨 작게 따로 표기를 해주고싶은데  (참고 url : https://imgur.com/ey5jGNy)

    • before_wrapper – Anything that comes before the wrapper (register|member only).
    • wrapper_before – The wrapper opening tag (default: <ul>).
    • rows – Row items HTML (register|member only).
    • user_login – The user’s login name/username (login only)
    • welcome – The welcome text string (login only).
    • logout_text – The text for the logout link (login only).
    • logout_link – The link for logging out (pre-filtered with wpmem_logout_link) (login only)
    • wrapper_after – The wrapper closing tag (default: </ul>).
    • after_wrapper – Anything that comes after the wrapper (register|member only).

    여기 내에서는 Row밖에 사용이 안되더라구요.

     

    이미지와같이 대시보드 안에서는 보기쉽게 추가가 가능할가요? 참고url처럼 : https://imgur.com/ey5jGNy

    https://imgur.com/ef9czr5

  • 올려주신 이미지처럼 적용하시려면

    아래의 코드를 활용해보세요.

    add_filter('wpmem_member_links_args', 'wpmem_member_links_args_20210329', 999, 1);
    function wpmem_member_links_args_20210329($args){
    	$current_user = wp_get_current_user();
    	
    	$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">'.$current_user->display_name.'</div>';
    	$args['wrapper_before'] .= '</form></div>';
    	
    	$args['wrapper_before'] .= '<div class="custom-field">';
    	$args['wrapper_before'] .= '이곳에 코드를 추가해보세요.'; // 이곳에 코드를 추가해보세요.
    	$args['wrapper_before'] .= '</div>';
    	
    	$args['wrapper_before'] .= '<ul class="members-link">';
    	
    	return $args;
    }

    위의 코드에서 custom-field 쪽 영역을 사이트에 맞게 수정해보세요.

    고맙습니다.

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기