코스모팜 회원가입 사용자 프로필 숏코드 사용 문의

안녕하세요.
코스모팜 회원가입 플러그인을 사용하고 있습니다.
기존 테마의 my account와 코스모팜 회원가입간의 적용이 오류가 많아서

디자인 및 기능적 이슈로 코스모팜 사용자 프로필 전체는 사용하지 못하고
기존 테마의 my-account에 코스모팜 프로필의 '비밀번호 수정', '내 정보 수정'만을 사용하려고 합니다.

이미 1:1문의 게시판을 my-account 탭에 추가하여 숏코드로 사용하고 있는데

1.
'비밀번호 수정', '내 정보 수정'를 숏코드로 사용할 수 있는지 문의 드립니다.
만약 숏코드가 없다면 생성할 수 있는방법 또는 숏코드를 대체할수 있는 해당 html 또는 php도 알고 싶습니다. 

2.
또한 '내 정보 수정'의 필드도 수정이 필요한데 어떻게 진행해야 할까요?
예) '내 정보 수정'에서 약관동의 항목을 삭제

 

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

    1. [wpmem_form password] 숏코드를 사용하시면 비밀번호 변경 페이지를 표시하실 수 있습니다.

    [wpmem_form user_edit] 숏코드를 사용하시면 내 정보 수정 페이지를 표시하실 수 있습니다.

    WP-Members 플러그인의 숏코드 종류와 설명은 아래 링크에서 확인하실 수 있습니다.

    https://rocketgeek.com/plugins/wp-members/docs/shortcodes/

     

    2. wpmem_register_form_rows 필터를 활용하시면 회원정보 페이지를 편집하실 수 있습니다.

    WP-Members 플러그인의 전체 액션과 필터 정보는 아래 링크된 페이지에서 확인 가능합니다.

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

    고맙습니다.

  • 안녕하세요.

    숏코드를 사용하여 비밀번호 변경과 내 정보 수정을 추가하였습니다.

    하지만 이전 질문처럼 

    '내 정보 수정'의 필드는 현재 '회원 가입' 필드와 동일하게 나와있습니다.

    '회원 가입'필드와 별개로

    '내 정보 수정'의 필드만 수정을 하려면 어떻게 해야하나요?

    예를 들어 '내 정보 수정'필드에서 약관과 주소필드 를 삭제 하려고 합니다.

    wpmem_register_form_rows 필터를 활용하시면 회원정보 페이지를 편집할 수 있다고 하셨는데

    좀 더 자세히 설명해 주실 수 있을까요?

    https://imgur.com/a/isk8rb0

    감사합니다.

  • 안녕하세요.

    wpmem_register_form_rows 필터를 활용해서 내 정보 수정 페이지의 필드만 수정하시려면

    아래의 코드를 활용해보시겠어요?

    add_filter('wpmem_register_form_rows', 'my_wpmem_register_form_rows', 10, 2);
    function my_wpmem_register_form_rows($rows, $toggle){
    	if($toggle == 'edit'){
    		// 이 곳에 코드를 추가해보세요.
    	}
    	return $rows;
    }

    어떤 식으로 수정하고 싶으신지 알려주시면

    저희도 도움 드릴 방법을 찾아보겠습니다.

    고맙습니다.

  • 안녕하세요.

    답변 감사합니다.

    https://imgur.com/a/Jca4dp1

    첨부된 이미지에서 이용약관과 개인정보취급방침 섹션을 없애고 싶습니다.

     

  • 안녕하세요.

    코스모스팜 회원관리 플러그인 내 정보 수정 페이지에서

    이용약관 및 개인정보 필드를 안 보이게 하시려면

    워드프레스 관리자 -> 외모 -> 테마 편집기 페이지에서 functions.php 파일 하단에

    아래의 코드를 추가해보시겠어요?

    add_filter('wpmem_register_form_rows', 'my_wpmem_register_form_rows', 999, 2);
    function my_wpmem_register_form_rows($rows, $toggle){
    	if($toggle == 'edit'){
    		$user = wp_get_current_user();
    		$policy_privacy = get_user_meta($user->ID, 'policy_privacy', true);
    		$policy_service = get_user_meta($user->ID, 'policy_service', true);
    		
    		// 이용약관
    		if(isset($rows['policy_service']) && $policy_service){
    			$rows['policy_service']['field_before'] = '';
    			$rows['policy_service']['label'] = '';
    			$rows['policy_service']['field'] = '<input type="hidden" name="policy_service" value="agree">';
    		}
    		
    		// 개인정보
    		if(isset($rows['policy_privacy']) && $policy_privacy){
    			$rows['policy_privacy']['field_before'] = '';
    			$rows['policy_privacy']['label'] = '';
    			$rows['policy_privacy']['field'] = '<input type="hidden" name="policy_privacy" value="agree">';
    		}
    	}
    	return $rows;
    }

    위의 코드는 워드프레스 관리자 -> 회원가입관리 -> 이용약관 페이지와 개인정보 페이지의

    필드 추가 예제를 참고해서 필드를 추가해주셔야 정상적으로 동작합니다.

    고맙습니다.

  • 감사합니다.

    덕분에 해결되었습니다.

    추후 수정이 필요한 경우 알려주신 코드를 통해 응용해서 진행하겠습니다.

    감사합니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요