질문/조언질답게시판
Extra Form
PHP PHP 7.3
CMS Rhymix
  • ?
    xe 는 휴대폰 인증이나 공인인증서 인증서가 기본이아니라, 아이디 찾아주는 기능은 코어 기본에 없어요~
  • profile

    깃헙의 코드상으로는 $memberInfo 를 참조하는것 같은데요
    <pre>{print_r($memberInfo)}</pre> 찍으셔서 변수내에 구조가 어떻게 되어있는지 확인해보시고
    이메일 주소가 있다면 이메일값만 뽑아내셔서 출력해주면 될것 같은데요...

    (주의!) memberinfo 등을 print_r 로 뽑는경우 해당 멤버의 모든 요소 (해시화된 비밀번호 포함) 가 튀어나올수 있으므로 일반사용자는 볼 수 없도록, 이 경우에는 메일을 받지 못하도록 조치하고 하셔야 됩니다.

    만약 memberinfo 내에 이메일값이 없다면 member모듈에서 아이디/비번찾기시 memberinfo를
    생성해주는 부분을 찾으셔서 이메일값도 넣어주도록 수정하셔야 겠죠
    스킨단에서 직접 쿼리로 뽑아오던가..

    제대로 된 답변을 드리고 싶지만 저의 테스트사이트를 메일세팅 안해놔서 직접 확인은 못해보겠네요 ㅠㅠ

  • profile profile
    https://github.com/xpressengine/xe-core/blob/6c018e0e2d0dc75ad01c0f881d45d56a5a643097/modules/member/member.controller.php#L1148-L1155

    비밀번호는 메일 발송시 제외되므로 print_r로 찍어도 상관없습니다.(애초에 기본스킨에 포함된 이메일 템플릿도 $memberInfo의 모든 값을 출력하도록 짜여 있습니다)
  • profile

    /modules/member.controller.php
    procMemberFindAccount 에서 Context::set('find_url', $find_url); 위에
    Context::set('user_id', $args->user_id); 추가하고
    /modules/skins/default/find_member_account_mail.html 에서 적당한 곳에 {$user_id} 넣어주면 됩니다