답사기(멀티갤러리) 슬라이드에서의 썸네일 문제 > 그누3 팁자료실

그누3 팁자료실

답사기(멀티갤러리) 슬라이드에서의 썸네일 문제 정보

그누호환 답사기(멀티갤러리) 슬라이드에서의 썸네일 문제

본문

스킨 자료실에 등록되어 있는 관리자님(Admin)의 멀티 갤러리(답사기) 게시판과 관련하여
이를 슬라이드 쇼에 적응시킬 때의 문제점이,
data/file/$bo_table 디렉토리에
썸네일 이미지 화일과 원화일
이렇게 두 장의
사이즈만 다르고 그림 내용은 같은 사진이 존재함으로써,
슬라이드 쇼를 실행시 같은 그림이(물론 사이즈는 틀린)
두 번 나타나는 문제가 있다고 까만도둑님께서 말씀하셧습니다.

해서, 까만도둑님께서는 이에 대한 해결책으로
dapsagi_2 스킨을 공개하시면서,
사진 업로드시 생성되는 썸네일 화일은 data/file/적용게시판/thum/ 디렉토리에
저장을 함으로써 해결하셨습니다.

그리고, 멀티 갤러리 원본에서 이 문제가 해결 가능해지기를 바라셨는데,
(이상의 부분에 대해서는 링크 참조하세요)

멀티 갤러리에서 썸네일 저장 경로를 굳이 건드리지 않고,
슬라이드 쇼 관련 화일에서 preg_match 조건을 바꿈으로써
간편하게 해결할 수가 있기에
팁 같지 않은 팁을 적어 봅니다.

다른 분들은 이미 알고 계신 것을 뒷 북치는 것은 아닌지 모르겠습니다만,

slide.php(7쟁이님 홈 등에 공개되어 있는 화일) 화일을 열어 보시면,
자바스크립트가 쭉 나오다가 중간 정도 부분에 아래와 같은 코드가 있습니다.
여기서 아래에 표시한 방법으로 preg_match를 조정하시면 될 것 같습니다.

<? $total=1;
    $a=0;
$od = opendir($dir);

while($file = readdir($od)) {
if(!preg_match("/.jpg/i",$file)) continue; //==> 이부분을 아래의 '수정'과 같이 수정
$a++;
$photo[$a] = $file;
$s=getimagesize("$dir/$photo[$a]");
if($s[0]>200){
$photo_urls[$total] = $file;
$total++;
 }
}
closedir($od);

수정:
if((!preg_match("/.jpg/i",$file)) || (preg_match("/_s.jpg/i",$file))) continue;

위위 수정과 같이 바꾸어 주면...
일단, 확장자가 jpg가 아닌 것 그리고 화일명 끝에 _s가 붙은 화일은 걸러내고,
원본만을 대상으로 슬라이드 쇼를 진행하게 됩니다.

관리자님의 멀티 갤러리나, 까만도둑님의 수정판이나 모두
게시판에 나타날 작은 크기의 사진(썸네일) 이름의 긑에 _s를 붙이고,
그누에서 저장되는 파일들은 사용자들의 PC에 가지고 있는 이름이 아니라...
숫자로 표현되기에 복잡한 정규 표현식이 아니라,
위와 같이 조건을 두개로 만들어 주면...
해결이 되는 것 같습니다.

혹, 도움이 되기를 바라며...
적었습니다.
추천
0
  • 복사

댓글 전체

위와는 다른 방법도 있습니다.
지금 관리자님의 멀티 갤러리를 보면 게시판에 디스플레이될 사진(썸네일)의 가로크기가 260,
까만도둑님의 답사기 2 스킨에는 썸네일의 기본크기가 240인가로 되어 있는데...
썸네일의 사진 크기가 일정할 경우
위의 preg_match 조건문은 원 코드를 그대로 두고(수정하지 않고)
if(!preg_match("/.jpg/i",$file)) continue; 
$a++;
$photo[$a] = $file;
$s=getimagesize("$dir/$photo[$a]");
if($s[0]>200){  // ==> 여기를 수정하여 if($s[0]>260) { 으로 하시던지 if($s[0]>240) { 이렇게 바꾸시면 됩니다.
$photo_urls[$total] = $file;
$total++;
 }

이 두 번째 방법의 문제(물론 원본 코드도 그런 문제를 않고 있긴 합니다만,
원본 슬라이드 코드 역시 썸네일을 슬라이드에서 제외시키고자 하는 목적을 포함하고 있습니다)는
사용자가 게시판에 등록하는 사진의 크기가 기본적으로 240이나 260 보다는 커야 한다는 점입니다.

하지만, 통상 디카로 찍어 올리거나 할 경우 이 사이즈보다는 커기에 실제 문제가 되지는 않으리라 보입니다.
© SIRSOFT
현재 페이지 제일 처음으로