Один из моих размеров изображения не отображается в srcset

Поэтому, поскольку я добавил некоторые пользовательские размеры изображений, например:

add_action('after_setup_theme', 'image_sizes_setup'); function image_sizes_setup(){ add_theme_support( 'post-thumbnails' ); add_image_size('thumb-small-2x', 196, 9999); add_image_size('thumb-medium-2x', 276, 9999); add_image_size('portrait-thumb-large-2x', 328, 9999); add_image_size('landscape-thumb-large-2x', 9999, 328); add_image_size('small-2x', 900, 600); add_image_size('medium-2x', 1200, 800); add_image_size('large', 1920, 1280); add_image_size('large-large-2x', 2160, 1440); add_image_size('extra-large-2x', 2400, 1600); } 

Затем я написал этот код, чтобы выбрать их в медиа-менеджере

 add_filter( 'image_size_names_choose', 'custom_image_sizes_choose' ); function custom_image_sizes_choose( $sizes ) { $custom_sizes = array( 'thumb-small-2x' => 'Thumb Small', 'thumb-medium-2x' => 'Thumb Medium', 'portrait-thumb-large-2x' => 'Thumb Portrait Large', 'landscape-thumb-large-2x' => 'Thumb Landscape Large', 'small-2x' => 'Small', 'medium-2x' => 'Medium', 'large' => 'Large', 'large-large-2x' => 'Large Large', 'extra-large-2x' => 'Extra Large', ); return array_merge( $sizes, $custom_sizes ); } 

И я показываю его в одном из моих шаблонов с этим

 add_action('genesis_after_header', 'ts_show_featured_image'); function ts_show_featured_image(){ if ( has_post_thumbnail()): echo'<div class="gallery header-image">'; the_post_thumbnail( 'extra-large-2x', array( 'class' => 'featured-image' ) ); echo '</div>'; endif; } 

HTML-тег img используется как:

 <img width="2400" height="1600" src="http://example.com/wp-content/uploads/2016/04/Picture-6.jpg" class="featured-image wp-post-image" alt="Picture" srcset=" http://example.com/wp-content/uploads/2016/04/Picture.jpg 2400w, http://example.com/wp-content/uploads/2016/04/Picture-768x512.jpg 768w, http://example.com/wp-content/uploads/2016/04/Picture-276x184.jpg 276w, http://example.com/wp-content/uploads/2016/04/Picture-328x219.jpg 328w, http://example.com/wp-content/uploads/2016/04/Picture-492x328.jpg 492w, http://example.com/wp-content/uploads/2016/04/Picture-900x600.jpg 900w, http://example.com/wp-content/uploads/2016/04/Picture-1200x800.jpg 1200w" sizes="(max-width: 2400px) 100vw, 2400px" > 

Итак, все так, как должно быть, только изображения 2160×1440 и 1920×1280 не находятся в srcset. Они имеют одинаковую пропорцию, как и все остальные (за вычетом эскизов, но это не так. Я даже прокомментировал размеры миниатюр и регенерированные эскизы, чтобы быть уверенным, и та же проблема есть).

Я старался быть основательным, если вам нужна дополнительная информация, просто дайте мне знать. Большое спасибо! Это сводит меня с ума.

Итак, любые идеи, почему они не появляются?

Просто гонг, чтобы опубликовать ответ здесь. @Dan связано с другим вопросом, который имел ответ.

Ниже приведена документация по новой функции реагирующих изображений:

Отзывчивые образы в WordPress 4.4

Максимальный размер по умолчанию, который войдет в srcset, будет иметь ширину 1600 пикселей. Поэтому, если вы планируете использовать изображения, которые больше, чем это, вам нужно изменить это.

Его можно изменить следующим образом:

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

Где 2000 – новая максимальная ширина.