웹마스터 팁

외부로그인 팁이 별로 없어서 이것저것 해보다가 가장 편하고 간단한 방법을 찾았습니다.

사용자 레이아웃 상에서만 이루어지니 코어 업데이트 때에도 신경쓸일 없어서 좋은 팁입니다.

물론 잘 아시는 분들은 패스해주세요.

저처럼 고민만하다가 포기하시는 분들을 위해 올려봅니다.

레이아웃 파일을 열기 전에 우선 관리자모드에서 수정하셔야 할 게 있습니다.

 

1. 관리자모드 -> 설정 -> 일반

맨 위에 보시면 사이트 접속시 기본으로 호출하는 모듈을 설정하는 부분이 있습니다.

그곳에 현재 사이트에서 쓰이는 레이아웃을 지정해주세요.

 

2. 관리자모드 -> 회원 -> 회원설정

중간 쯤 보시면 "로그인 후 이동할 주소(URL)", "로그아웃 후 이동할 주소(URL)", "회원 가입 후 이동할 페이지"가 있습니다.

그곳에 모두 홈페이지 url을 적어주세요.(예 : http://자신의 홈페이지 주소/)

 

3. 마지막으로 위에서 적용한 레이아웃 파일을 엽니다.

가령 홈페이지에서 적용한 레이아웃 모듈이 "xe_official" 레이아웃이라면

다음의 경로에 있는 파일을 엽니다.(사용자 모듈이라면 해당 모듈의 레이아웃 파일을 수정해야 합니다.)

/제로보드설치경로/layouts/xe_official/layout.html

 

파일 내용을 보면

처음 div 태그가 시작되는 부분이 있습니다.

그 줄 바로 위에 다음과 같이 한 줄을 넣으세요.

<div cond="$is_logged">

 

그리고 마지막 </div> 태그 바로 아래에 </div>를 하나 더 넣어 태그를 막아줍니다.

 

그리고나서 다시 맨 아래 막아준 </div> 태그 밑으로 다음을 추가해줍니다.

 

<div cond="!$is_logged">
<div cond="!$act">
<form id="fo_login_widget" action="./" method="post" ruleset="@login" class="widgetLogin">
 <input type="hidden" name="act" value="member" />
 <input type="hidden" name="act" value="procMemberLogin" />
 <input type="hidden" name="success_return_url" value="{getRequestUriByServerEnviroment()}" />
 <fieldset>
  <dl>
   <dt><label for="uid">{$lang->user_id} :</label></dt>
   <dd><input name="user_id" type="text" id="uid" class="widgetXeInputText" title="{$lang->user_id}" /></dd>
   <dt><label for="upw">{$lang->password} :</label></dt>
   <dd><input name="password" type="password" id="upw" class="widgetXeInputText" title="{$lang->password}" /></dd>
  </dl>
  <span class="button login"><input name="" type="submit" value="{$lang->cmd_login}" /></span>
  <ul class="help">
   <li><a href="{$request_uri}?mid=member_sign&act=dispMemberSignUpForm">{$lang->cmd_signup}</a></li>
   <li><a href="{$request_uri}?mid=member_find&act=dispMemberFindAccount">{$lang->cmd_find_member_account}</a></li>
   <li><a href="{$request_uri}?mid=member_resend_mail&act=dispMemberResendAuthMail">{$lang->cmd_resend_auth_mail}</a></li>
  </ul>
 </fieldset>
</form>
</div>
<div cond="$act">
 <div id="container">
  <div id="center_c" class="center_contents">{$content}</div>
 </div>
</div>
</div>

 

물론 로그인 박스의 형태나 모양은 위 div 태그 안의 내용을 수정해서 변경할 수 있습니다.

클래스 적용된 부분도 css 파일에서 적용할 수 있습니다.

 

같은 레이아웃 내에서 로그인 세션이 있는 회원의 경우 홈페이지를 보여주게 하고

세션이 없는 회원의 경우엔 로그인 박스가 보이도록 한 것입니다.

또한 act를 확인하여 정보가 있을때와 없을때를 분리하였습니다.(이 부분은 아래 설명한 코드에서 불러들일 모듈을

로그인박스와 겹치지 않도록 하기 위해 필요합니다.)

제목엔 외부로그인이라고 해놨습니다만 엄밀히 말하면 외부로그인이 아닌셈입니다.

외부로그인처럼 보이는 내부로그인인셈입니다.

 

위 코드중 다음의 세줄은 '회원가입'과 '아이디/비밀번호찾기', 그리고 '인증메일 재발송' 에 해당합니다.

코드 중에 mid=member_sign, mid=member_find, mid=member_resend_mail 부분은 관리자모드에서 외부페이지를 작성하여

붙여준 각각의 아이디 이름을 연결해 놓은 부분입니다.

<li><a href="{$request_uri}?mid=member_sign&act=dispMemberSignUpForm">{$lang->cmd_signup}</a></li>
<li><a href="{$request_uri}?mid=member_find&act=dispMemberFindAccount">{$lang->cmd_find_member_account}</a></li>
<li><a href="{$request_uri}?mid=member_resend_mail&act=dispMemberResendAuthMail">{$lang->cmd_resend_auth_mail}</a></li>

 

세가지 모두 사용하시려면 "관리자모드 -> 확장기능 -> 설치된모듈 -> 페이지"로 간 후

페이지생성을 클릭한 후 다음과 같이 설정을 합니다.(총 3페이지 생성)

1. 페이지타입(외부페이지) / 모듈이름(member_resend_mail) / 모듈분류(미사용) / 브라우저제목(인증메일 재발송) / 레이아웃(미사용) / 외부문서위치(/절대경로/modules/member/skins/default/resend_auth_mail.html)

 

2. 페이지타입(외부페이지) / 모듈이름(member_find) / 모듈분류(미사용) / 브라우저제목(아이디/비밀번호찾기) / 레이아웃(미사용) / 외부문서위치(/절대경로/modules/member/skins/default/find_member_account.html)

 

3. 페이지타입(외부페이지) / 모듈이름(member_sign) / 모듈분류(미사용) / 브라우저제목(인증메일 재발송) / 레이아웃(미사용) / 외부문서위치(/절대경로/modules/member/skins/default/signup_form.html)

 

-절대경로는 외부문서위치 설명칸에 나와 있습니다.

 

혹시라도 위 설명에 문제가 있거나 좀더 좋은 팁이 있다면 알려주세요.

제목 글쓴이 날짜
회원정보 페이지에 작성 댓글 보기 추가하기 [7] file 늘푸른이 2012.07.12
XE와 마인크래프트 서버 화이트리스트 연동하기 [9] file 연가시먹었다 2012.08.25
관리자의 회원정보 수정 페이지에 '가입일/최근접속일' 추가하기 [6] file showjean 2012.09.17
회원설정에 레이아웃 설정이 생겼습니다. 회원정보보기페이지 레이아웃 설정 가능 [2] 똑디 2012.10.04
외부로그인 (레이아웃 파일만 수정) [4] 투씨 2012.10.13
닉네임 변경시 기존 게시물 연동 팁 (레벨 아이콘 에드온 이용) [9] 바붕아 2012.10.23
1.5.4 회원정보에서 회원이 자기 이름 마음대로 수정 못하게 하는 거... [2] 샤로우 2012.12.31
회원정보 수정 위해 비밀번호 재입력 후 튕기는 경우 [2] sejin7940 2013.01.06
회원 정보에 내 포인트 현황 출력하기 [3] file 화랑529 2013.01.08
XE 그룹아이콘 레벨아이콘 아이콘샵 동시출력하기(모르는분들 있으까봐올립니다.) [1] 모앱 2013.02.22
윈도우 서버 2012 에서 제로보드XE 설치부터 사용하기. [16] file 부롱이 2013.03.29
그누보드 > XE 이전툴 이용하여 이전하는 방법 [4] 개터리 2013.04.26
스팸 회원 삭제시 동시에 관련 글 / 댓글 자동 삭제 + 스팸IP 등록기능 구현방법입니다 [20] sejin7940 2013.05.22
아이디 계정때도 이메일 변경시 재인증 메일 발송하기 [1] 혼ME 2013.06.19
IPGUARD 모듈 배포 [33] file 우진홈 2013.07.10
Recruit 모듈 - 일반회원 채용글 등록할 수 있도록 수정 [10] 홍채화 2013.07.27
[주옥시리즈]닉네임/이메일 변경 금지 팁 [10] socialskyo 2013.08.10
회원가입확장 모듈 - 가입절차중 오류 발생시 처음으로 돌아가는 현상 [1] 김개발 2013.08.30
XE 로만든 앱 + 푸쉬기능 구현하기 (안드로이드) [53] file Xiso 2013.10.16
.htaccess 파일 관련 팁(웹 사이트 퍼포먼스 향상 및 트래픽 절감 효과) [21] file 서시빈목 2013.10.22