외부 URL 이미지를 굳이 서버로 복사해 와서 썸네일로 만들어 리스트에 보여주는 스킨입니다.
그누보드5 기본 gallery 스킨에서 썸네일 부분만 일부 수정했습니다.
첨부파일로 업로드한 이미지, 본문에 업로드 해서 넣은 이미지가 없는 경우 본문 작성시 다른 사이트의 이미지를 복사해서 붙여넣은 경우 리스트 페이지에서 해당 이미지를 서버로 복사해 오고 그 복사한 이미지를 썸네일로 만듭니다.
그누보드의 썸네일 함수를 이용했습니다.
gallery 스킨의 원래 코드
[code]
<?php } else {
$thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height'], false, true);
if($thumb['src']) {
$img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" >';
} else {
$img_content = '<span class="no_image">no image</span>';
}
echo $img_content;
}
?>
[/code]
수정된 코드
[code]
<?php } else {
$thumb = get_list_thumbnail($board['bo_table'], $list[$i]['wr_id'], $board['bo_gallery_width'], $board['bo_gallery_height'], false, true);
if($thumb['src']) {
$img_content = '<img src="'.$thumb['src'].'" alt="'.$thumb['alt'].'" >';
// 외부 이미지 썸네일 만들기 {
} else if($url_img = get_editor_image($list[$i]['wr_content'])){
$img_src = $url_img[1][0];
preg_match("/src=[\'\"]?([^>\'\"]+[^>\'\"]+)/i", $img_src, $m);
$src = htmlspecialchars_decode($m[1]);
preg_match("/alt=[\"\']?([^\"\']*)[\"\']?/", $img_src, $m);
$alt = get_text($m[1]);
$filename = hash("sha256", $src);
$source_path = $target_path = G5_DATA_PATH.'/file/'.$board['bo_table'];
$file_download = $target_path."/".$filename;
if (!file_exists($file_download)) {
copy($src, $file_download);
}
$thumb_src = thumbnail($filename, $source_path, $target_path, $board['bo_gallery_width'], $board['bo_gallery_height'], false, true);
$img_content = '<img src="'.G5_DATA_URL.'/file/'.$board['bo_table'].'/'.$thumb_src.'" alt="'.$alt.'" >';
// } 외부 이미지 썸네일 만들기
} else {
$img_content = '<span class="no_image">no image</span>';
}
echo $img_content;
}
?>
[/code]
댓글 21개
썸네일만 복사해서 용량이 절약되겠네요
감사합니다
게시판에서는 되는데.. 최근글에서 뽑아 올려고 하니 잘 안되서요
이제 제 소원을 말해도 될까요?
[http://sir.kr/data/editor/1904/afa9ca6a07a52b658620cea9b468018e_1554128964_6713.JPG]
그런데 이스킨 이용시 별로도 세팅하거나 수정해야 하는부분 있나요?
두곳의 호스팅에 게시판 스킨 올려서 외부 이미지 복사해서 붙여 넣어봤지만 썸네일이 생성이 안되서요.
참고로 퍼온곳의 이미지는 외부이미지 차단 되어 있지 않은 곳입니다.
[code]
copy($src, $file_download);
[/code]
이 부분을 적절히 변경해 보셔야 할 것 같습니다.
https://unikys.tistory.com/345
게시판 목록
그누보드5 스킨
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 2708 | 레이아웃 | 3주 전 | 35 | ||
| 2707 | 최신글 |
GNUXNS
|
2개월 전 | 199 | |
| 2706 | 최신글 |
GNUXNS
|
2개월 전 | 340 | |
| 2705 | 최신글 |
GNUXNS
|
2개월 전 | 258 | |
| 2704 | 최신글 | 2개월 전 | 257 | ||
| 2703 | 레이아웃 |
비버팩토리
|
2개월 전 | 814 | |
| 2702 | 게시판 | 2개월 전 | 498 | ||
| 2701 | 게시판 |
|
2개월 전 | 329 | |
| 2700 | 최신글 | 2개월 전 | 353 | ||
| 2699 | 최신글 | 2개월 전 | 586 | ||
| 2698 | 게시판 | 2개월 전 | 449 | ||
| 2697 | 최신글 | 3개월 전 | 575 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기