묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
회원 정보 레이아웃
2013.01.30 16:43
안녕하세요.
여기 저기 검색해 보다가 도저히 안되서 질문드려 봅니다.
회원 설정에서 친구보기나 쪽지함 보기를 링크하면 아래와 같은 URL로 이동합니다.
http://test.co.kr/index.php?act=dispCommunicationMessages&mid=freeboard
뒤에 mid=freeboard 라는 인자값 때문에 freeboard(게시판 모듈이름입니다.)의 레이아웃을 그대로 가져가게 되더군요.
그 외 회원 정보 보기나 그 이하 스크랩보기, 저장함 보기, 작성 글 보기를 클릭하면
http://test.co.kr/index.php?act=dispMemberInfo&mid=freeboard
라고 호출 됩니다. 문제는 여기서 발생하는데요. act가 dispMemberInfo 일 때는 freeboard의 레이아웃이 적용되지 않고 회원 설정에서 적용한 레이아웃이 적용됩니다.
dispMemberInfo 일 때도 freeboard 레이아웃이 적용될 수 있도록 하는 신의 한 수가 있을까요?
자문자답요
modules/member/member.view.php 46번 줄에 로그인 했을 경우 레이아웃 적용을 무시하도록 코딩해서 해결하였습니다.
if(!Context::get('is_logged')) {
$oLayoutModel = &getModel('layout');
$layout_info = $oLayoutModel->getLayout($this->member_config->layout_srl);
if($layout_info)
{
$this->module_info->layout_srl = $this->member_config->layout_srl;
$this->setLayoutPath($layout_info->path);
}
}