웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
가상사이트 페이지별 개별 레이아웃 적용하기
2016.01.31 07:17
아는지인분이 요청하셔서 공홈에 찾아보니 관련 문제를 겪으신분들이 꽤나 있는 것 같은데,
@배워서남준다 님께서 올리신 ModuleHandler.class.php 를 수정하는 방법을 보았습니다.
일단 적용은 되긴하나 이 방법은 코어를건드리는 부분이다보니.. 추천하고싶지 않습니다.
또 근본적인 해결책이 되지는 못하겠지요.
homepage 모듈(cafexe 의 모듈명)에서 트리거를 이용해 레이아웃을 적용시키는데, modulehandler.class.php 를 수정하게되면 그트리거를 다~ 동작시킨 뒤 레이아웃을 강제로 다시박아버리는 형태가 되어버려서 좀 찝찝한감이있지요.
그래서 레이아웃을 적용하는 함수를 수정합니다.
./modules/homepage/homepage.controller.php 500번줄 근처에서 triggerApplyLayout() 이란 함수를 수정해주시면됩니다.
$current_module_info = Context::get('current_module_info'); //여기서부터 추가합니다. $args->layout_srl = $current_module_info->layout_srl; $output = executeQuery('layout.getLayout', $args); if(!$output->toBool()) return $output; $layout_info = $output->data; if(!$layout_info){ $args->site_srl = $site_module_info->site_srl; $output = executeQuery('homepage.getHomepage', $args); $layout_srl = $output->data->layout_srl; if(!$layout_srl) return new Object(); $oModule->module_info->layout_srl = $layout_srl; $current_module_info->layout_srl = $layout_srl; }else{ $oModule->module_info->layout_srl = $current_module_info->layout_srl; $current_module_info->layout_srl = $current_module_info->layout_srl; }
설명을좀 드리자면...
기존 사이트정보에 등록된 layout 으로 강제 적용하던 방식을 아래와같이 수정하였습니다.
현재모듈에 등록된 레이아웃 정보를 먼저 읽어서 해당레이아웃이 실제 존재하는 레이아웃이면 그 레이아웃을 적용하고 존재하지않는경우 ("미사용"을 사용할 수 없다는 단점이 .. ㅡ; 필요해지면 방법을 찾아보겠습니다.)에만 기존방식으로 동작하게끔 수정한 방식입니다.
네. 그렇습니다.
이상 (__);
댓글 0
제목 | 글쓴이 | 날짜 |
---|---|---|
XE에서 레이아웃이나 기타의 페이지에 include 사용에 대한 오해??? [3] | DuRi | 2011.01.18 |
텍스타일 블로그 메인페이지 만들기 [1] | designm | 2011.01.13 |
두개 이상의 홈페이지 운영 - Virtual host 설정 [1] | 이성헌 | 2005.12.15 |
홈페이지 대량 변조 발생에 따른 ‘주의’ 경보발령 [4] | ATpple.com | 2005.01.07 |
[XAMPP]한 컴퓨터에서 여러 개의 홈페이지 운영하는 방법(가상호스트 아님) [8] | The Darkness | 2004.02.05 |
APM_Setup4 에서 에러페이지 띄우기 [2] | RedEye(kaist) | 2003.05.28 |
htaccss를 활용하자! 1탄 에러페이지 만들기 [10] | [쿨럭]블루엔젤 | 2003.01.23 |
에러페이지를 서버관리자가 지정한 페이지로. [1] | teenteenv | 2002.02.21 |
웹페이지 미리보기 snapshot 활용하기 [2] | 유창화 | 2008.02.15 |
나만의 미니홈 만들기 ㅡ 미니홈 생성 페이지
[3]
![]() | 예뜨락 | 2004.11.20 |
나만의 미니홈 만들기 ㅡ 기초적인 관리 페이지
[3]
![]() | 예뜨락 | 2004.11.20 |
페이지에 암호를 걸자..=_= [27] | ☺심심 | 2004.06.25 |
카일레라 서버 페이지 만들기. [2] | teslaMINT | 2003.12.09 |
홈페이지 관리자 모드 구축하기 (HTTP 인증, 중복 맞음)
[10]
![]() | 9000㎒ | 2003.11.01 |
내 홈페이지의 방문자 어디서 접속했을까 알아봅시다
[21]
![]() | 버찌소년 | 2003.10.08 |
홈페이지의 내용을 DB에 담기 [15] | 세죠위그이 | 2003.05.30 |
제로보드식 에러페이지 만들기 [2] | .zeve | 2003.02.04 |
[동주아빠] PHP 게시판(17강) - 저장 후 페이지 이동 | 손병목 | 2002.12.25 |
모닝샵 이용해서 쇼핑몰 만들기 (웹페이지 만들기1)
[8]
![]() | 한꼬마 | 2002.11.22 |
초보의 초보를위한 강의 PHP를 활용한 페이지 암호걸기 #3 [10] | 아이쿠 | 2002.11.15 |