WP 4.4. "잘못된"것을 선택하는 반응 형 이미지 브라우저


9

WP 4.4가 기쁘다. 반응 형 이미지 기능이 내장되어 있습니다. 그러나 나는 그것에 만족하지 않습니다.

내 일부 맞춤 이미지 크기를 설정했습니다 functions.php.

add_image_size ( '포스트 썸네일', 600, 600, true);
add_image_size ( 'news-large', 1024, 거짓);
add_image_size ( 'news-small', 500, 거짓);
add_image_size ( '3-col', 500, 375, true);
add_image_size ( 'presscutting', 600, 850, true);
add_image_size ( '중형', 768, 거짓); // 장치 지원을 위해 오늘 추가되었습니다.
add_image_size ( '전 기능 이미지', 2000, 거짓);
add_image_size ( 'gallery-image', 800, 600, true);

내가 생각했듯이 자르지 않은 이미지 (자르기로 설정 됨 false)가에 추가됩니다 srcset. 이미지는 다음과 같이 프론트 엔드에 출력됩니다 (가독성 향상을 위해 줄 바꿈이 추가됨).

<img width = "2000"height = "1335"
src = "http://mywebsite.com/cms/wp-content/uploads/2015/03/image-2000x1335.jpg" 
class = "첨부 파일 전체 기능 이미지 크기 전체 기능 이미지"
alt = "asdf"
srcset = "
http://mywebsite.com/cms/wp-content/uploads/2015/03/image-300x200.jpg 300w, 
http://mywebsite.com/cms/wp-content/uploads/2015/03/image-768x513.jpg 768w, 
http://mywebsite.com/cms/wp-content/uploads/2015/03/image-1024x683.jpg 1024w, 
http://mywebsite.com/cms/wp-content/uploads/2015/03/image-500x334.jpg 500w " 
size = "(최대 너비 : 2000px) 100vw, 2000px">

그러나 이제 내 문제 : 내 화면에는 1600px 화면 해상도가 없지만 1024px 너비로 지정된 이미지 만 표시됩니다. 따라서 모든 이미지가 흐릿하게 보입니다.

WP 및 / 또는 브라우저가 대신 2kpx 이미지를 사용하도록하려면 어떻게해야합니까? 1280px, 1440px, 1600px, 1968px에 대해 새로운 이미지 크기를 추가해야합니까? 또는 WP / 브라우저에 흐릿하고 너무 작은 버전을 표시하는 대신 더 큰 이미지를 사용하도록 지시하는 간단한 방법이 있습니까?


올바른 방법으로 사용해보십시오 add_image_size. 항상 width인수를 false로 설정하십시오 . 정수 (세 번째 인수) 여야합니다.
fischi

좋아, 그렇게하고 높이 값 9999를 추가했습니다. 축소판 그림의 크기를 조정하십시오. 소용이 없습니다.
rob_st

max_srcset_image_width필터 의 기본 설정 은 1600입니다.
birgire

@birgire를 아는 것이 좋지만 그다지 도움이되지 않습니다. 변경하려면 어떻게해야합니까 (아직 문서가없는 것 같습니다) 변경으로 문제가 해결됩니까?
rob_st

답변:


9

문서와 관련하여 Make Blog에는 다음 블로그 게시물이 있습니다.

WordPress 4.4의 반응 형 이미지

주석에 언급 된 1600px 제한을 늘리려면 다음을 시도하십시오.

add_filter('max_srcset_image_width', function($max_srcset_image_width, $size_array){
    return 2000;
}, 10, 2);

마지막으로 이미 언급했듯이 통화를 수정해야합니다. add_image_size

add_image_size ( 'news-large', 1024, 거짓);

될 필요가있다

add_image_size('news-large', 1024, 0, false);

감사합니다. 높이를 9999로 설정했는데 차이가 있습니까? 시도해 볼게요.
rob_st

고맙습니다. 그것은 기본적으로 같은 대답이지만 이 하나 실제로 내가 선호 라는 이름의 기능을 - 당신이 :-) 처음 이었기 때문에 나는 당신을 받아
rob_st

나는 이것이 내가 필요한 답이라고 생각하지만, 어떤 가치 $size_array가 있어야 하는지 모르겠다 .
Telarian

1

srcset필터 기능을 사용 하여 추가 크기를 추가하여 동일한 문제를 해결했습니다 functions.php.

function filter_max_srcset( $max_width, $size_array ) {
    if ( $size_array[0] === 1800 ) {
        $max_width = 1800;
    }
    return $max_width;
}
add_filter( 'max_srcset_image_width', 'filter_max_srcset', 10, 2 );
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.