https://www.xpressengine.com/devlog/18327848
XE_모듈개발_가이드.pptxXE_모듈개발_가이드.pdf
위 PDF 문서는 전체 71장으로 구성된 문서입니다. 본 문서는 위 PDF 내용을 갈무리 하였습니다.
XpressEngine 모듈 개발 가이드
오픈UI기술팀 | 김예솔
NHN DeView 2009
제1장 XE란?
PHP로 동작하고 CMS기능을 갖고 있는, MVC패턴을 따르는 Framework?
XE는 모듈로 이뤄져 있다.
모듈은 XE 위에서 정상적으로, 독립적으로 구동되는 하나의 프로그램.
ex) board, planet, wiki, textyle, cafe, install, document, comment, tag, trackback, editor, module
$mid
https://도메인/?mid=freeboard
$act
https://도메인/?mid=freeboard&act=dispBoardWrite
https://도메인/?mid=freeboard&act=procBoardInsertDocument
제2장 XE 동작과정
https://도메인/?mid=freeboard&act=dispBoardContent
[Context].................................................... 언어, DB, FTP 등 환경변수 / Request Value / 기본 Javascript, CSS Load
[ModuleHandler][ModuleObject]............ boardView::dispBoardContent()
mid, module, act 찾음 / 모듈정보 load / 해당 모듈객체를 생성 / act 실행 / layout 정보 set
[DisplayHandler]....................................... Response Type에 따라 출력 / layout 컴파일
define('__ZBXE__', true); /** * @brief 필요한 설정 파일들을 include **/ require_once('./config/config.inc.php'); /** * @brief Context 객체를 생성하여 초기화 * 모든 Request Argument/ 환경변수 등을 세팅 **/ $oContext = &Context::getInstance(); $oContext->init(); /** * @brief default_url이 설정되어 있고 현재 url이 default_url과 ... **/ if($oContext->checkSSO()){ $oModuleHandler = new ModuleHandler(); if($oModuleHandler->init()){ $oModule = &$oModuleHandler->procModule(); $oModuleHandler->displayContent($oModule); } } $oContext->close(); ?>
제3장 모듈 파일 구조
XE_ROOT/modules/모듈명/conf/ XE_ROOT/modules/모듈명/conf/info.xml XE_ROOT/modules/모듈명/conf/module.xml XE_ROOT/modules/모듈명/schemas/ XE_ROOT/modules/모듈명/queries/ XE_ROOT/modules/모듈명/tpl/ XE_ROOT/modules/모듈명/tpl/filter/ XE_ROOT/modules/모듈명/skin/스킨명 XE_ROOT/modules/모듈명/lang/ XE_ROOT/modules/모듈명/모듈명.class.php XE_ROOT/modules/모듈명/모듈명.model.php XE_ROOT/modules/모듈명/모듈명.view.php XE_ROOT/modules/모듈명/모듈명.controller.php XE_ROOT/modules/모듈명/모듈명.admin.model.php XE_ROOT/modules/모듈명/모듈명.admin.view.php XE_ROOT/modules/모듈명/모듈명.admin.controller.php
제4장 모듈정보
action 설정
XML Query
모듈 class