AnimeClub - zbXE... : zeroboard XE

XpressEngine에 관련 내용에 대해서 이야기 합니다.

icon 스킨상에서 함수 추가 애드온

조회 수:11429 댓글:3 등록일:2008.12.19 16:37:40 (*.234.236.247)
Toothed_Wheel.jpg

이번에 스킨을 제작하다가 필요이상의 기능이 스킨상에서 이루워져야 하는 문제 등으로 애드온을 하나 만들게 되었습니다.

소개
본 애드온은 XE 스킨 상에서 특정 php의 함수를 호출하여 템플릿 실행 전 추가 시켜주는 애드온 입니다.

설치
- 아래 첨부파일 func_include.zip 파일을 다운 받아 압축을 풀어서 addons 폴더안에 넣으세요.
- 관리자 페이지에서 해당 애드온을 사용으로 설정해주세요.

사용법
본 애드온을 이용하여 스킨상에서 php문을 불러오기 처리하기 위해서는 아래와 같은 조건이 되어있어야 합니다.

파일준비
스킨상에서 선언되는 경로안에 파일이 있어야 하기 때문에
스킨폴더상에 'php 폴더명'(아무이름상관無), 'class.php'(아무이름상관無) 을 만들어주세요.

class.php의 기본 내용
<?php
    if(!defined("__ZBXE__")) exit();
    class 클래스명 {
        function test(){
            return 'ok';
        }
    }
?>

위 테스트가 기본 내용 입니다.
클래스명을 임의로 만들어주시고 그 안에 함수들을 만들어주세요.

템플릿파일안에 선언
예) modules/board/skins/스킨명/아무파일중.html

<!--@if($func_check)-->
{@ func_include('modules/board/skins/스킨명/php/class.php') }
<!--@end-->

func_include 함수는 애드온에 포함되어 있습니다.
()안의 내용은 xe메인 폴더로 부터 이름부터 시작해서 파일확장자명까지 적어주시면 됩니다.
<!--@if($func_check)--><!--@end--> 이것을 사용하는 이유는 애드온 실행 여부 검사 입니다.
애드온 안에는 실행여부를 파악할 $func_check 변수를 생성하도록 되어있습니다.
반드시 불러온 모든 호출 함수는 위와 같이 변수로 감싸주시기 바랍니다.

ps : './, /' 등 앞에 쓰지마세요.

함수접근 및 선언법
<!--@if($func_check)-->
{ 클래스명::test() }
<!--@end-->

위와 같이 기본적인 조건을 설정하신 후 스킨 출력을 했을 시 ok가 나오면 성공 입니다.

DB용 XML 파싱법
함수 안에서 요청받은 내용만 가공이 아니라 DB내용도 불러올 수 있습니다.

스킨상에 php폴더와 동등한 위치에 'queries'폴더를 생성해 주세요.
해당 폴더안에 제작하신 xml등을 추가해주세요.

DB XML 파싱 접근법
//스킨
$output = executeQueryArray('board/skins/스킨명.xml파일명(확장자제외)', $args);
//위젯
$output = executeQueryArray('widgets.위젯명/skins/스킨명.xml파일명(확장자제외)', $args);


이상의 설명을 듣고서도 이해 되시는 분들이 있고 안되시는 분들이 계실 겁니다.
본 애드온을 이용하여 제작된 로마네스크 로그인 스킨이 있습니다.
해당 스킨안에 위 접근 법 등 기본적인 내용이 들어가 있으니 이해 안되시는 분들은
그 부분이라도 좀 더 참고해 주시기 바랍니다.




profile

정맍

2009.01.07
15:17:34
(*.254.82.93)
도대체 이게 머하는거나염?

라르게덴

2009.01.07
23:50:08
(*.79.64.78)
profile
스킨이나 위젯을 개발하시는 분들에게 편한 애드온인데요.
XE에 기본적으로 만들어져있지 않은 별도의 기능을 만들려고 하면 함수를 하나 만들어서 사용해야 하는데요.
그 함수를 놓을 자리가 일반적으로는 없답니다.
스킨 템플릿파일(스킨파일.html)에는 if나 foreach 등은 사용가능하지만 function() 함수는 사용을 못합니다.
하여 스킨상에서도 용의하게 php파일을 불러들여 함수를 구현하게 해주는거죠.

초보자에게는 이해하기 힘들지만 이 애드온을 통해서 일반 스킨에서 만들지 못했던 기능을 다양하게 구현한다는 점에서
본 애드온을 기본으로 '사용' 으로 두시면 되는 것 입니다.
본 애드온을 '사용'으로 해두었다고 해서 홈페이지가 느려지진 않습니다.
워낙 짧은 소스이니까요...

tofinder

2011.06.15
20:50:16
(*.124.200.144)

정말 최고이십니다. 이거때문에 지금 몇일재 고민하고 킴스로 넘어갈까 하다가 있어서 이렇게 부랴부랴 해볼려고 합니다 ㅠㅠ;

너무 나 고마워요. ^^*

List of Articles
번호 제목 글쓴이 날짜 조회 수
193 질문-답변 Cooliris PicLens alljoy 2014-02-19 22912
192 질문-답변 운영잔님 질문드립니다. [1] 인터넷짱 2013-06-08 20837
191 질문-답변 아래글에 이어서.. [4] secret 동쪽에태양 2013-02-24 9
190 질문-답변 piclens 을 수정 하고 싶어요 ^^ [2] secret 동쪽에태양 2013-02-17 3
189 질문-답변 로마네스크 재질문 [2] secret 인터넷짱 2013-01-22 5
188 질문-답변 piclens 1.2 요청합니다. [1] alljoy 2013-01-10 14075
187 질문-답변 로마네스크 최근글 질문입니다. [2] file 인터넷짱 2013-01-04 10438
186 질문-답변 아래글 이전글-다음글 관련 확인했는데... 고민하다가 2012-08-13 13466
185 질문-답변 이전글-다음글 관련 문의드립니다. [2] secret 고민하다가 2012-07-31 5
184 질문-답변 이전글 다음글 다시 질문드립니다. [2] 감사합니다. 2012-05-15 13712
183 질문-답변 이전글 다음글 문의드립니다, [2] 감사합니다 2012-05-09 56868
182 질문-답변 로마네스크 최근 문서 출력 위젯 [3] 종구이 2012-03-31 21358
181 질문-답변 json 추출 글 보고 문의 드립니다. [2] cosmos 2012-03-28 25682
180 질문-답변 이전글 다음글 출력에 관한문의 [2] file 봄날2 2012-03-16 22712
179 질문-답변 이전글 다음글 1.1 버튼색상요 [5] 열공365 2012-03-15 15818
178 질문-답변 흠.. 어떻게 하는거죠?? 위젯이 이상해요..; [3] file 2012-02-27 19964
177 질문-답변 이전글 다음글 위젯이요 [2] 열공365 2012-02-20 35815
176 질문-답변 게시판글을 xml로 파싱하는 방법을 부탁드립니다. [2] ibwj 2011-11-24 29227
175 질문-답변 Cooliris PicLens 애드온 1.5..... [3] secret alljoy 2011-10-30 7
174 질문-답변 위젯: 썸네일 생성에 대해서 질문있어요 [2] 아메아메몬 2011-03-25 18495



CATEGORY
ALL [600]
공지 [3]
[551]
사진 [39]
정보 [6]
소식 [2]
정보 [4]

Skin Info

slide_in
 갱신
 
arrow_in