05. 게시판 스킨¶
게시판 모듈의 외관과 기능을 커스터마이징하는 방법을 학습합니다.
📋 이 섹션에서 다루는 내용¶
구조 이해¶
기본 기능¶
- 리스트 템플릿 - 목록 페이지 구현
- 글보기 템플릿 - 상세보기 페이지 구현
- 게시판 만들기 기초 - 게시판 생성과 설정
고급 기능¶
- AJAX 댓글 시스템 - 페이지 이동 없는 댓글 처리
- 리스트 고급 기능 - IP 출력, 프로필 이미지, 첨부파일 아이콘 등
- 글 관리 기능 - 비밀글 전환, 일괄 처리 등
- 갤러리형 게시판 - 이미지 중심 게시판 구현
- 카테고리 관리 - 카테고리 시스템 활용
- 확장변수 활용 - 커스텀 필드 구현
- 스케치북 스킨 분석 - 인기 스킨 구조 분석
실전 예제¶
- 게시판 info.xml - 게시판 정보 파일 작성
- 커스텀 갤러리 - 갤러리형 게시판 실습
- FAQ 게시판 - FAQ형 게시판 구현
🎯 학습 목표¶
이 섹션을 완료하면 다음을 할 수 있습니다:
- 게시판 스킨의 구조 이해
- 커스텀 게시판 스킨 제작
- 다양한 형태의 게시판 구현
- 확장 변수 활용
📁 게시판 스킨 구조¶
modules/board/skins/my_skin/
├── skin.xml # 스킨 정보
├── list.html # 목록 페이지
├── write_form.html # 글쓰기 폼
├── view_document.html # 글 보기
├── comment_form.html # 댓글 폼
├── _comment.html # 댓글 목록
├── _header.html # 공통 헤더
├── _footer.html # 공통 푸터
└── assets/
├── css/
├── js/
└── img/
💡 주요 변수¶
list.html¶
$document_list // 문서 목록
$notice_list // 공지사항 목록
$total_count // 전체 글 수
$total_page // 전체 페이지 수
$page // 현재 페이지
$page_navigation // 페이지 네비게이션
write_form.html¶
$oDocument // 문서 객체 (수정시)
$category_list // 카테고리 목록
$extra_vars // 확장 변수
댓글 관련¶
$oDocument->getComments() // 댓글 목록
$oComment // 댓글 객체
$grant->write_comment // 댓글 작성 권한
🔧 커스터마이징 예제¶
리스트 아이템 커스터마이징¶
<tr loop="$document_list=>$no,$document">
<td>{$no}</td>
<td class="title">
<a href="{getUrl('document_srl',$document->document_srl)}">
{$document->getTitle()}
<span class="comment-count" cond="$document->getCommentCount()">
[{$document->getCommentCount()}]
</span>
</a>
</td>
<td>{$document->getNickName()}</td>
<td>{$document->getRegdate('Y.m.d')}</td>
<td>{$document->get('readed_count')}</td>
</tr>
다음 단계¶
게시판 스킨의 기본을 익혔다면 더 고급 기능인 위젯 제작 방법을 학습하세요.