웹마스터 팁

사이트에 접속하면 탭에 제목을 보여주는 부분이 있습니다.
XE의 경우 일반적으로 모듈의 이름이나 문서의 제목을 보여주게 되어있습니다.
이를 각 페이지마다 사이트제목과 함께 보여주는 간단한 애드온을 제작하는 방법을 살펴보겠습니다.

XE로 여러개의 사이트를 운영하고 있습니다. 이중 일반 게시판부분은 그래도 구분이 가능하지만 관리자페이지는 모든 제목이 "XE Admin Page'로 모두다 똑같습니다. 가끔 사이트를 착각해서 엉뚱한 작업을 하는 실수가 자주 생겨서 관리자페이지를 사이트마다 구분하는 방법을 찾다고 제작한 애드온입니다. 말이 프로그램이지 conf/info.xml과 12줄짜리 php로 구성된 초간단 애드온입니다. 제작하는데 테스트까지 해서 10분쯤 걸렸을겁니다.

st1.png st2.png

애드온을 적용하기 전에는 어떤 사이트인지 구분이 되지 않지만 애드온을 적용하면 사이트의 제목을 표시해주기 때문에 구분이 쉽고 실수도 적어질겁니다.

이미 비슷한 애드온도 있고 해서 정식배포보다는 제작법 소개를 올리도록 하겠습니다.

먼저 폴더이름을 만듭니다.
폴더이름은 애드온의 이름과 직결되기 때문에 이해하기 쉬운 것으로 하는 것이 좋을 것같습니다.
우선은 ./addons 폴더에 site_title이라는 폴더를 만듭니다.
새로 만들어진 site_title 폴더로 이동해서 conf 라는 폴더를 하나 만듭니다.

가장 먼저 해야할 일은 이 conf 폴더에 info.xml을 생성하는  것입니다.
info.xml은 XML 화일이기 때문에
<?xml version="1.0" encoding="utf-8"?>
<태그>
</태그> 의 기본 구조로 생성됩니다.
여기에서 태그는 XML의 속성을 나타내는 것으로 addon이기 때문에
<?xml version="1.0" encoding="utf-8"?>
<addon version="0.2">
</addon>
의 구조로 만들어집니다. 이것만으로도 기본요소는 갖추어져 있기 때문에 에러는 발생하지 않습니다.
관리자페이지에서 보면 제목없는 애드온이 하나 생겨있을 겁니다.
st3.png
기왕이면
<?xml version="1.0" encoding="utf-8"?>
<addon version="0.2">
    <title xml:lang="ko">사이트 제목변경</title>
</addon>
까지 해주면 애드온에 제목도 생기고 설정화면도 뜨게 됩니다.
다만 설명이나 제작자, 제작일자등의 정보가 다 누락되어있을겁니다.
sb4.png  K-20110325-152854-7.png


다음 소스가 info.xml의 완성된 모양입니다.

01.<?xml version="1.0" encoding="utf-8"?>
02.<addon version="0.2">
03.<title xml:lang="ko">사이트 제목변경</title>
04.<description xml:lang="ko">
05.업로드 되었으나 본문삽입을 하지 않은 이미지를 찾아서 강제로 출력시키는 애드온입니다.
06.</description>
07.<version>0.5.2</version>
08.<date>2011-3-18</date>
09.<author email_address="soonj@nate.com" link="http://www.wildgreen.co.kr">
10.<name xml:lang="ko">카르마</name>
11.</author>
13.<extra_vars>
14.<var name="site_title" type="text">
15.<title xml:lang="ko">사이트 이름</title>
16.<description xml:lang="ko">브라우저에 표시할 제목의 머릿말을 입력할 수 있습니다.</description>
17.</var>
18.</extra_vars>
19.</addon>


이제 폴더를 하나 위로 올라가서 php 화일을 만들어줘야할 때입니다.
폴더 제목이 site_title 인 경우 애드온 화일의 이름은 site_title.addon.php입니다.
만약 폴더 이름을 다른 것으로 사용하셨다면 이 또한 바뀌어야합니다.
예를 들어 xxx_aaa로 폴더 이름을 만들었다면 화일이름도 xxx_aaa.addon.php로 되어야합니다.

