BOARD

팁·활용

그누보드 게시판 목록에서 첨부파일 이미지 여부에 따른 아이콘 구분 출력하기

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 7회 작성일 26-10-10 17:52

본문

그누보드 게시판 목록에서 첨부파일 이미지 여부에 따른 아이콘 구분 출력하기

그누보드 게시판 목록에서 일반 첨부파일과 이미지 첨부파일을 시각적으로 구분하여 이미지 전용 아이콘으로 출력하는 방법을 알아봅니다. 운영자와 개발자가 게시판 스킨 코드를 수정하여 목록의 시인성을 높이는 데 도움을 줍니다.

게시판 목록에서 첨부파일 이미지 여부에 따른 아이콘 구분 출력하기

게시판 목록에서 첨부파일이 이미지 파일일 경우 일반 파일 아이콘 대신 이미지 전용 아이콘으로 구분하여 출력하려면, 관리자 설정 확인 후 스킨 파일을 수정해야 합니다.

1. 필수 설정 확인

관리자 페이지의 해당 게시판 설정에서 '목록에서 파일 사용' 체크박스를 반드시 체크해야 합니다. 이 설정이 활성화되어야 첨부파일 정보를 목록에서 불러올 수 있습니다.

2. list.skin.php 수정

기본 목록 스킨은 파일 확장자를 체크하여 아이콘을 분기하는 로직을 포함하지 않으므로, 스킨 코드를 직접 수정해야 합니다. 자세한 코드 적용 방법은 아래 Q2를 참고하십시오.

게시판 목록에서 첨부파일 이미지 아이콘 구분 출력하기

list.skin.php 파일 내에서 기존 아이콘 출력 코드 바로 윗부분에 아래 로직을 추가하여 첫 번째 첨부파일이 이미지일 경우 아이콘을 교체합니다.

if ($board['bo_use_list_file'] && $list[$i]['file']['count']) {
 $image = urlencode($list[$i]['file'][0]['file']);
 if (preg_match("/\.({$config['cf_image_extension']})$/i", $image)) {
 $list[$i]['icon_file'] = '<img src="'.$board_skin_url.'/img/icon_img.gif" alt="첨부이미지">';
 }
}

if (isset($list[$i]['icon_new'])) echo $list[$i]['icon_new'];
if (isset($list[$i]['icon_hot'])) echo $list[$i]['icon_hot'];
if (isset($list[$i]['icon_file'])) echo $list[$i]['icon_file'];
  • 참고: icon_img.gif 파일이 해당 스킨의 img 폴더에 실제로 존재하는지 확인하십시오.

스마트에디터 본문 삽입 이미지도 목록 아이콘으로 표시되나요?

아니오, 위에서 안내한 방법은 게시판의 '파일 첨부' 기능을 통해 업로드된 파일을 기준으로 합니다. 스마트에디터(DHTML 에디터)를 통해 본문에 직접 삽입한 이미지는 파일 첨부 목록($list[$i]['file'])에 포함되지 않으므로, 이 방식으로는 아이콘이 자동으로 변경되지 않습니다. 에디터 삽입 이미지에 대한 처리는 별도의 커스텀 로직이 필요합니다.

상황별 판단 및 대응 가이드

내 상황우선할 판단다음 행동
첨부파일이 이미지인데도 목록에 일반 파일 아이콘(디스켓 모양 등)으로 표시됨게시판 관리자 설정에서 첨부파일 연동 여부 확인관리자 페이지의 해당 게시판 설정에서 '목록에서 파일 사용' 체크박스가 활성화되어 있는지 우선 확인합니다.
설정은 켜져 있으나 여전히 일반 아이콘으로만 나오는 경우기본 스킨의 아이콘 출력 로직 한계 인지 및 코드 수정스킨 디렉토리 내의 list.skin.php 파일을 열어 첫 번째 첨부파일 확장자를 판별하고 icon_file 값을 오버라이드하는 스니펫을 추가합니다.
코드를 추가했으나 아이콘 이미지가 깨지거나 나오지 않는 경우스킨 내 이미지 파일 존재 여부 점검icon_img.gif 등 지정한 이미지 전용 아이콘 파일이 해당 스킨의 img 폴더 경로에 실제로 업로드되어 있는지 확인합니다.

실전 FAQ

Q. 에디터(SmartEditor 등) 본문 안에 삽입한 이미지도 이 방식으로 목록 아이콘이 변경되나요?

대안 및 예외: 아니오, 이 가이드의 방법은 파일 첨부 기능(bo_use_list_file)을 기준으로 첫 번째 첨부파일의 확장자를 확인합니다. 에디터 내부의 이미지 삽입 여부는 별도로 체크하지 않으므로 에디터 전용 처리 팁이나 추가 코드를 참고해야 합니다.

Q. 첫 번째 첨부파일이 일반 문서(PDF 등)이고 두 번째 첨부파일이 이미지이면 아이콘이 바뀌지 않나요?

예외 및 막히는 지점: 제시된 기본 스킨 수정 스니펫은 첫 번째 파일첨부란($list[$i]['file'][0])만을 타겟으로 검사합니다. 만약 첫 번째 파일이 이미지가 아닐 경우 아이콘이 교체되지 않으며, 모든 첨부파일을 순회하려면 반복문 등을 활용해 로직을 확장해야 합니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.