You cannot see this page without javascript.

Skip Navigation

XE 레이아웃 카메론 XE LAYOUT CAMERON XE2.0.15


00:00

날씨

    • 흐림
    • 21.0°C
    • 60%
    • 30%
    • 구름 많음
    • 19.0°C
    • 75%
    • 20%
    • 구름 많음
    • 17.0°C
    • 80%
    • 20%
    • 흐림
    • 16.0°C
    • 90%
    • 30%
    • 구름 많음
    • 16.0°C
    • 90%
    • 20%
    • 흐림
    • 19.0°C
    • 75%
    • 30%
    • 흐림
    • 23.0°C
    • 55%
    • 30%
    • 흐림
    • 23.0°C
    • 55%
    • 30%
    • 흐림
    • 21.0°C
    • 65%
    • 30%
    • 흐림
    • 19.0°C
    • 75%
    • 30%
    • 흐림
    • 18.0°C
    • 80%
    • 30%
    • 흐림
    • 23.0°C
    • 70%
    • 30%
    • 흐림
    • 20.0°C
    • 85%
    • 30%
발표시간: ,
날씨 정보 저작권자 © 기상청
XE코어
2020.08.13 00:41

파일 포함 include

profile
(*.168.0.1) Views 57 Votes 0 Comment 0
Extra Form
원문주소
페이지 00103
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

XE Template Syntax

XE 템플릿 스킨의 HTML 문서 안으로 외부 파일을 불러와 포함시키기 위한 문법이다. 파일 포함 문법에서는 불러 들이고자 하는 외부 파일의 경로 설정을 상대 경로로 표시한다. 즉 HTML 문서의 자신을 기준으로 상대적인 위치의 경로를 이용한다. HTML 문서가 있는 같은 폴더 안의 default.css 파일을 포함한다면 import("default.css")가 된다. 만약 하위 폴더 JS 안에 있는 파일을 포함한다면 import("js/default.js")가 된다. 스킨의 HTML 문서 안에서 작성된 파일 포함 구문은 XE 코어가 자신의 완성된 HTML 문서의 <head>..</head> 영역 안으로 가지고 올라가서 원래의 스크립트 문으로 변환한다. 따라서 포함 여부를 확인하려면 소스보기를 이용해 <head> 블록 안에서 <link rel="stylesheet" type="text/css" href="default.css" />와 같이 목표(Target)가 되는 파일의 이름이 있는지 확인하도록 한다.(import/load 해당)

1. include 문

스킨을 제작할 때 여러 페이지에 걸쳐 반복되는 콘텐츠 블록이 있으면 별도의 파일로 분할하여 관리하는 것이 편리하다. 하나의 파일만 수정하면 여러 페이지에 걸쳐 한 번에 적용할 수 있기 때문이다.

[작성 문법]

<!--#include("header.html")-->
<include target="header.html" />

<include /> 요소는 HTML 표준 요소가 아니지만, HTML 태그의 형식을 빌려 쓰고 있다. include는 별도의 파일을 현재 페이지로 불러오는 PHP문의 include() 명령어와 유사한데 target 속성을 이용해 특정 목적파일을 포함시키는 방법이 다르다.

[변환 형식]

<?php
   print('변환된 파일의 객체 내용');
<?>

포함시키려는 파일의 내용은 TemplateHandler.class.php 함수 라이브러리를 이용해 객체($oTemplate)로 생성된 후 다시 컴파일(compile) 되어 print() 된다. 따라서 아래 import문 처럼 파일을 포함한다는 스크립트를 추가하는 것이 아니고 목적파일의 내용을 가져와 그 (code)를 포함시키는 것이다. PHP문의 include() 함수와 그 기능이 동일하다.

2. import 문

HTML 주석(<!-- -->) 태그와 퍼센트(%) 기호를 혼합하여 외부 파일(CSS, JS, XML JS 필터)을 불러(import/포함)온다. 이때 CSS, JS 파일은 HTML <head> 요소 안에 포함시키지만 XML JS 필터 파일은 <body> 요소가 끝나기 직전에 포함시킨다.(XE 코어 1.4.4 버전 이후 무조건)

  • XML JS 필터 : XML 형식으로 입력 항목을 정의해 두고 폼을 전송할 때 유효성 검사를 자동으로 수행하는 기능 파일, 유효성 검사는 XML 기반으로 자동으로 변환된 자바스크립트가 수행하므로, 사용자는 복잡한 자바스크립트를 작성할 필요가 없다. XML JS 필터는 유효성 검사를 통과한 폼 데이터를 어떤 모듈의 어떤 명령어로 보낼 것인지 정하는 기능도 있다. XE 코어 1.4.4 이전에는 다른 파일과 동일하게 <head> 요소 안에 출력되었지만 1.4.4 이후에는 무조건 <body> 요소가 끝나기 직전에 출력된다.

