RadarURL

logo

  • 홈으로
  • 로그인
  • 회원가입
  • 화면축소
  • 화면확대
2020년 10월 23일
  • 포토누리
  • 제작의뢰
  • 포트폴리오
잡다한몽상백서 메인배너
로그인
(*.53.232.10) 조회 수 2754 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

XE의 스킨은 zb4와 다르게 PHP로 다시 변환되는 특수한 템플릿 언어를 사용합니다. 따라서 스킨을 제작하면서 자신이 원하는 내용을 넣기 위해 본 내용을 숙지해야 합니다.

 

변수#

변수는 PHP와 동일하게 사용되며, XE 내부에서 사용되는 여러가지 변수를 그대로 이용할 수 있습니다. 단, 출력시에는 {...}문을 사용합니다.

 

  1. {$document_srl}

 

위의 문장은 $document_srl이라는 변수를 출력하도록 만듭니다. 아울러 여러가지 출력함수를 매칭시켜 화면출력을 시킬 수도 있습니다.

 

  1. {$oDocument->getTitleText()}

 

그러나 {...}안에 출력될 수 없는 문장등을 기재하면 안됩니다.

 

각 스킨별로 어떤 변수를 쓸수 있는지에 대해서 미리 이해하는 것이 필요하기 때문에 배포본에 함께 동봉된 다른 스킨들이 어떤 변수를 쓰고 있는지 숙지하시기 바랍니다.

 

제어문#

스킨에 간단한 제어문을 사용할 수 있습니다.

 

조건문#

 

  1. <!--@if(조건식)-->
  2. <!--@elseif(조건식)-->
  3. <!--@else-->

 

위의 문장등을 이용하여 조건에 맞추어 스킨 출력을 제어합니다. 조건문에 의한 실행 블록(block)을 정의하기 위하여 반드시

 

  1. <!--@end-->

 

위와 같이 end문을 반드시 기입해야 합니다. 예를 들어 newest_document 위젯의 스킨에서 다음과 같은 조건문 처리가 가능합니다.

 

  1. <!--@if(count($widget_info->document_list) > 0)-->
  2.      .... 문서정보 출력...
  3. <!--@else-->
  4.      최근 문서가 없습니다.
  5. <!--@end-->

 

조건식(Condition Expression)안의 내용은 PHP로 곧바로 해석되기 때문에 PHP에서 가능한 여러가지 연산자를 쓸 수 있습니다.

 

  1. <!--@if($logged_info && $logged_info->is_admin)-->

 

위의 조건문은 스킨에서 현재 유저가 로긴을 했는지, 그리고 관리자인지 검사하는 것을 보입니다.

 

반복문#

 

배열등을 처리하기 위하여 foreach문장을 사용할 수 있습니다. 반복문 역시 end로 해당 블록을 반드시 명시해야 합니다.

 

  1. <!--@foreach($widget_info->document_list as $oDocument)-->
  2. <!--@end-->

 

foreach의 조건식 역시 PHP의 foreach에 사용되는 것과 동일하게 해석되므로, Key와 Value를 분리하기 위해 다음과 같이 쓸 수도 있습니다.

 

  1. <!--@foreach($widget_info->document_list as $key => $oDocument)-->
  2. <!--@end-->

 

 

간단한 PHP문 사용#

 

템플릿 파일에서 {@...}문을 이용하면 간단한 PHP문장을 해석하도록 해줍니다. 예를 들어,

 

  1. {@$is_logged=Context::get('is_logged')}

 

