WP 4.4. Trình duyệt hình ảnh phản hồi chọn lựa chọn sai một


9

Tôi rất vui vì WP 4.4. tàu với một tính năng hình ảnh đáp ứng tích hợp. Nhưng tôi không hài lòng với nó.

Tôi đã thiết lập một số kích thước hình ảnh tùy chỉnh trong functions.php:

add_image_size ('hình thu nhỏ', 600, 600, đúng);
add_image_size ('news-Large', 1024, sai);
add_image_size ('news-small', 500, sai);
add_image_size ('3-col', 500, 375, đúng);
add_image_size ('bấm nút', 600, 850, đúng);
add_image_size ('trung bình lớn', 768, sai); // vừa thêm hôm nay để hỗ trợ thiết bị
add_image_size ('hình ảnh đầy đủ tính năng', 2000, sai);
add_image_size ('thư viện ảnh', 800, 600, đúng);

Như tôi đã hình dung, hình ảnh không bị cắt (cắt xén được đặt false) được thêm vào srcset. Một hình ảnh được xuất ra ở frontend like (ngắt dòng được thêm vào để dễ đọc hơn):

<img width = "2000" height = "1335"
src = "http://mywebsite.com/cms/wp-content/uploads/2015/03/image-2000x1335.jpg" 
class = "tập tin đính kèm-full-Feature-image-full-Feature-image"
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 = "(max-width: 2000px) 100vw, 2000px">

Nhưng bây giờ vấn đề của tôi: Trên màn hình của tôi, chỉ những hình ảnh được chỉ định với chiều rộng 1024px được hiển thị, mặc dù nó có độ phân giải màn hình 1600px. Vì vậy, tất cả các hình ảnh trông mờ.

Làm cách nào tôi có thể làm cho WP và / hoặc trình duyệt của tôi sử dụng hình ảnh 2kpx thay thế? Tôi có phải thêm kích thước hình ảnh mới cho, giả sử 1280px, 1440px, 1600px, 1968px? Hoặc có một cách đơn giản hơn để nói với WP / trình duyệt sử dụng hình ảnh lớn hơn thay vì hiển thị một phiên bản quá mờ và quá nhỏ?


Bạn có thể vui lòng thử điều này với cách sử dụng chính xác add_image_size? Bạn luôn đặt widthđối số thành false - đây phải là một số nguyên (đối số thứ ba).
fischi

Ok, thực hiện điều đó và thêm giá trị chiều cao của 9999. Hình thu nhỏ đã thay đổi kích thước. Không có kết quả.
rob_st

Mặc định của max_srcset_image_widthbộ lọc là 1600.
birgire

Rất tốt để biết @birgire - nhưng điều đó không giúp được gì nhiều. Làm cách nào để thay đổi nó (dường như chưa có tài liệu nào) - và liệu một thay đổi có giải quyết được vấn đề của tôi không?
rob_st

Câu trả lời:


9

Tài liệu liên quan có bài đăng blog này trên Make Blog:

Hình ảnh phản hồi trong WordPress 4.4

Để tăng giới hạn 1600px được đề cập trong các nhận xét, hãy thử điều này:

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

Cuối cùng, như đã đề cập, bạn nên sửa cuộc gọi của mình thành add_image_size

add_image_size ('news-Large', 1024, sai);

cần phải được

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

Cảm ơn bạn. Tôi đã đặt chiều cao thành 9999 - nó có khác biệt gì không? Tôi se thử no.
rob_st

Cảm ơn bạn, điều đó đã làm cho nó hoạt động. Mặc dù về cơ bản nó là câu trả lời giống như câu trả lời này và thực sự tôi thích các hàm được đặt tên - Tôi đã chấp nhận hàm của bạn vì bạn là người đầu tiên :-)
rob_st

Tôi nghĩ rằng đây có thể là câu trả lời tôi cần, nhưng tôi không biết $size_arraynên có giá trị gì .
Telary

1

Tôi đã giải quyết vấn đề tương tự bằng cách thêm kích thước bổ sung vào srcsetchức năng lọc mà bạn có thể thêm vào 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 );
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.