[테마제작기(19記)] 게시판 그룹 페이지 개발 정보
기타 [테마제작기(19記)] 게시판 그룹 페이지 개발관련링크
본문
원문(출처) : 그누보드 테마 제작 19 - 게시판 그룹 페이지 개발
==> 개발한 소스의 내용을 더 볼 수 있고, 가끔은 다른 이야기도 있어요~
드디어 게시판 작업에 진입하였네요.
짝짝짝~ (자축의 박수~)
게시판, 그 중에서도 오늘은 게시판 그룹 페이지를 만들어봅니다.
먼저 그누 기본 테마 화면을 살펴보고,
현재 제작중인 테마의 모습을 살펴볼게요.
아주 심플하고 간결한 UI네요~
그리고 현재 작업 전이라 이상한 모습의 게시판 그룹 페이지!
저 망가진 화면을 예쁜 화면으로 바꾸는게 오늘의 일인거죠~
웹에서 호출되는 페이지인 "/bbs/group.php" 분석부터 들어가봅니다.
제작중인 테마 페이지의 group.php를 다시 살펴보러 갑니다.
페이지의 소스는 아주 심플합니다.
그냥 그룹에 속한 게시판을 모두 검색하여,
latest 함수를 호출하여 화면에 출력하는 구조입니다.
메인 페이지 작업과 거의 유사한 구조에요. 즉 한 번 해본 일이라는거죠 ^^;
저 위에 빨간 네모안의 latest 함수때문에
예전에는 고생한 기억이 좀 있었습니다.
생각보다 하는 일이 많은 함수더라구요.
(오죽하면 latest.lib.php 파일 안에 latest() 함수가 하나만 있겠어요~
능력이 되니 독방 차지하고 있는거겠죠~)
latest() 함수가 하는 일 (순서대로)
1. SKIN 디렉토리 알아내기
2. 캐싱 사용 여부 확인하여 DB 쿼리 조회 여부 판단
3. 캐싱 존재 여부 확인하여 캐싱과 쿼리 중 판단
4. 그룹에 속한 게시판 조회
5. 각 게시판 별 출력할 리스트 조회
6. 리스트의 각 항목들을 출력하기 좋게 변경
7. 캐싱되지 않은 게시판이라면 캐싱 저장(캐싱 사용 설정일때)
8. 1에서 결정된 SKIN 디렉토리 호출
이렇게 많은 일을 하는 함수인데,
걍 DB 조회해서 편집하는 넘이겠지라고 과소평가했던거죠~
이제는 알았으니, 전처럼 고생하지 않을겁니다. ^^
우선 latest() 함수가 판단한 Skin 경로가 제작중인 테마와 같은지 확인을 합니다.
이 확인 과정을 안하면, 엉뚱한 파일을 고치면서
웹페이지에 반영이 안된다면서 우울해질 수 있습니다.
알아냈으니, 해당 스킨 폴더로 이동하여 다시 살펴보겠습니다.
/theme/mt703/skin/latest/basic/latest.skin.php
살펴보니, 지난 메인 작업때 이미 수정을 해놓은 파일입니다.
그렇다면, 테마의 group.php 파일의 상하단을 감싸는 태그가 문제겠네요.
index.php와 비교하면서 변경하면 바로 끝날 듯 합니다.
잉... 정말 끝났네요...
완료된 화면의 모습입니다.
그냥 작업하면서 따라적다가보니 끝난 느낌이네요~
이제 본격적인 게시판 작업으로 진입하겠네요~
게시판 작업도 그룹 페이지처럼 술술 지나가면 좋겠다고 바래봅니다.
원문(출처) : 그누보드 테마 제작 19 - 게시판 그룹 페이지 개발
==> 개발한 소스의 내용을 더 볼 수 있고, 가끔은 다른 이야기도 있어요~
3