메뉴 건너뛰기

XEDITION

XE 공략

총 3종의 샘플로 테스트 해보았습니다.

http://24.media.tumblr.com/a6e26451c90c25b6fae222c5c0a032d9/tumblr_n76t0oir8H1r5ml59o1_r1_1280.jpg (가로 1280이상)
http://i1.ytimg.com/vi/Gn7jGyb9PIg/maxresdefault.jpg (가로 1280미만)
http://cfile30.uf.tistory.com/image/25487C34529B3750302D77 (외부링크 차단시)

총 3개의 파일로 시험해보았으나 외부링크 차단시에는 섬네일 자체가 생성되지 않는것에 비해, 외부링크가 허용된 위의 두 이미지들에 대해서는 가로 1280px이 넘어갈경우 섬네일이 제대로 생성되지 않는걸 확인했습니다.(1920x720 ratio 기준으로 생성, 240x180 crop 기준으로 생성 총 2개 시험해보았습니다)

[XE Server Environment 2014-06-15]

location : ko
package : XE
host : http://ake.kr/
app : Apache
xe_version : 1.7.5.1
php : 5.2.17
db_type : mysqli
use_rewrite : Y
use_db_session : N
use_ssl : none
phpext : libxml, fileinfo, bcmath, bz2, curl, dba, simplexml, gettext, gmp, iconv, mbstring, mcrypt, mysql, mysqli, odbc, openssl, pdo_sqlite, pdo_mysql, exif, snmp, sockets, sqlite, xml, xmlreader, xmlwriter, zip, zlib, gd, pdf, soap, eaccelerator, zend optimizer
module : adminlogging(1.7), board(1.7.2), imageprocess(1.3.0.3), krzip(1.0), seo(0.1), syndication(3.1.0-beta.2)
addon : adminlogging(1.7), ajaxboard(1.5.6), captcha_member(1.7), fa_loader(1.0), jqueryuicdn(1.0), multimedia_thumbnail(1.0), oembed(1.0)
layout : makekr(), xe_official(1.7), user_layout(1.7)
widget : counter_status(1.7)
widgetstyle : simple(1.7)
max_file_uploads : 20
post_max_size : 50M
memory_limit : 128M

 

@akasima 비슷한 이슈여서 여기 남겨드립니다.

외부 링크를 섬네일 할때 다음과 같은 내용을 지우게 되면 외부링크가 섬네일이 잘생성되는 것을 확인했었습니다.

modules\document\document.item.php
파일에서

843 list($_w, $_h, $_t, $_a) = @getimagesize($tmp_file);
844 if($_w<$width || $_h<$height) continue;

해당 두라인의 소스를 // 주석 처리를 하엿을때 정상적인 구동이 나타나는 것을 확인했습니다.
/당연히 티스토리 경우엔 끝부분에 .jpg .png 의 등등의 파일 확장자가 존재하지 않아 문제가 되었지만요./

한번 참고해서 이슈를 확인해주시기 바랍니다.

 

 779         if(!$this->get('uploaded_count') && !preg_match("!<img!is", $this->get('content'))) return;

documentItem::getThumbnail() 을 하면서 글 내용을 참고 해서 업로드된 파일이 있거나 img 태그가 들어 있으면 썸네일을 가져 오도록 하고 있는데요...

url 로 이미지를 추가 할 경우 리스트에서 썸네일이 뿌려지지 않는 문제가 있습니다.
보고 있는 글에 대해서는 리스트에서 썸네일이 생성 되지만.. url 로 이미지를 추가한 다른 리스트는 썸네일이 표시가 안되는 문제..

 

getimagesize() 를 처리하면서 오류가 발생해서 생가는 문제로 보입니다.
제 테스트 환경에서는 
http://24.media.tumblr.com/a6e26451c90c25b6fae222c5c0a032d9/tumblr_n76t0oir8H1r5ml59o1_r1_1280.jpg (가로 1280이상)
http://i1.ytimg.com/vi/Gn7jGyb9PIg/maxresdefault.jpg (가로 1280미만)

모두 썸네일이 생성 되었습니다.

getimagesize() 앞에 '@' 를 제거하고 
getimagesize() 에서 어떤 오류가 발생하는지 report 주시면 문제 해결에 도움이 될것 같습니다.

 

getimagesize 해당 소스를
list($_w, $_h, $_t, $_a) = getimagesize($tmp_file);
이렇게 넣어서 ( @ 만 삭재함 ) 글을 올렸더니 외부링크의 섬네일을 생성하지 못했습니다.
http://i.imgur.com/O9uk30U.jpg
해당 이미지의 주소이며, 섬네일의 설정은 다음과 같습니다.