위와 같이 사용할 수 있습니다.(예문은 현재 로그인했는지 확인하는 XE 기본 문항을 스킨에 쓸수 있도록 해준 것입니다.

그러나 {@...}을 사용할때 안에 들어가는 것은 한문장으로 해석가능한 완전한 PHP문이어야 합니다. 예를 들어,

 

  1. {@$test = 364; $test=$test*$test}

 

위와 같이 PHP상에선 별 문제없어보이는 식이지만 이미 하나의 문장이 아니기 때문에 에러를 일으킵니다.(사이트가 보이지 않는 등의 치명적인 문제를 일으키기도 합니다.)

 

※ 내부적으로 {@...}안의 문장은 PHP의 eval() 함수를 이용하여 파싱됩니다.

 

 

파일의 분할#

 

공통적으로 사용되는 템플릿 파일들을 나누어 관리할 수 있습니다.

 

  1. <!--#include('파일경로')-->
  2. <!--#include("파일경로")-->

 

주의: 위의 include문은 php의 include와 다르게 작동됩니다. 어디까지나 분할된 템플릿 파일을 include한다는 사실에 유의하십시오. 일반 PHP 파일은 include 해도 PHP로 해석되지 않습니다.

 

 

CSS/자바스크립트와의 연결#

 

CSS나 자바스크립트를 사용하기 위하여 다음과 같이 <!--%import(경로)-->문법을 이용합니다.

 

  1. <!--%import("js/blog.js")-->

 

위의 예제는 js/blog.js파일을 현재의 스킨과 연결시키기 위해 사용된 문장입니다. 한편으로 이 문장은

 

  1. {@Context::addJsFile("js/blog.js")}

 

과 동일한 실행결과를 가집니다.

 

  1. <!--%import("css/common.css")-->

 

위의 예제는 css/common.css파일을 현재의 스킨과 연결시키기 위해 사용된 문장입니다. 한편으로 이 문장은

 

  1. {@Context::addCSSFile("css/common.css")}

 

과 동일한 실행결과를 가집니다.

 

주의: 이렇게 import된 JS파일은 선언된 위치와 상관없이 HTML의 <HEAD>안에 자동으로 삽입됩니다

?Who's 똑띠

profile

잡다한몽상백서 운영자입니다.


?

List of Articles
번호 제목 글쓴이 날짜 조회 수
243 특정그룹회원게게 서비스 제공하기 똑띠 2009.09.12 7508
242 플래시 테두리 안보이게 하기 file 코파 2009.09.08 5446
241 특정 게시판이 게시물을 일괄 비밀글로 처리하고자 할때... 2 똑띠 2009.09.04 4187
240 로그인 위젯이나 상단 바로가기 링크 처리시 똑띠 2009.09.03 4496
239 SSL 사용체크로 사이트가 먹통이 될때... 1 똑띠 2009.08.28 3637
238 header에서 페이지이동 처리 똑띠 2009.08.27 3908
237 vi_document 파일에서 추천,비추천등을 바로보이게 처리 7 똑띠 2009.08.25 4177
236 게시판 블랙컬러 선택시 댓글 글쓰기폼 배경 컬러 조정 똑띠 2009.08.22 3756
235 div로 100% 사이즈 제작하기 똑띠 2009.08.04 4794
234 레이아웃에서 보기 권한에 따른 출럭 3 똑띠 2009.08.04 3187
233 일정관리 제목 잘리는 부분 처리 똑띠 2009.08.03 2953
232 로그인 사용자 메일주소 출력 하려면?? 똑띠 2009.06.04 5280
231 회원가입시 받은 확장변수를 출력 하려면?? 1 똑띠 2009.06.01 3419
230 SVN을 이용해 XE 최신 개발 버전 가져오기 4 똑띠 2009.05.31 3913
229 글쓰기폼에서 확장변수 배치 내마음대로 하기 1 똑띠 2009.05.30 3534
228 쪽지함보기 -> 쪽지함으로 고칠려면.. 똑띠 2009.05.27 2735
227 레이아웃에서 레이아웃 이름 출력시키기 똑띠 2009.05.27 2530
226 XE에서 브라우저 타이틀 일괄 변경 똑띠 2009.05.22 3031
225 게시판 본문(view_document)에 확장변수값 마음대로 출력하기 2 똑띠 2009.05.21 3499
224 팝업창 코드로 띄우기 file 똑띠 2009.05.04 4930
목록
Board Pagination ‹ Prev 1 ... 5 6 7 8 9 10 11 12 13 14 ... 22 Next ›
/ 22

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

  • Designed by jobdahan.net