01.<?php
02.if(!defined("__ZBXE__")) exit();
03.// 화면에 디스플레이 할때만 동작
04.if($called_position != "before_display_content"return;
05. 
06./* 관리자페이지에서만 동작시키고 싶을때...
07.if(Context::get('module') !='admin') return;
08.*/
09. 
10.//모듈정보 가져오기...
11.$oAdminModuleModel = &getAdminModel('module');
12.$module_info=Context::get('module_info');
13. 
14.//설정에서 입력한 사이트제목을 선택한 언어설정에 맞게...
15.$title_arr $oAdminModuleModel->getLangCode(0, $addon_info->site_title);
16.$lang_type =Context::getLangType();
17.$title $title_arr[$lang_type];
18. 
19.// 제목변경
20.Context::setBrowserTitle($title.Context::getBrowserTitle());
21.?>

이상입니다.

사용시 주의사항은 현재 XE의 애드온을 관리자페이지에서만 동작하게 설정하는 방법이 아직 없습니다.
따라서 설정에서 어떤 모듈이든지 체크를 하게 되면 해당 모듈에서만 동작합니다.
기타모듈은 물론 관리자페이지에서도 동작하지 않습니다.
따라서 관리자페이지에서 사용하려면 모듈선택시 아무것도 체크하지 않아야합니다.

비록 간단해보이는 애드온이지만 선택한 언어에 맞춰서 제목도 변경되게 할 수 있습니다.
설정의 사이트제목 입력칸 우측의 수레바퀴를 클릭해서 언어별로 제목 입력이 가능합니다.K-20110325-151716-4.png K-20110325-153533-9.png http://backupxe.com/4111 
http://backupxe.com/relfeed/4100 참조
제목 글쓴이 날짜
스팸 회원 삭제시 동시에 관련 글 / 댓글 자동 삭제 + 스팸IP 등록기능 구현방법입니다 [20] sejin7940 2013.05.22
트랙백 기능 자체를 사용 안하기 [4] 윈컴이 2013.05.21
자료실에 있는 LNB메뉴 위젯 사용 시 참고 사항 퍼니엑스이 2013.05.19
XE 팝업모듈과 애드온 : XE_Popup_Borderless [7] file 우진홈 2013.05.17
XE Board 2007 스킨에서 Table 속성을 W3C 표준에 맞추기. [3] Paul 2013.05.17
어드민이 미쳐날뛰고 있습니다. (파비콘(favicon) 16px 이상의 ico적용했을때 admin 바가 미쳐날뜁니다.) file 장포크 2013.05.16
[익스10] 스케치북 갤러리 사용시 목록 썸네일 오류현상 해결하기 [4] file imgXE™ 2013.05.16
1.7.3.3. 에서 어드민바(관리자 바) 안뜨게 하기. [3] file AppSeedKorea 2013.05.14
APM에서 XE 설치시 깨짐현상 발생될때... file 비밀M 2013.05.14
XE 1.7.3.0 default 스킨 IE9 드롭다운메뉴 안보이는 현상 [4] 장포크 2013.05.13
위젯 페이지 또는 메인 페이지에서 게시판 첨부파일 바로 다운로드 할 수 있도록 만들기 최르토스 2013.05.10
알림센터 사용환경 수집 무력화하기 [14] CMD 2013.05.10
파일첨부 100% 살아질때 이것 확인해 보세요. [6] 착한악마 2013.05.09
1.7.3 최신버전 특정사이트 iframe(아이프레임) 일반회원 html적용가능하게 하기 [2] imgXE™ 2013.05.06
오래된 게시글에 댓글포인트 안주기 [6] Xiso 2013.05.04
1.7.3.2로 업데이트 이후, 글쓴이 제대로 표현하기 (스킨:스케치북5) [13] 준스타일 2013.05.04
모바일에서 댓글 자동 펼치기 (스킨:스케치북5모바일) [2] 준스타일 2013.05.03
array 함수와 in_array함수 이용한 시간 체크 똑디 2013.05.03
XE를 위한 DEBUG 이야기 [3] 우진홈 2013.04.30
그누보드 > XE 이전툴 이용하여 이전하는 방법 [4] 개터리 2013.04.26