회원가입 | 고객센터 |
DESIGNONEX DXCMS BOARD
로그인
DESIGNONEX
디자인원엑스
About
Service
Q&A
PR리그
자유게시판
갤러리
포인트게임
공지사항
로그인 회원가입
고객센터
3.2 폴더 구조

themes/ — 테마 시스템

A Administrator
2026.04.21 00:43(수정됨) 23 0

themes/ — 테마 시스템

사이트 프론트엔드의 모든 HTML•CSS를 담당합니다. 현재 default 테마가 포함되어 있으며, 추가 테마를 이 폴더에 배치하면 관리자에서 선택할 수 있습니다.
 
themes/
└── default/                   ← 기본 테마 (항상 존재, 폴백 기준)
    ├── theme.json             ← 테마 메타 정보 (이름•버전•설명)
    ├── style.css              ← 전역 스타일 (CSS 커스텀 프로퍼티 기반)
    ├── layout/               ← 페이지 레이아웃 템플릿
    │   └── main.php          ← 헤더+본문+푸터 통합 레이아웃
    ├── board/                ← 게시판 스킨 오버라이드
    │   ├── list.php          ← 게시판 목록 (기본 스킨)
    │   ├── view.php          ← 게시글 상세
    │   ├── write.php         ← 게시글 작성•수정 폼
    │   └── _list_rows.php    ← 목록 행 파셜 (AJAX 갱신용)
    ├── board_latest/         ← 최신글 위젯 스킨 3종
    │   ├── list.php          ← 제목+날짜 리스트형
    │   ├── card.php          ← 썸네일+제목+발췌 카드형
    │   └── simple.php        ← 제목만 초경량형
    ├── page/                 ← 특수 페이지 템플릿
    │   ├── home.php          ← 홈 페이지 (선택, 없으면 pages/home.php 폴백)
    │   ├── 404.php           ← 404 오류 페이지
    │   └── 403.php           ← 403 접근 거부 페이지
    ├── parts/                ← 재사용 파셜 컴포넌트
    │   └── pagination.php    ← 페이지네이션 UI
    ├── search/               ← 검색 결과 페이지
    │   └── list.php
    └── icons/                ← 테마 전용 아이콘 파일


테마 폴백 체인

커스텀 테마에 파일이 없으면 자동으로 default 테마 파일을 사용합니다. 커스텀 테마는 변경이 필요한 파일만 오버라이드하면 됩니다.
 
// DxTheme::resolve('board/list.php') 내부 탐색 순서
// 예: 현재 테마가 'my-theme'
1. themes/my-theme/board/list.php   ← 있으면 즉시 반환
2. themes/default/board/list.php    ← 없으면 여기서 반환
3. 404 처리  


layout/main.php 의 구조

테마의 핵심 파일로, 모든 페이지의 HTML 전체 구조(헤더•내비게이션•본문•푸터)를 렌더링합니다.
 
// main.php 실행 순서 (요약)
① DxSeo::build() — OG/Twitter Card/JSON-LD 자동 생성
② 메뉴 쿼리 (멀티사이트 도메인별 독립 메뉴 지원)
③ <head> 태그 출력 + dx_run_hook('dx_head')
④ 네비게이션 바 출력 (로그인•비로그인 분기)
⑤ $dx_content 출력 (게시판•페이지 등 핸들러가 생성한 본문)
⑥ 푸터 (사이트 설정에서 로드: 회사명•대표자•사업자번호 등)
⑦ dx_run_hook('dx_body_bottom') — 팝업•GA•소켓 등


board_latest/ — 최신글 위젯

테마 레이아웃이나 홈 페이지에서 최신 게시글을 보여주는 위젯 스킨입니다.
 
// 사용 예 (테마 파일 내부)
<?php echo dx_board_latest('free', 5, 'card'); ?>
// 파라미터: board_key, 개수, 스킨명 (list | card | simple)
// 자동으로 themes/default/board_latest/card.php 를 렌더링

댓글0

로그인 후 댓글을 작성할 수 있습니다.
번호 제목 작성자 날짜 조회
11
Administrator
04.21 18
3.2 폴더 구조
install/ — 설치 및 마이그레이션
Administrator 04.21 조회 18
10
Administrator
04.21 20
3.2 폴더 구조
pages/ — 커스텀 페이지
Administrator 04.21 조회 20
9
Administrator
04.21 22
3.2 폴더 구조
data/ — 런타임 데이터
Administrator 04.21 조회 22
8
Administrator
04.21 18
3.2 폴더 구조
extend/ — 코드 자동 삽입
Administrator 04.21 조회 18
7
Administrator
04.21 21
3.2 폴더 구조
routes/ + controllers/ — 라라벨 스타일 라우팅
Administrator 04.21 조회 21
6
3.2 폴더 구조 assets/ — 정적 자원
Administrator
04.21 23
3.2 폴더 구조
assets/ — 정적 자원
Administrator 04.21 조회 23
5
Administrator
04.21 23
3.2 폴더 구조
plugins/ — 플러그인 시스템
Administrator 04.21 조회 23
Administrator
04.21 23
3.2 폴더 구조
themes/ — 테마 시스템
Administrator 04.21 조회 23
3
Administrator
04.21 23
3.2 폴더 구조
boards/ — 게시판 시스템
Administrator 04.21 조회 23
2
Administrator
04.21 22
3.2 폴더 구조
admin/ — 관리자 패널
Administrator 04.21 조회 22
1
3.2 폴더 구조 core/ — CMS 엔진
Administrator
04.21 24
3.2 폴더 구조
core/ — CMS 엔진
Administrator 04.21 조회 24
25
전체 회원
195
전체 게시글
81
전체 댓글
148
오늘 방문
4,124
전체 방문
1
현재 접속
인기글 7일 이내
최신글
최신댓글
목록 글쓰기