포럼

티스토리의 이미지 링크를 이용할경우 썸네일 생성이 되지 않더군요.

그래서 외부 이미지의 썸네일 생성과정을 살펴보니 모든 src를 검색 후 다시 확장자를 검사해서 이미지 파일인경우 썸네일 생성을 시도하는 형식으로 생각 됩니다.

그리고 첨부파일의 처리부분에는 없는 썸네일의 최대 사이즈를 제한하는 조건문도 존재하네요 @.@


그래서 외부 이미지의 썸네일 생성 부분을 아래처럼 수정해 봤는데 문제 없을지 의견좀 부탁 드립니다. 그리고 외부 이미지의 썸네일 생성과정에만 존재하는 최대 사이즈 제한 부분은 왜 있는것일까요?


현재:

$content에서 src 태그를 모두 검색 후 이미지 파일이 있을경우 썸네일 생성시도.

의문: 원본 이미지보다 큰 사이즈의 썸네일 생성이 불가능 하도록하는 조건문이 있음.

이미지 파일 판단 기준: 확장자가 다음중 하나이면 이미지 파일 (jpg, png, jpeg, gif, bmp)


수정:

$content에서 img 태그를 모두 검색 후 썸네일 생성시도.

원본 이미지보다 큰 사이즈의 썸네일 생성을 막는 코드 삭제

이미지 파일 판단 기준: img 태그를 검색 했으므로 무조건 이미지파일로 판단


개선사항:

확장자가 없는 외부 이미지의 썸네일도 생성 가능. 예) 티스토리의 이미지 링크


modules\document\document.item.php

// If not exists, file an image file from the content
		if(!$source_file)
		{
			$content = $this->get('content');
			$target_src = null;
			preg_match_all('/<\s*img[^>]*src\s*=\s*["\']?([^"\']*)/i', $content, $matches, PREG_SET_ORDER);
			$cnt = count($matches);
			for($i=0;$i<$cnt;$i++)
			{
				$target_src = trim($matches[$i][1]);
				if(preg_match('/\/(common|modules|widgets|addons|layouts)\//i', $target_src)) continue;
				else
				{
					if(!preg_match('/^(http|https):\/\//i',$target_src)) $target_src = Context::getRequestUri().$target_src;

					$tmp_file = sprintf('./files/cache/tmp/%d', md5(rand(111111,999999).$this->document_srl));
					if(!is_dir('./files/cache/tmp')) FileHandler::makeDir('./files/cache/tmp');
					FileHandler::getRemoteFile($target_src, $tmp_file);
					if(!file_exists($tmp_file)) continue;
					else
					{
						$source_file = $tmp_file;
						$is_tmp_file = true;
						break;
					}
				}
			}
		}





글쓴이 제목 최종 글
가을풍경 쇼설 네트워크 WALL 플러그인 소개 [1] 2015.10.05 by Ikoo
prologos 외부 이미지의 썸네일 생성방식 변경 [16] 2015.09.30 by SUHONE
마이웹 요즘 웹개발환경이 또한번 바뀌는듯 하군요. [8] 2015.09.26 by 마이웹
KOTRA1 1.7 버전대 사용중인, 코어 커스텀 많이 해두신분들은 1.8 버전으로 업데이트 하실 생각 마시길.. [16] 2015.09.24 by KOTRA1
BJ람보 카르마님의 통합검색 확장모듈. [9] file 2015.09.20 by 로파이
가브리엘조 보이스피싱에 사용되는 웹사이트 DB [8] 2015.09.20 by Garon
BJ람보 XE 패치 노트 리뷰! ver 1.8.4~1.8.11  
newi xe프레스는 언제 나오나요...?? [3] 2015.09.19 by 레이딘
기븐 제가 적었던 게시글 하나를 삭제처리했습니다 [2] 2015.09.18 by 큰성565
jacob [공모전 진행중] coolsms 오픈 api 공모전 : 대상에겐 100만원 지급!  
fromthere [중요]메뉴 다국어를 사용중이시라면 1.8.10 업그레이드 하시면 안됩니다 [3] file 2015.09.17 by Icarus
newi 1.8.10 업로드후 메뉴 다국어 오류 문제 file  
부산민지아빠 자바라이브러리를 활용한 XE용 스케줄러를 만들어 보았습니다. 테스트 요청 드려요. [12] file 2015.09.15 by mcgomting
기븐 이 사이트(xe 홈페이지) 모바일에서 글쓰기가 안되네요? [7] 2015.09.15 by Novelic
고나리자 외국식 포럼형 게시판에 대한 아이디어 [10] 2015.09.11 by Garon
KOTRA1 로그인XE 없어졌나요? [4] 2015.09.11 by KOTRA1
이온디 XE에 대한 소개글을 작성하는 중인데 어렵네요. [3] 2015.09.08 by 이온디
이온디 [자료공유] 이온디 파일박스 배너위젯 (자료실에 올리는게 너무 어렵네요) [2] file 2015.09.08 by 이온디
이온디 처음으로 위젯 만들어봤네요. [11] 2015.09.08 by DoorWeb
이온디 CMS 시장은 어떻게 진행될까요 [5] 2015.09.05 by 큰성565