그누보드 게시판 목록 및 전체 최신글에 에디터 이미지 첨부 아이콘 표시하기
페이지 정보

본문
게시판 목록과 전체 최신글 페이지에서 에디터로 첨부한 이미지가 포함된 글을 시각적으로 구분할 수 있도록 아이콘을 추가하는 방법을 안내합니다.
게시판 목록 및 전체 최신글 에디터 이미지 아이콘 출력 방법
에디터로 삽입된 이미지가 포함된 게시글을 게시판 목록과 전체 최신글 페이지에서 시각적으로 구분하기 위해 get_editor_image 함수를 활용하여 아이콘을 출력할 수 있습니다. 이 방법은 에디터 본문 내 이미지 태그를 분석하므로, 일반 첨부파일로 등록한 이미지와는 별개로 동작합니다.
1. 게시판 목록(list.skin.php) 수정
게시판 스킨 폴더 내 list.skin.php 파일을 수정하여 목록 반복문 내에 아이콘 변수를 할당합니다.
- 코드 추가:
for ($i=0; $i<count($list); $i++) {코드 바로 아래에 다음 로직을 추가합니다.// 에디터 이미지 아이콘 $list[$i]['icon_pic'] = ''; if (count(get_editor_image($list[$i]['wr_content'])[1]) > 0) { $list[$i]['icon_pic'] = '<img src="'.$board_skin_url.'/img/icon_pic.gif">'; } - 출력 위치 설정: 목록의 제목 옆 등 원하는 위치에 아래 코드를 추가합니다.
if (isset($list[$i]['icon_pic'])) echo rtrim($list[$i]['icon_pic']); - 아이콘 준비: 게시판 스킨 폴더 내
img폴더에icon_pic.gif파일을 업로드합니다.
2. 전체 최신글(new.php) 페이지 수정
전체 최신글 페이지는 bbs/new.php와 스킨 파일을 함께 수정해야 합니다.
- bbs/new.php 수정: 아이콘 출력 로직이 포함된 영역을 찾아 아래 코드를 추가합니다.
$list[$i]['icon_pic'] = ''; if (count(get_editor_image($row2['wr_content'])[1]) > 0) { $list[$i]['icon_pic'] = '<img src="'.$new_skin_url.'/img/icon_pic.gif" alt="이미지">'; } - new.skin.php 수정: 스킨 파일 내 원하는 위치에 아이콘 출력 코드를 추가합니다.
if (isset($list[$i]['icon_pic'])) echo " ". $list[$i]['icon_pic']; - 아이콘 준비:
skin/new/basic/img/폴더에icon_pic.gif파일을 업로드합니다.
주의사항: 수정 전 반드시 해당 파일(
list.skin.php,new.skin.php,bbs/new.php)을 백업하십시오. 이 기능은 에디터로 삽입된 이미지만 감지하며, 일반 첨부파일로 등록된 이미지는 체크하지 않습니다.
전체 최신글(new.php) 페이지의 수정 절차는 Q1에서 설명한 게시판 목록 수정 방식과 유사합니다. bbs/new.php 파일 내 데이터 처리 로직에 아이콘 변수를 할당하고, new.skin.php 파일에서 이를 출력하도록 설정하십시오.
- bbs/new.php 수정: 아이콘 출력 로직 영역에 아래 코드를 추가합니다.
$list[$i]['icon_pic'] = '';
if (count(get_editor_image($row2['wr_content'])[1]) > 0) {
$list[$i]['icon_pic'] = '<img src="'.$new_skin_url.'/img/icon_pic.gif" alt="이미지">';
}
- 아이콘 준비 및 출력:
skin/new/basic/img/폴더에icon_pic.gif를 업로드한 후,new.skin.php의 원하는 위치에 아래 코드를 추가합니다.
if (isset($list[$i]['icon_pic'])) echo " ". $list[$i]['icon_pic'];
주의사항
- 본 방법은 에디터(스마트에디터 등)를 통해 본문에 삽입된 이미지만을 감지합니다. 일반 첨부파일로 등록한 이미지는 체크하지 않으므로 주의가 필요합니다.
get_editor_image()함수는 그누보드 내장 함수로, 본문 내용에서<img>태그를 추출하여 이미지 포함 여부를 판단합니다.
에디터 이미지 첨부 아이콘 표시 기능의 적용 범위
본 기능은 에디터(스마트에디터 등)를 사용하여 본문 내에 삽입한 이미지를 감지하여 아이콘을 출력하는 방식입니다. 따라서 일반 첨부파일(파일 첨부 기능을 통해 업로드한 파일)로 등록한 이미지는 이 방법으로 체크되지 않습니다.
기능의 차이점
- 에디터 이미지:
get_editor_image()함수를 사용하여 게시글 본문(wr_content) 내에 포함된<img>태그를 분석합니다. 본문에 직접 삽입된 이미지만을 대상으로 하므로, 첨부파일 목록에만 존재하는 이미지는 감지하지 않습니다. - 일반 첨부파일: 그누보드의 기본 파일 첨부 기능을 사용하면 게시판 목록에서 별도의 첨부파일 아이콘(디스켓 모양 등)이 자동으로 표시되거나,
wr_file값을 통해 파일 존재 여부를 확인합니다. 본 팁에서 다루는get_editor_image방식과는 동작 원리가 다릅니다.
참고 사항
- 에디터로 이미지를 첨부하더라도 본문 내용에 포함되지 않는 방식(일부 특수 플러그인 등)으로 등록될 경우 아이콘이 출력되지 않을 수 있습니다.
- 일반 첨부파일과 에디터 이미지를 모두 목록에서 구분하여 표시하고 싶다면, 기존의 첨부파일 확인 로직(
$list[$i]['file']['count']등)과 본 팁의 에디터 이미지 확인 로직을 각각 구현하여 병행해야 합니다.
상황별 적용 가이드
| 내 상황 | 우선할 판단 | 다음 행동 |
|---|---|---|
| 게시판 목록에 에디터 이미지 아이콘 표시 | get_editor_image 함수로 본문 내 이미지 태그 존재 여부 확인 | list.skin.php 반복문 내에 아이콘 변수 할당 및 출력 코드 추가 |
| 전체 최신글(new.php)에 아이콘 표시 | bbs/new.php에서 데이터 처리 로직 추가 | bbs/new.php 수정 후 new.skin.php에 출력 코드 추가 |
| 아이콘이 화면에 나타나지 않음 | 스킨 폴더 내 img 디렉토리 및 파일 존재 여부 확인 | icon_pic.gif 파일이 지정된 경로에 있는지 확인 및 경로 재설정 |
실전 FAQ
Q. 일반 첨부파일로 올린 이미지도 아이콘으로 표시되나요?
본 가이드에서 사용하는 get_editor_image() 함수는 에디터(스마트에디터 등)를 통해 본문에 직접 삽입된 <img> 태그만을 감지합니다. 일반 첨부파일로 등록된 이미지는 이 함수로 체크되지 않으며, 별도의 첨부파일 확인 로직($list[$i]['file']['count'] 등)을 병행해야 합니다.
Q. 아이콘이 출력되지 않는데 무엇을 확인해야 하나요?
먼저 bbs/new.php 또는 list.skin.php에 아이콘 출력 로직이 정확히 삽입되었는지 확인하십시오. 또한, 스킨 폴더 내 img 폴더에 icon_pic.gif 파일이 실제로 존재하는지, 파일 경로가 올바른지 점검해야 합니다.
Q. 특정 테마를 사용 중인데 스킨 경로가 다릅니다.
테마를 사용하는 경우 new.skin.php의 위치가 theme/테마명/skin/new/basic/ 등과 같이 다를 수 있습니다. 현재 적용 중인 테마 폴더 구조를 확인하여 해당 경로에 맞게 파일을 수정하십시오.
함께 보면 좋은 글
- 그누보드5 모바일 작성글 게시판 목록 아이콘 표시 방법
- 그누보드 게시판 목록에서 회원 아이콘 제거하고 이름만 표시하기
- 그누보드 게시판 목록에서 첨부파일 이미지 여부에 따른 아이콘 구분 출력하기
참고자료
기타 참고자료
- 이전글그누보드 반응형 게시판 이미지맵(Image Map) 링크 어긋남 해결 26.10.28
- 다음글그누보드 뷰 페이지 스크랩 상태 표시 방법 26.10.28
댓글목록
등록된 댓글이 없습니다.