Open Source Project XpressEngine is? The CMS to help produce and publish content.
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print
Plug-in

Register

by XEJapan posted Nov 22, 2015
?

Shortcut

PrevPrev Article

NextNext Article

Larger Font Smaller Font Up Down Go comment Print

Register

개요

Register 패키지는 XE 내부에서 플러그인으로 부터 등록���은 컴포넌트들 또는 XE 내부 시스템에서 사용되는 각��� Key-Value 정보�� 담고 있는 역할을 수행합니다. 플러그인에서 등록되는 여러 컴포넌트(테���, 스킨, 위젯 등)은 모두 Register 내부에 등록되어 정해진 인터페이스에 따라서 활용됩니다.

목적

테���, 스킨, 위젯�� 같은 컴포넌트들이 각���의 분리되어 정보�� 관리하��� 되면, 관리 패키지들이 매��� 로드되어야 하는 불필요한 로���이 발생합니다. 이�� 하나��� 통합하여 Register �� 통해서 동일한 방식으로 관리하여 불필요한 패키지의 로드를 피하도��� 할 수 있습니다. 동일한 방식의 등록은 컴포넌트 등록방법에 대한 일관성을 유���할 수 있��� 하며, 보다 효율성 적으로 관리할 수 있��� 합니다.

구성

Register는 �� 자체로 KEY-VALUE 형식의 저장소 구조�� 띄��� 있습니다. 플러그인에서 컴포넌트�� 등록할 때에는 컴포넌트에 따라서 지정된 형식으로 구성된 KEY 형태��� 등록되어야 합니다.

사용법

Register는 그자체로는 단순한 KEY-VALUE 저장소이�� 때문에 컴포넌트�� 등록할 때 뿐��� 아니라, 플러그인 간에 또는 플러그인�� XE 코어 패키지���에 공유해야 할 데이터�� 저장하는 용도��� 자유롭게 사용할 수 있습니다. 다�� 플러그인�� 공유할 데이터 저장공���이 필요하다�� 직접 Register�� 사용하십시오. 이 때 KEY 형식은 다�� KEY와 충돌이 발생하��� 않도��� 신���히 지정해야 합니다. 직접 Register �� 사용하는 경우 키는 주��� 플러그인의 고유 이름을 기���으로 지정됩니다. Key 에 해당하는 Value �� 지정할 때 VALUE의 형식은 제한되어 있��� 않습니다.

기본적인 사용법

Register::add('board/postmenu/spamreport', $value);

컴포넌트�� 등록할 때에는 PluginRegister�� 사용하십시오.

// Theme 정의
class SketchbookTheme extends AbstractTheme
{
    // $id는 Register에 등록될 때 KEY로 사용됩니다.
    // theme의 경우 'theme/[고유아이디]' 형식이어야 합니다. [고유아이디]는 소속된 [plugin의 id@ text] 형식으로 작성하시길 권장합니다.
    protected static $id = 'theme/myplugin@sketchbook';
    ...
}
// Register에 Theme 등록
// PluginRegister는 지정된 클래스의 $id�� KEY로 사용하여 등록합니다.
PluginRegister::add('My\Theme\SketchbookTheme');

API 사용법


List of Articles
Category Subject Date Last Update
Package Captcha 2015.11.22 2015.11.22
Package Category 2015.11.22 2015.11.22
Package Comment 2015.11.22 2015.11.22
Package Config 2015.11.22 2015.11.22
Package Counter 2015.11.22 2015.11.22
Package Database 2015.11.22 2015.11.22
Package Document 2015.11.22 2015.11.22
Package DynamicField 2015.11.22 2015.11.22
View Elements FrontEnd 2015.11.22 2015.11.22
Package Http 2015.11.22 2015.11.22
Package Interception 2015.11.22 2015.11.22
XE3 Interception 가이드 2015.12.29 2015.12.29
Package Keygen 2015.11.22 2015.11.22
Package Media 2015.11.22 2015.11.22
Package Member 2015.11.22 2015.11.22
Package Menu 2015.11.22 2015.11.22
Components Module 2015.11.22 2015.11.22
Package Permission 2015.11.22 2015.11.22
Plug-in Plugin 2015.11.22 2015.11.22
View Elements Presenter 2015.11.22 2015.11.22
Board Pagination Prev 1 2 3 Next
/ 3