갤러리 목록에서 에디터로 삽입한 이미지 썸네일 안나오는 이유 좀 알려주세요
본문
관련해서 검색을 해보았는데
갤러리 목록 파일인 list.skin.php에서는 get_list_thumbnail() 함수로 이미지소스를 가져와서 출력하게 되어있고
get_list_thumnail 함수는 thumbnail.lib.php에 정의되어 있네요.
thumbnail.lib.php 의 get_thumbnail_find_cache() 함수는 첨부된 파일이면 썸네일을 잘 불러옵니다.
그런데 에디터에서 삽입한 이미지는 불러오질 못하는 현상이 있습니다.
$write = get_thumbnail_find_cache($bo_table, $wr_id, 'content'); 에서 wr_content를 못가져오는 줄 알았으나 그다음 $matches = get_editor_image($write['wr_content'], false) 에는 array[1]에 정상적으로 담기네요...
아시는 분 꼭 좀 답변 부탁드립니다.
답변 3
파일이 같이 업로드된경우 파일을 먼저 불러옵니다
if( $matches = get_editor_image($write['wr_content'], false) ){
=> 이부분이 정규식으로 이미지 추출하는 소스입니다.
$matches = get_editor_image($write['wr_content'], false) ;
var_dump($matches);
로 어떤 값이 나오는지 확인해보시면 원인을 알수 있지 않을까 싶네요
get_editor_image
=> 해당 함수가 img 태그에서 이미지 주소만 배열로 추출하는 함수입니다.
답변 주신 분들 감사합니다.
자문자답입니다.
질문 올린 후 계속 추적을 더 해보았더니
thumbnail.lib.php의 218라인 thumnail() 함수에서 썸네일을 생성하지 못한다는 것을 알았습니다.
구체적으로 239라인
// 디렉토리가 존재하지 않거나 쓰기 권한이 없으면 썸네일 생성하지 않음
if(!(is_dir($target_path) && is_writable($target_path)))
return '';
에서 조용히 return 처리되었네요.
윈도우 서버라서 data/editor/ 이하 폴더에 쓰기권한 설정이 안되어 있어서 생긴 문제였습니다.
저기 239라인에서 에러메시지를 출력해줬으면 더 빨리 찾았을텐데요 ㅎㅎ
저와 비슷한 현상을 겪으시는 분께 도움이 될까해서 적어놓습니다.