객실안내 자유게시판 로그인 회원가입 실시간 예약

boards/ — 게시판 시스템

3.2 폴더 구조

boards/ — 게시판 시스템

D DX
2026.04.21 00:34(수정됨) 149 0

boards/ — 게시판 시스템

게시판 핵심 처리 로직과 스킨 템플릿이 위치합니다. handler.php 하나가 목록•보기•쓰기•수정•삭제•댓글을 모두 처리하며, 스킨 시스템을 통해 게시판별 독립적인 UI를 적용할 수 있습니다.
 
boards/
├── handler.php           ← 게시판 공통 핸들러 v2.6.3
├── skins/                ← 게시판 스킨 폴더
│   ├── SKIN_GUIDE.md     ← 스킨 개발 가이드 문서
│   ├── gallery/          ← 갤러리형 스킨 (이미지 썸네일 목록)
│   │   ├── skin.json     ← 스킨 메타 정보 (이름•버전•지원 액션)
│   │   ├── list.php      ← 갤러리 목록 뷰
│   │   ├── view.php      ← 갤러리 상세 뷰
│   │   ├── write.php     ← 갤러리 작성 폼
│   │   └── _list_rows.php← 목록 행 파셜 (AJAX 부분 갱신용)
│   └── shop/             ← 쇼핑몰형 스킨 (상품 목록•상세)
│       ├── skin.json
│       ├── list.php
│       └── actions/      ← 커스텀 액션 파일
│           └── cart.php  ← /게시판키/cart URL 처리
└── category/             ← 카테고리 탭 스킨
    └── skins/            ← 카테고리 표시 스킨
        └── default/      ← 기본 카테고리 탭 스킨


handler.php 의 6단계 스킨 탐색 우선순위

// 스킨 파일 탐색 순서 (handler.php 내부 DxBoardSkin::resolve())
① boards/skins/{스킨}/{액션}/handler.php    ← 완전 독립 핸들러 (DB쿼리~렌더 모두)
② boards/skins/{스킨}/{액션}.php            ← 독립 뷰 (데이터는 handler.php 제공)
③ themes/{테마}/board/{스킨}/{액션}.php     ← 테마+스킨 조합
④ themes/{테마}/board/{액션}.php            ← 테마 기본 스킨
⑤ themes/default/board/{스킨}/{액션}.php   ← default 테마+스킨
⑥ themes/default/board/{액션}.php          ← 최종 폴백 (항상 존재)


스킨 개발 — skin.json 구조

// boards/skins/my-skin/skin.json
{
    "name":        "My 스킨",
    "version":     "1.0.0",
    "author":      "개발자 이름",
    "description": "스킨 설명",
    "actions": ["list", "view", "write", "inventory"],  // 지원하는 액션
    "config": {                                             // 관리자 설정 가능 값
        "per_page":    "20",
        "date_format": "Y-m-d"
    }
}


커스텀 액션 (표준 URL 외 확장)

  • 표준 액션: list / view / write / edit / delete / reply / search
  • 커스텀 액션 파일 위치: boards/skins/{스킨}/actions/{액션}.php
  • URL 예시: /게시판키/inventory → boards/skins/erp/actions/inventory.php
  • 커스텀 액션에서도 $board, $auth, $db 변수가 자동 주입됩니다



 

댓글0

로그인 후 댓글을 작성할 수 있습니다.
메뉴얼 119
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 3.8 Extend 구조 코어 수정 없이 CMS를 확장하는 방법 2026.05.02 8. 플러그인 플러그인 DX마켓 등록 2026.05.01 8. 플러그인 플러그인 제작 2026.05.01