회원가입 | 고객센터 |
DESIGNONEX
dxcms.kr
로그인 회원가입
고객센터
3.2 폴더 구조

plugins/ — 플러그인 시스템

D DX
2026.04.21 00:43(수정됨) 132 0

plugins/ — 플러그인 시스템

CMS 기능을 코어 수정 없이 확장하는 플러그인 폴더입니다. 각 플러그인은 독립 폴더로 분리되며, plugin.php 에서 dx_register_plugin() 으로 등록됩니다.
 
plugins/
├── dx-payment-helper.php        ← 결제 플러그인 공통 헬퍼 함수
├── example-plugin/              ← 플러그인 개발 예제
│   ├── plugin.php               ← 플러그인 등록 + 훅 연결 코드
│   └── manifest.php             ← 플러그인 메타 정보 (이름•버전•설명)
├── dx-socket/                   ← WebSocket 실시간 기능 플러그인
│   ├── plugin.php
│   ├── socket-core.js.php       ← 소켓 클라이언트 JS 동적 생성
│   └── admin/                   ← 소켓 관리자 페이지 (상태•설정)
│       ├── settings.php
│       └── widget.php
├── ckeditor4-editor/            ← CKEditor 4 에디터 플러그인
├── tosspay-payment/             ← 토스페이 결제
│   ├── plugin.php
│   ├── manifest.php
│   └── assets/                  ← 결제 관련 JS/CSS 파일
├── kakaopay-payment/            ← 카카오페이 결제
├── naverpay-payment/            ← 네이버페이 결제
├── danal-payment/               ← 다날 결제 (신용카드•휴대폰)
├── kcp-payment/                 ← NHN KCP 결제
├── kg-inicis-payment/           ← KG 이니시스 결제
├── nicepay-payment/             ← 나이스페이먼츠 결제
├── payletter-payment/           ← 페이레터 결제
├── paypal-payment/              ← PayPal 해외 결제
├── stripe-payment/              ← Stripe 해외 결제
└── custom-payment-template/     ← 커스텀 결제 개발 템플릿


플러그인 파일 구조 상세

파일 필수 역할
plugin.php ✅ 필수 플러그인 등록 (dx_register_plugin) + 훅 연결 코드. 활성화 시 로드됨
manifest.php 권장 플러그인 메타 정보 단독 파일. 비활성 상태에서도 관리자에서 정보 표시
admin/ 선택 관리자 패널에 플러그인 전용 설정 화면 추가
assets/ 선택 플러그인 전용 CSS•JS•이미지. URL로 직접 접근 가능
controllers/ 선택 DxContainer 가 자동 탐색하는 컨트롤러 클래스 파일


플러그인 등록 API 

// plugins/my-plugin/plugin.php
dx_register_plugin(array(
    'id'       => 'my-plugin',
    'type'     => 'editor',   // editor | payment | socket | captcha | other
    'name'     => 'My Plugin',
    'version'  => '1.0.0',
    'author'   => 'Dev Name',
    'settings' => array(       // 관리자에서 설정 가능한 옵션 정의
        'api_key' => array(
            'label'   => 'API 키',
            'type'    => 'text',  // text | select | checkbox | textarea
            'default' => '',
        ),
    ),
));

// 훅으로 기능 연결 (플러그인 로드 시 즉시 실행)
dx_add_hook('dx_editor_render', function($args) {
    $apiKey = dx_plugin_option('my-plugin', 'api_key');
    // 에디터 HTML 출력
}, 10);
  

댓글0

로그인 후 댓글을 작성할 수 있습니다.
7. 테마 DXCMS 테마 개발 AI 프롬프트 스킬과 멀티사이트 체험 2026.05.23 6. 게시판 DXCMS 게시판 스킨 만들기 Prompt Skill 2026.05.23 16. 이슈 가이드 막코딩 필수 규칙 2026.05.21 16. 이슈 가이드 그누보드의 `_common.php` 처럼, `dx_load.php` 한 줄로 DXCMS의 모든 기능을 사용하는 방법입니다. 2026.05.21 15. 마켓 개발자 가이드 마켓 다운로드 보호 설정 가이드 2026.05.20 6. 게시판 게시판 여분 필드 (Board Extra Fields) 사용 가이드 2026.05.19 14. 데이터베이스 Database 직접 쿼리 개발 2026.05.19 14. 데이터베이스 DB스키마 2026.05.12 13. 보안 기본 보안 구조 2026.05.10 12. 성능 / 최적화 트래픽 대응 2026.05.10 12. 성능 / 최적화 정적 리소스 관리 2026.05.10 12. 성능 / 최적화 캐싱 전략 2026.05.10 11. 인증 / 로그인 시스템 세션 처리 구조 2026.05.10 11. 인증 / 로그인 시스템 인증 흐름 2026.05.10 11. 인증 / 로그인 시스템 소셜 로그인 2026.05.10 11. 인증 / 로그인 시스템 일반 로그인 2026.05.10 10. 마이페이지 마이페이지 구조 2026.05.10 9. 채팅 채팅 제작 2026.05.10 9. 채팅 채팅 구조 2026.05.10 3.8 Extend 구조 Extend 실제 소스 코드 완전 분석 • 12가지 실전 사례 2026.05.02
31
전체 회원
503
전체 게시글
770
전체 댓글
442
오늘 방문
33,173
전체 방문
3
현재 접속
인기글 7일 이내
최신글
최신댓글
목록