-
2006/10/16 7:38 오후 #2115
워드프레스 내장 업로더를 사용하여 이미지를 업로드하고, 에디터로 보내면 아래와 같이 삽입이 됩니다.
<img id="image228" alt="some text" src="http://my.domain.com/wp-content/i/2006/10/some_file.jpg">
여기서 궁금한 것이 있습니다.
질문 1 :
src="http://my.domain.com/wp-content/i/2006/10/some_file.jpg"
위 처럼 삽입된 경로 중 자신의 도메인 부분을 빼고
src="/wp-content/i/2006/10/some_file.jpg"
와 같이 출력하게 하려면 어떻게 해야 할까요?
질문 2 :
thumbnail을 사용할 경우 이미지의 가로 크기와 세로 크기 중 큰 것의 값을 96px (이미지가 큰 경우는 128px)로 thumbnail이 만들어 지더군요.이것을 무조건 가로 크기만 96px로 하고 세로 크기는 비율에 맞게 축소시켜 삽입할 수 있는 방법이 있을까요?
ImageManager라는 플러그인도 한쪽 크기만 정해서 thumbnail을 만들수 없더군요…
2006/10/16 7:38 오후 #2117워드프레스 내장 업로더를 사용하여 이미지를 업로드하고, 에디터로 보내면 아래와 같이 삽입이 됩니다.
<img id="image228" alt="some text" src="http://my.domain.com/wp-content/i/2006/10/some_file.jpg">
여기서 궁금한 것이 있습니다.
질문 1 :
src="http://my.domain.com/wp-content/i/2006/10/some_file.jpg"
위 처럼 삽입된 경로 중 자신의 도메인 부분을 빼고
src="/wp-content/i/2006/10/some_file.jpg"
와 같이 출력하게 하려면 어떻게 해야 할까요?
질문 2 :
thumbnail을 사용할 경우 이미지의 가로 크기와 세로 크기 중 큰 것의 값을 96px (이미지가 큰 경우는 128px)로 thumbnail이 만들어 지더군요.이것을 무조건 가로 크기만 96px로 하고 세로 크기는 비율에 맞게 축소시켜 삽입할 수 있는 방법이 있을까요?
ImageManager라는 플러그인도 한쪽 크기만 정해서 thumbnail을 만들수 없더군요…
2006/10/18 9:54 오후 #2116아래 제시한 방법 모두 워드프레스 기본 파일을 수정하는 것이므로 적용하기전에 파일을 백업해 두는걸 잊지 마시기 바랍니다 (!)
1. URL을 서버루트를 제외한 경로로 표시하기.
기존의 주소를 parse_url 처리 한 변수의 ‘path’ 정보로 바꾸면 됩니다.
inline-uploading.php 파일을 열어 235번줄 부근에 아래처럼 관련 내용을 추가해 보세요.
$thumbtext = $__no_thumbnail;
}
$parse_src = parse_url($src);//추가됨
$src = $parse_src['path'];//추가됨
list($image['uwidth'], $image['uheight']) = get_udims($image['width'], $image['height']);위에 기본을 두고, inline-uploading.php의 내용을 살펴보면서 필요한 부분을 수정하시면 원하시는 결과를 얻으실 수 있습니다.
그런데, 이렇게 하면 FEED 구독자들에게는 이미지가 깨져보이지 않나요?2. admin-functions.php에 포함된 wp_create_thumbnail 함수 자체에서 이미지의 가로, 세로 중 길이가 긴쪽에 기준을 맞추도록 하고 있습니다.
admin-functions.php의 737번줄 부근을 보면 아래와 같은 내용이 있습니다.
if ($image_attr[0] > $image_attr[1]) {
$image_width = $image_attr[0];
$image_height = $image_attr[1];
$image_new_width = $max_side;$image_ratio = $image_width / $image_new_width;
$image_new_height = $image_height / $image_ratio;
//width is > height
} else {
$image_width = $image_attr[0];
$image_height = $image_attr[1];
$image_new_height = $max_side;$image_ratio = $image_height / $image_new_height;
$image_new_width = $image_width / $image_ratio;
//height > width
}
내용과 주석을 보시면 아실 수 있듯이 가로가 세로보다 클때, 세로가 가로보다 클때의 경우로 나누어서 $image_new_width $image_new_height값을 지정하고 있습니다. 이 부분을 항상 가로가 세로보다 클때의 경우에 맞도록 변경 하신다면 원하시는 결과를 얻으실 수 있을듯 하군요.
$image_width = $image_attr[0];
$image_height = $image_attr[1];
$image_new_width = $max_side;$image_ratio = $image_width / $image_new_width;
$image_new_height = $image_height / $image_ratio;이 부분만을 남기고 나머지 부분들을 주석처리하거나 삭제 해 보세요.
하지만 이렇게 처리하면 이미지 세로길이는 96px을 넘지만 가로 길이는 96px이 되지 않는 경우, 가로 길이를 96px로 늘려버리는 경우가 발생하겠군요.
추가적으로 128px를 적용하지 않고 일괄적으로 96px로 맞추려면 inline-uploading.php파일의 87~91번줄 부근을 살펴보신뒤 맞게 수정하시고, 파일 내에서 ‘128’ 로 검색하셔서 이미지 크기와 관련된 부분이 있다면 또한 96으로 수정하시면 됩니다.
if ( $imagedata['width'] * $imagedata['height'] < 3 * 1024 * 1024 ) {
if ( $imagedata['width'] > 128 && $imagedata['width'] >= $imagedata['height'] * 4 / 3 )
$thumb = wp_create_thumbnail($file, 128);
elseif ( $imagedata['height'] > 96)
$thumb = wp_create_thumbnail($file, 96);2006/10/18 9:54 오후 #2118아래 제시한 방법 모두 워드프레스 기본 파일을 수정하는 것이므로 적용하기전에 파일을 백업해 두는걸 잊지 마시기 바랍니다 (!)
1. URL을 서버루트를 제외한 경로로 표시하기.
기존의 주소를 parse_url 처리 한 변수의 ‘path’ 정보로 바꾸면 됩니다.
inline-uploading.php 파일을 열어 235번줄 부근에 아래처럼 관련 내용을 추가해 보세요.
$thumbtext = $__no_thumbnail;
}
$parse_src = parse_url($src);//추가됨
$src = $parse_src['path'];//추가됨
list($image['uwidth'], $image['uheight']) = get_udims($image['width'], $image['height']);위에 기본을 두고, inline-uploading.php의 내용을 살펴보면서 필요한 부분을 수정하시면 원하시는 결과를 얻으실 수 있습니다.
그런데, 이렇게 하면 FEED 구독자들에게는 이미지가 깨져보이지 않나요?2. admin-functions.php에 포함된 wp_create_thumbnail 함수 자체에서 이미지의 가로, 세로 중 길이가 긴쪽에 기준을 맞추도록 하고 있습니다.
admin-functions.php의 737번줄 부근을 보면 아래와 같은 내용이 있습니다.
if ($image_attr[0] > $image_attr[1]) {
$image_width = $image_attr[0];
$image_height = $image_attr[1];
$image_new_width = $max_side;$image_ratio = $image_width / $image_new_width;
$image_new_height = $image_height / $image_ratio;
//width is > height
} else {
$image_width = $image_attr[0];
$image_height = $image_attr[1];
$image_new_height = $max_side;$image_ratio = $image_height / $image_new_height;
$image_new_width = $image_width / $image_ratio;
//height > width
}
내용과 주석을 보시면 아실 수 있듯이 가로가 세로보다 클때, 세로가 가로보다 클때의 경우로 나누어서 $image_new_width $image_new_height값을 지정하고 있습니다. 이 부분을 항상 가로가 세로보다 클때의 경우에 맞도록 변경 하신다면 원하시는 결과를 얻으실 수 있을듯 하군요.
$image_width = $image_attr[0];
$image_height = $image_attr[1];
$image_new_width = $max_side;$image_ratio = $image_width / $image_new_width;
$image_new_height = $image_height / $image_ratio;이 부분만을 남기고 나머지 부분들을 주석처리하거나 삭제 해 보세요.
하지만 이렇게 처리하면 이미지 세로길이는 96px을 넘지만 가로 길이는 96px이 되지 않는 경우, 가로 길이를 96px로 늘려버리는 경우가 발생하겠군요.
추가적으로 128px를 적용하지 않고 일괄적으로 96px로 맞추려면 inline-uploading.php파일의 87~91번줄 부근을 살펴보신뒤 맞게 수정하시고, 파일 내에서 ‘128’ 로 검색하셔서 이미지 크기와 관련된 부분이 있다면 또한 96으로 수정하시면 됩니다.
if ( $imagedata['width'] * $imagedata['height'] < 3 * 1024 * 1024 ) {
if ( $imagedata['width'] > 128 && $imagedata['width'] >= $imagedata['height'] * 4 / 3 )
$thumb = wp_create_thumbnail($file, 128);
elseif ( $imagedata['height'] > 96)
$thumb = wp_create_thumbnail($file, 96); -
AuthorPosts
- 답변은 로그인 후 가능합니다.