그누보드5 최신글 스킨 목록형 가로 두 줄 레이아웃 구조 제작 방법
페이지 정보

본문
그누보드5 최신글 스킨 목록형 가로 두 줄 레이아웃 구조 제작 방법
그누보드5에서 테이블 태그와 for문 조건식을 활용하여 최신글 목록을 가로 두 줄 레이아웃으로 제작하는 구체적인 코드와 방법을 안내합니다.
그누보드5 최신글 스킨 가로 두 줄 레이아웃 구조
그누보드5에서 최신글 스킨을 목록형 가로 두 줄 구조로 제작하려면 테이블(<table>) 태그와 PHP 반복문(for) 안에서 행 분기 조건($i%2 == 0)을 조합하는 구조를 사용해야 합니다.
1. 스킨 설정 파일 구성
최신글 스킨 폴더 내의 latest.skin.php 파일에 아래와 같은 구조를 적용합니다.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
// 스타일시트 파일 연결
add_stylesheet('<link rel="stylesheet" href="'.$latest_skin_url.'/style.css">', 0);
?>
<table width="680" border="0" cellspacing="0" cellpadding="0">
<tr>
<td colspan="2" height="30">
<a href="<?php echo G5_BBS_URL?>/board.php?bo_table=<?php echo $bo_table?>"><strong><?php echo $bo_subject;?></strong></a>
</td>
</tr>
<tr>
<?php for ($i=0; $i<count($list); $i++) {
if ($i>0 && $i%2 == 0) echo "</tr><tr>";
?>
<td width="50%" height="25">
<?php
echo "<a href=\"".$list[$i]['href']."\">";
if ($list[$i]['is_notice']) echo "<strong>".$list[$i]['subject']."</strong>";
else echo $list[$i]['subject'];
if ($list[$i]['comment_cnt']) echo $list[$i]['comment_cnt'];
echo "</a>";
if (isset($list[$i]['icon_new'])) echo " ". $list[$i]['icon_new'];
?>
</td>
<?php }?>
<?php if (count($list) == 0) { // 게시물이 없을 때?>
<tr><td colspan="2" height="50">등록된 게시물이 없습니다.</td></tr>
<?php }?>
</tr>
</table>
2. 핵심 레이아웃 제어 원리
- 테이블 구조 활용: 전체 레이아웃을 감싸는
<table>태그 안에 최신글 항목들을<td>셀로 나열합니다. - 행 분기 조건(
$i%2 == 0):for반복문 내부에서 첫 번째 항목이 아니고 인덱스 번호가 2로 나누어떨어질 때($i > 0 && $i % 2 == 0), 기존 행을 닫고 새로운 행을 여는 태그(</tr><tr>)를 출력하여 가로 두 줄(2열) 형태로 배치가 바뀌도록 제어합니다.
그누보드5 최신글 스킨 가로 두 줄 구조 제작 및 행 분기 조건식 작성 방법
그누보드5 환경에서 최신글 스킨(latest.skin.php)을 목록형 가로 두 줄 구조로 제작하려면 테이블 태그를 활용한 레이아웃 구성과 함께 for 반복문 내부에서 행 분기 조건식을 작성해야 합니다.
1. 테이블 레이아웃 구조 구성
스킨 파일 내에서 전체 목록을 감싸는 table 태그를 배치하고, 내부의 반복문 안에서 각 항목을 td 태그로 출력합니다.
2. for 반복문 내 행 분기 조건식 작성
2개 항목마다 행을 바꾸기 위해 for 반복문 안쪽에 다음 조건식을 추가합니다.
if ($i > 0 && $i % 2 == 0) echo "</tr><tr>";
- 조건 설명: 반복 회차를 나타내는 변수
$i가0보다 크고($i > 0),$i를2로 나눈 나머지가0일 때($i % 2 == 0) 기존</tr>로 행을 닫고 새로운<tr>을 열어 줄 바꿈을 제어합니다.
그누보드5 최신글 스킨 세 줄 및 다단 나열 수정 방법
그누보드5 최신글 스킨에서 가로 두 줄 구조를 세 줄이나 다른 개수로 변경하려면, 반복문(for) 내에서 행을 바꿀 때 기준이 되는 숫자 조건과 최신글 추출 함수의 인자 값을 함께 수정해야 합니다.
1. 관련 코드 수정 위치 및 방법
- 기존 가로 두 줄 예제에서는 2개 항목마다 행을 바꾸기 위해
if ($i>0 && $i%2 == 0) echo "</tr><tr>";조건을 사용합니다. - 세 줄이나 다른 개수로 나열하려면
%2부분을 원하는 열 개수(예: 3개씩 나열하려면%3)로 변경합니다. - 예시 코드 수정:
if ($i>0 && $i%3 == 0) echo "</tr><tr>";
2. 최신글 추출 함수 호출부 개수 수정
- 스킨 파일 내부의 조건 수정과 함께, 최신글을 출력하는
latest함수의 전체 추출 개수도 변경한 열 개수의 배수 또는 맞춤 개수로 수정해야 정상적으로 정렬됩니다. - 예를 들어 3개씩 나열하려면 가로 갯수를 나타내는 값을 3으로 수정하고 최신글 추출 부분에서 추출 개수를 6개 등으로 설정합니다.
<?php echo latest("스킨명", "게시판아이디", 추출개수, 제목길이);?>
3. 다음 행동 및 주의사항
- 코드를 수정한 뒤에는 최신글 스킨의 CSS(
style.css) 파일에서 항목의 가로 너비나 스타일을 테이블 또는 목록 규격에 맞게 함께 조절해야 레이아웃이 깨지지 않습니다.
상황별 가이드
- 내 상황: 그누보드5 최신글 스킨을 가로 두 줄 구조로 배치하여 출력하려는 운영자
- 선택 기준:
<table>태그 기반 레이아웃과 PHP 반복문 내 행 분기 조건식($i%2 == 0) 조합 활용 - 다음 행동:
latest.skin.php파일에 예제 코드를 적용하고, 스킨의style.css에서width값을 조절하여 레이아웃 정렬 상태 확인
실전 FAQ
Q. 세 개씩 세 줄 이상으로 나열하려면 코드를 어떻게 수정해야 하나요?
- 실행 및 예외: 가로 나열 개수를 변경하려면
for반복문 안의 행 분기 조건인$i%2 == 0을 원하는 열 개수에 맞춰 변경(예: 3개씩 나열하려면$i%3 == 0)해야 합니다. 이와 함께 최신글 추출 함수(latest)의 전체 추출 개수와 CSS 스타일의width값을 함께 수정해야 레이아웃이 깨지지 않습니다.
함께 보면 좋은 글
- 그누보드 로그인 페이지 소셜 로그인 버튼 가로 100% 레이아웃 수정 방법
- 그누보드4 게시판 목록 스킨(list.skin.php) 구조 분석 및 본문 출력 커스터마이징
- 그누보드5 게시판 상세 보기 스킨(view.skin.php) 구조 및 주요 코드 분석
참고자료
기타 참고자료
- 이전글그누보드5 최신글 스킨 분류명(카테고리) 이미지 출력 커스터마이징 방법 26.09.26
- 다음글그누보드5 회원가입 스킨에 여분 필드(mb1~mb5) 추가 기초 가이드 26.09.26
댓글목록
등록된 댓글이 없습니다.