[작성 문법]

<!--%import(“default.css")--> // head 요소 영역에 포함(CSS 파일)
<!--%import(“default.js")--> // head 요소 영역에 포함(JS 파일)
<!--%import(“xe.xml")--> // <body> 영역 최하단에 포함(XML JS 파일)

 

[변환 형식]

<head>
   <link rel="stylesheet" href="default.css" type="text/css"  charset="UTF-8" media="all" />
   <script type="text/javascript" src="default.js"></script>
</head>

<body>
...

   <script type="text/javascript" src="xe.js"> // <body> 영역 최하단에 출력
</body>

 

3. load 문

XE가 미리 약속해 둔 가상 태그(<load />)를 이용해 작성할 경우 을 추가할 수 있다. load 태그는 HTML에 없는 태그이기 때문에 XE만 사용하는 가상 태그라고 부르는 것이다. 변환 형식의 결과는 import문과 동일하다.

[작성 문법]

<load target="default.css" />
<load target="default.js" />
<load target=“xe.xml" /> // <body> 영역 최하단에 출력하는 것은 동일하다.

① CSS에서의 [media] 속성

<load target="default.css" media="print" />

CSS 파일의 대상이 되는 미디어를 선택하여 지정하게 되면 해당 출력 장치에 대응하여 작동한다. media 속성은 쉼표를 사용하여 여러 개를 지정할 수 있고 없는 경우 기본값은 media="all" 이 되며 다음과 같은 결과를 얻는다.(※ media 속성 값은 [스킨 제작 메뉴얼] p.33 참고)

<link rel="stylesheet" href="default.css" type="text/css" charset="UTF-8" media="print" />

② JS에서의 [type] 속성 : 참조 선언 위치

<load target="default.js" type="body" />

JS 파일을 body 요소 안에 불러오는 경우 type="body" 속성을 추가한다.(기본값은 <head> 요소에 포함된다.) 결과값은 다음과 같다.

<body>
...
   <script type="text/javascript" src="default.js">
</body>

③ 공통 [targetie] 속성 : IE 조건부 주석의 사용

targetie 속성을 사용하면 외부 파일의 참조를 IE의 특정 브라우저 버전에서만 해석할 수 있도록 조건부 주석으로 출력한다. 속성의 이름을 보면 알 수 있듯이 적용을 목표로 하는 타겟(Target)이 익스플로러(IE)이고 을 함께 한다.(Target + IE = targetie) ※ 기본값은 빈 값으로 "적용 안 함"이다.

66

IE 조건부 주석을 사용하는 경우 IE6 버전의 브라우저는 주석으로 처리하지 않고 해석하여 적용한다. 처리 결과는 다음과 같다.

66

④ 공통 [index] 속성 : 참조 선언 순서 변경

<load target=“default.css" index="-1" />
<load target=“default.js" index="-1" />

index 속성을 사용하면 외부 파일의 참조 선언 순서를 변경할 수 있다. index 속성의 값은 양의 정수 또는 음의 정수를 사용할 수 있으며, 음의 정수를 사용하면 더 빨리 선언할 수 있고, 양의 정수를 사용하면 더 늦게 선언할 수 있다. index="-1" 값을 지정하면 다른 CSS 파일보다 한 줄 빠른 위치에서 선언된다. CSS 파일은 동일한 명령이 충돌하는 경우 나중에 선언된 값이 우선순위를 갖기 때문에 우선순위를 높게 두어야 하는 경우 나중에 선언하는 것이 좋다.

※ unload 문

unload문은 load 문과 반대로 경로가 일치하는 CSS, JS, XML JS 필터의 파일 포함을 제외시키는 명령어이다. 하지만 사용되는 예가 없고 사용할 일도 거의 없는것 같다...^^

💖 부운영자님 에게 암호화폐로 후원하기 💖

아이콘을 클릭하면 지갑 주소가 자동으로 복사 됩니다

* User ID : leesungmin
* User Name : 이성민
* Email : imadonis@naver.com
* Homepage : https://4880.net
* Birthday : 1972-07-24
* Member Group : 관리그룹, 유료회원, 문제출제
* Signup Date : 2012-07-19
* Following : 랩퍼투혼 whom the member is following.
* Following Count : 1people
* Followed by : 랩퍼투혼, 탑돌이 ... now follwing this member.
* Followed Count : 2people

< 빌립보서 4장 13절>
내가 주 안에서 크게 기뻐함은 너희가 나를 생각하던 것이 이제 다시 싹이 남이니 너희가 또한 이를 위하여 생각은 하였으나 기회가 없었느니라   
내가 궁핍하므로 말하는 것이 아니니라 어떠한 형편에든지 나는 자족하기를 배웠노니    
나는 비천에 처할 줄도 알고 풍부에 처할 줄도 알아 모든 일 곧 배부름과 배고픔과 풍부와 궁핍에도 처할 줄 아는 일체의 비결을 배웠노라
내게 능력 주시는 자 안에서 내가 모든 것을 할 수 있느니라 

* Document Count : 17366
* Comment Count : 90
* Document Count : 36
* Document Count : 126
* Comment Count : 134
* Document Count : 3
* Comment Count : 3
* Document Count : 1
* Comment Count : -1
카카오링크

제로XE/라이믹스/그누/워드프레스

회원만 쓰기 가능합니다.

List of Articles
No. Category Subject 페이지 Author Date Views
Notice Tip&Tech xe 동작순서 부운영자 2015.08.24 1016
Notice Tip&Tech XE의 애드온 및 모듈의 기능 요약표 부운영자 2015.01.16 1266
Notice Tip&Tech XEReferences 부운영자 2014.11.29 920
Notice Tip&Tech XE 스킨 제작 매뉴얼 v1.1 (Korean, PDF) file 부운영자 2014.11.29 1283
Notice Tip&Tech XE 개발자 매뉴얼 v1.1 (Korean, PDF) file 부운영자 2014.11.29 1809
Notice Tip&Tech xe 레퍼런스 모음 file 부운영자 2014.10.10 2537
230 모듈 입력 컨트롤러(Controller) Module Admin Controller for Insert/Update 모듈 입력/수정과 컨트롤러(Controller) 예제로 만들고 있는 example 모듈에서 새로운 모듈(mid)을 추가하고 수정할 수 있는 액션과 그에 따른 진행 과정을 그린 설계도이다. 모듈(module)을 추가 한다는 것은 example 모듈과 같이 기능적인 모듈을 추가한다는 것이 아니라, 앞으... 00026 부운영자 2020.08.13 50
229 모듈 모듈 확장과 모델(Model) 모듈 확장과 모델(Model) 관리자를 위한 백 엔드 뷰(View)가 실행되면 관리자-인덱스로 설정했던 dispExampleAdminList 액션이 작동하고 그 진행과정을 설명한 그림이다. 또한 앞으로 만들게 될 관리자 목록 보기를 위한 설계도이다. 이 과정에서는 어드민 모델(example.admin.model.php)을 이용할 계획이다. 실제로 게시판(... 00025 부운영자 2020.08.13 35
228 모듈 프론트엔드와 백엔드 뷰(View) Front and back ends 프론트 엔드(front-end)와 백 엔드(back-end)는, 사용자가 접근하는 영역을 말하는데 이때 사용자는 사람이 아닌 프로그램이 될 수도 있다. 예를 들어 컴퓨터 OS의 그래픽 파일 관리자는 컴퓨터의 파일 시스템에 대한 프론트 엔드이고 사용자와 직접 상호작용을 할 수 있다. 백 엔드 응용프로그램은 보... 00024 부운영자 2020.08.13 357
227 모듈 MVC 구조의 이해 Model-View-Controller XE Core는 모델-뷰-컨트롤러(Model-View-Controller) 개발 패턴에 기반한다. 이것을 줄여서 MVC 구조라고 말한다. 소프트웨어 공학에서 프로그램의 설계는 건축(architecture)과 같다. 시스템의 운영 구조를 목적과 명세에 따라 유기적 관계로 설계하고 업그레이드를 통제하는 지침과 원칙, 이것을 아... 00023 부운영자 2020.08.13 66
226 모듈 폼(form)과 DB Form &amp; DB XE 모듈을 이해하기 위한 기초 과정으로 폼(form)의 동작 방식을 살펴보자. 모듈은 결론적으로 폼과 DB의 관계이다. 모듈은 자신이 관리하는 테이블을 한두개 이상 가지고 있고 이것을 다루기 위해 폼을 사용한다. 이때 모듈에서의 폼의 처리 과정은 모델 뷰 컨트롤러 (Model-View-Controller) 개발 패턴에 기반한... 00022 부운영자 2020.08.13 112
225 모듈 XE의 URL 규칙 URLs on XE XE에서 생성한 URL 은 깔끔하고 검색엔진에서 색인되기 좋은 구조이다. XE는 일반적인 쿼리스트링 기반의 URL이 아니라 세그먼트 기반의 URL을 사용한다. 쿼리스트링(Query string) URL이란, 다음과 같이 쿼리 문자열을 포함하는 전형적인 URL 형식이다. &lt;http://www.xeschool.com/xe/index.php?mid=freeboard&amp;do... 00021 부운영자 2020.08.13 89
224 모듈 모듈의 기본 이해 The Story of XE Modules XE코어의 모듈 이야기... 1. 백엔드 어드민(Admin) 뷰(View) 구현을 위한 example 모듈 만들기 2. 프론트 엔드 뷰(View) 구현을 위한 BOOK 모듈 만들기 3. v1.5 룰셋(ruleset)과 BOOKMARK 모듈 만들기 . XE의 URL 규칙 폼(form)과 DB MVC 구조의 이해 프론트엔드와 백엔드 뷰(View) 모듈 확장과 모... 0002 부운영자 2020.08.13 25
223 모듈 XE 모듈 The Story of XE Modules XE코어의 모듈 이야기... 1. 백엔드 어드민(Admin) 뷰(View) 구현을 위한 example 모듈 만들기 2. 프론트 엔드 뷰(View) 구현을 위한 BOOK 모듈 만들기 3. v1.5 룰셋(ruleset)과 BOOKMARK 모듈 만들기 모듈의 기본 이해 BOOK 모듈 만들기 룰셋과 북마크 모듈 만들기 0001 부운영자 2020.08.13 18
222 XE코어 반복문 loop XE Template Syntax 반복문 loop 주어진 조건에 따라 필요한 내용을 반복해서 출력해야 할 때 반복문(루프/loop)을 사용한다. 1. 반복문의 이해 반복문은 컴퓨터가 만들어지면서 가장 먼저 시도된 증조 할아버지뻘 되는 구문이고 문법이다. 1+1 은 쉽다. 하지만 1에서 10까지 더하라고 하면 약간 머리가 복잡해진다. 사람들... 00105 부운영자 2020.08.13 46
221 XE코어 조건문 IF XE Template Syntax 주어진 조건에 따라 필요한 내용을 문맥에 알맞게 출력하거나 배제할 때 조건문을 사용한다. 1. IF 문 IF 조건문은 PHP의 IF 조건문과 동일하고 &quot;if, elseif, else, end&quot;와 &quot;조건식&quot;으로 이루어져 있다. if 문이 시작되면 반드시 end 문으로 닫아서 조건문이 끝났음을 선언해야 하고 조건식의 내용은 PHP... 00104 부운영자 2020.08.13 34
» XE코어 파일 포함 include XE Template Syntax XE 템플릿 스킨의 HTML 문서 안으로 외부 파일을 불러와 포함시키기 위한 문법이다. 파일 포함 문법에서는 불러 들이고자 하는 외부 파일의 경로 설정을 상대 경로로 표시한다. 즉 HTML 문서의 자신을 기준으로 상대적인 위치의 경로를 이용한다. HTML 문서가 있는 같은 폴더 안의 default.css 파일을 포... 00103 부운영자 2020.08.13 57
219 XE코어 기본 문법 default XE Template Syntax 1. 변수 PHP에서 변수를 다루는 것과 동일한 방법으로 XE 템플릿 안에서 변수를 정의하고 출력할 수 있다. 변수를 나타내는 문자열 앞에는 달러($) 기호를 붙여 사용하며 변수명은 대소문자를 구별한다. 변수는 프로그램에서 미리 선언한 내용 또는 템플릿 안에서 사용자의 필요에 따라 새로운 변수를 정... 00102 부운영자 2020.08.13 72
218 XE코어 XE 템플릿 문법의 이해 XE Template Syntax 템플릿(template)이란 붕어빵을 만드는 틀로 비유된다. 같은 모양, 같은 크기의 객체(object)를 만들기 쉽다. 프로그래밍 언어에서 템플릿 구문은 초등학교 시절의 플라스틱 모형자를 생각하면 이해가 쉽다. 제각각 다른 모양, 다른 크기로 그려지는 삼각형도 모형자 하나만 있으면 모두들 똑같은 삼각형... 00101 부운영자 2020.08.13 56
217 XE코어 logged_info $logged_info XE에 접근하면 XE는 항상 방문자의 로그인 여부를 우선 먼저 확인하게 된다. 이때 사용하는 변수가 $is_logged 와 $logged_info 이다. Context.class.php 파일 137라인을 참고해 보면 member 모듈의 member.controller.php 파일의 메서드(해야 할 일)를 참고하여 방문자가 로그인했는지, 로그인했다면 세션과 ... 00092 부운영자 2020.08.13 118
216 XE코어 getUrl() getUrl() XE 레이아웃에 많이 쓰이는 getUrl() 함수이다. &quot;getUrl()은 현재 요청된 RequestURI에 주어진 인자의 값으로 변형하여 url을 리턴한다.&quot;고 설명되어 있다. 또한 인자는 (key, value)... 의 형식으로 주어져야 하고 (예... getUrl(&#039;key1&#039;,&#039;val1&#039;, &#039;key2&#039;, &#039;&#039;) : key1, key2를 val1과 &#039;&#039; 로 변형) 아무런 인자가 없... 00091 부운영자 2020.08.13 120
215 XE코어 Context.class.php 요청 인자(request arguments), 환경 변수(environment variables)와 같은 모든 컨텍스트(Context)를 관리 Context::methodname()로 호출할 수도 있고 정적 객체로도 호출할 수 있는 사용하기 쉬운 이중 방식 구조를 가지고 있다. Context는 GET/POST의 값을 수신하고 변수와 다양한 정보를 템플릿에 전달한다. 또한, 요청이... 00082 부운영자 2020.08.13 86
214 XE코어 Object.class.php XE 모듈 사이의 객체 인스턴스를 전달하는 기본 클래스(데이터를 주고 받기 위한 클래스) 모든 모듈은 객체(Object)를 상속한다. 객체(Object)의 error, message, variables 를 이용하여 통신을 하게 된다 Object 함수 목록 : 속성 var $error = 0; ///&lt; 에러 코드 (0이면 에러 아님) var $message = &#039;success&#039;; ///&lt; 에러 ... 00081 부운영자 2020.08.13 69
213 XE코어 함수라이브러리 func.inc.php clone($object) iconv($in_charset, $out_charset, $str) &amp;getModule($module_name, $type = &#039;view&#039;, $kind = &#039;&#039;) &amp;getController($module_name) &amp;getAdminController($module_name) &amp;getView($module_name) &amp;getMobile($module_name) &amp;getAdminView($module_name) &amp;getModel($module_name) &amp;getAdminModel($module_name) &amp;g... 00072 부운영자 2020.08.13 160
212 XE코어 환경설정 config.inc.php XE의 버전 및 개발자용 디버깅 설정이 저장된 파일 XE가 기본적으로 사용하는 함수라이브러리 func.inc.php 파일과 클래스(class)파일을 시작페이지 index.php 파일로 가져간다 define(&#039;ZBXE_VERSION&#039;, &#039;1.4.5.7&#039;); XE코어의 버전은 이곳에서 정의된다. require(XE_PATH.&#039;config/func.inc.php&#039;); XE코어에서 사용하기 위한 ... 00071 부운영자 2020.08.13 62
211 XE코어 XML 쿼리 언어 XML 쿼리 언어 XML Query Language SMaker님의 글을 전문인용하여 재구성하였다. - http://xe.xpressengine.net/wiki/18180631 개요 쿼리 사용방법 XML sample Select query 예제 Join Select 예제 Letf Join Select 예제 Insert 예제 update 예제 delete 예제 Select Click Count 예제 개요 XpressEngine는 SQL 쿼리를 그대... 0011 부운영자 2020.08.12 52
List
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 14 Next
/ 14