웹마스터 팁

소스를 수정하는 것이므로 반드시 백업해두시길 권합니다.

xe_newwin.JPG

xe에 있는 프린트 함수를 이용해 확장변수로 새창열기를 선택하면 
게시물을 레이아웃에 상관없이 새창에서 전체화면으로 볼 수 있도록 해봤습니다.
설명의 편의를 위해 여기서는 xe_official 게시판을 기준으로 설명드립니다.

1. 첨부한 new_win.zip을 다음의 경로로 풀어줍니다.

new_win.html => modules/document/tpl/new_win.html
new_win.css => modules/document/tpl/css/new_win.css
new_win.gif => modules/board/skins/xe_official/img/common/new_win.gif (※ 적용하려는 스킨의 이미지 폴더)

2. modules/document/document.view.php 에서 처음에 나오는 function dispDocumentPrint() 함수 다음에 아래 함수를 추가합니다.

        function dispDocumentNewWin() {
            // 목록 구현에 필요한 변수들을 가져온다
            $document_srl = Context::get('document_srl');

            // document 객체를 생성. 기본 데이터 구조의 경우 document모듈만 쓰면 만사 해결.. -_-;
            $oDocumentModel = &getModel('document');

            // 선택된 문서 표시를 위한 객체 생성 
            $oDocument = $oDocumentModel->getDocument($document_srl, $this->grant->manager);
            if(!$oDocument->isExists()) return new Object(-1,'msg_invalid_request');

            // 브라우저 타이틀 설정
            Context::setBrowserTitle($oDocument->getTitleText());
            Context::set('oDocument', $oDocument);

            Context::set('layout','none');
            $this->setTemplatePath($this->module_path.'tpl');
            $this->setTemplateFile('new_win');
        }

3. modules/document/conf/module.xml 에서 18라인에 아래처럼 한 줄 추가합니다.

    <actions>
        <action name="dispDocumentPrint" type="view" standalone="true" />
        <action name="dispDocumentNewWin" type="view" standalone="true" />  <=추가

4. 적용할 게시판에 확장변수 list_newwin을 설정합니다. 
확장변수 이름 : list_newwin
입력항목 이름 : 새창열기
형식 : 라디오버튼 
기본값 : 새창으로 엽니다

5. 스킨에 새창 링크를 추가합니다.
modules/board/skins/xe_official/_style.list.html 에서 아래 부분을 찾아

<!--@if($document->getTrackbackCount())-->
<a href="./{getUrl("document_srl', $document->document_srl)}#trackback"><span class="trackbackNum" title="Trackbacks">[{$document->getTrackbackCount()}]</span></a>
<!--@end-->

이 다음에 아래 부분을 추가합니다.

<!--@if($document->getExtraEidValue('list_newwin'))-->
<a href="./{getUrl("document_srl',$document->document_srl,'act','dispDocumentNewWin')}" target="_blank"><img src="./img/common/new_win.gif" align="absmiddle" title="새창으로 열기"></a>
<!--@end-->

다른 스킨에서도 getTrackbackCount 부분을 찾아 마찬가지로 수정하시면 됩니다.

제목 글쓴이 날짜
파일박스 사용에 관하여 [2] wooildang 2013.04.26
최근게시물에 움직이는 GIF 불러오기 SuP 2013.04.25
XE 1.7 + 도쿠위키 Weatherwax RC1 세션 및 그룹 연동 [20] ay 2013.04.18
필요한 함수 만들어 쓸 때. [3] 투씨 2013.04.16
메뉴에 새글 표시 모듈이 작동하지 않은 문제 해결 [2] 샹하이 2013.04.15
제로보드 xe 게시판 가로 푹 줄이기 방법좀 알려주세요. [1] 산업일꾼 2013.04.14
아이콘샵(v0.4) 관리자페이지 디자인수정파일(1.7.x 용) file 카이네드 2013.04.13
xe1.7.3.1 으로의 업데이트시 팝업모듈 오류 수정내역 [1] 날마다좋은날 2013.04.12
데이터 이전 후 list_order 조정 [1] wooildang 2013.04.07
DOM구조를 시각화해서 파악하기 [13] file 웹기프트 2013.04.04
게시판 내용에서 하단에 빈 버튼 안보이게 하기 [2] file SEAN76 2013.04.04
meta_add 애드온 수정.(1.7.3 버전에 맞게..) [4] file 투씨 2013.04.01
Startssl, iis에서 설치법. file 식군 2013.04.01
윈도우 서버 2012 에서 제로보드XE 설치부터 사용하기. [16] file 부롱이 2013.03.29
Social XE 모듈의 클라이언트 토큰 발급 (난다날아님의 서버는 중지상태) [4] 팩트위키 2013.03.29
호스팅환경 말고!! 서버 환경에서 msg_make_directory_failed (쉬운설치) 해결 방법, (+아이콘 샵 아이콘 표시가 안될 경우) 파이어레듵 2013.03.28
여러도메인 사용시 하나의 도메인을 기본도메인으로 지정하지 않고 사용하기! [6] 크루씨 2013.03.28
iframe 등의 태그 화이트리스트 도메인 확인/추가하기 [1] Gunmania 2013.03.27
admin_bar.html 오류 해결팁? [1] 윤성희R 2013.03.27
[팁]포럼 모듈 인용글 박스 문제 해결 - 1.7.3 기준 [5] socialskyo 2013.03.27