(섬네일 가로크기 215 세로크기 1900 ratio )
이렇게 설정한 이유는 어차피 섬네일 가로크기가 215일경우 세로크기는 자동적으로 비율이 맞춰지고,
https://sosifam.com/Data 이러한 형태의 게시판에 사용이 필요로 하여 설정한 상태입니다.

한번 확인해주시기 바랍니다.

 

(841번째줄)
else
{

        $source_file = $tmp_file;
        $is_tmp_file = true;
        break;
}

으로 다시 만들어서 테스트 해보니, 다시 섬네일이 생성되는 군요.

 

그래서
list($_w, $_h, $_t, $_a) = @getimagesize($tmp_file);
이소스보단, 
if($_w<$width || $_h<$height) continue;
이소스가 문제였습니다.

가로값 새로값의 차이를 정상적으로 구동 못하는것 같습니다.
한번 확인 해주세요.

 

저는 PHP Version 5.3.24 인데요 외부이미지 (특히 구글드라이브 사진)을 끌어와서 게시판에 img src=로 넣으면 섬네일이 안만들어지네요. 다른 일반 사이트에 있는 사진을 img src=로 넣으면 문제 없이 바로 섬네일이 생선됩니다. 무엇이 문제일까요? 구글드라이의 경우 링크가 좀 긴데 그것때문에 그런 것일까요? 그렇다면 어떻게 document.item.php를 수정하여 올바르게 섬네일이 생선될 수 있도록 할 수 있을까요? 아래는 샘플 이미지 입니다.

  1. 섬네일 생선되는 외부링크: 
    http://media-cache-ec0.pinimg.com/736x/28/55/78/2855784103719aa6caf5715c02b3a18b.jpg

  2. 섬네일 생선"안되"는 외부링크:
    https://lh4.googleusercontent.com/-R3uy-XO1LEo/UhKtcN3-bbI/AAAAAAAAAvw/gIUAwNLfFQw/w783-h585-no/IMG_2323.JPG

843 list($_w, $_h, $_t, $_a) = @getimagesize($tmp_file);
844 if($_w<$width || $_h<$height) continue;

위두줄을

843 list($_w, $_h, $_t, $_a) = getimagesize($tmp_file);
844 

으로 바꾸세요.
/844번째 라인은 코드 삭제.

 

출처 https://github.com/xpressengine/xe-core/issues/790

번호 제목 글쓴이 날짜 조회 수
30 1.7X로 업글후 스케치북 웹진형 썸네일이 안나옵니다. 엘리후 2016.09.22 14
29 xe게시판에 외부이미지 가져와서 썸네일 만드는 팁 엘리후 2016.06.01 60
» 외부이미지 섬네일생성시 가로 1280px 넘어갈경우 생성되지않음 엘리후 2016.01.31 141
27 XE 요소 개발을 쉽고 빠르게 - XE Wizard 엘리후 2016.01.13 34
26 XE Core 1.4.4 새 템플릿 문법을 소개합니다. 간결+판독. 엘리후 2015.11.23 38
25 제이쿼리_모바일에서 터치(그랩)하는 캐러젤 설치하기 _ 모바일 엘리후 2015.08.25 126
24 XE 템플릿 문법의 이해 엘리후 2015.08.21 36
23 XE 회원가입 확장변수 출력 엘리후 2015.08.21 72
22 제로보드XE에 소셜XE(Social XE) 설정하여 소셜로그인 활용하기 엘리후 2015.08.21 108
21 구글 애드센스 계정 정지 후 대체 광고 종류 및 소개 엘리후 2015.08.21 308
20 구글 에드센스 이의 ( 논쟁) 엘리후 2015.08.21 75
19 구글애드센스 주소인증 엘리후 2015.08.05 135
18 제로보드 XE 홈페이지 만들기 - 제8장 게시판에 글과 영상 올리기 엘리후 2015.07.18 259
17 XE의 시작페이지 index.php 엘리후 2015.07.17 185
16 조건문 IF 엘리후 2015.07.17 94
15 파일 포함 include 엘리후 2015.07.17 108
14 기본 문법 default 엘리후 2015.07.16 130
13 XE 템플릿 문법의 이해 엘리후 2015.07.16 84
12 XE 레이아웃 바꾸기! 엘리후 2015.07.16 104
11 XE에 페이스북 소셜 댓글 연동하는 방법 (페이스북 소셜댓글 달기) 엘리후 2015.07.11 148
위로