the_post_thumbnail Адаптивный srcset не заполняется пользовательским размером изображения

8

Я пытаюсь использовать новую функцию адаптивных изображений в Wordpress 4.4, но продолжаю сталкиваться с определенной проблемой, когда пытаюсь использовать the_post_thumbnail с пользовательским размером изображения. Кажется, я не могу использовать нестандартные размеры изображений.

Следующий код создаст imgтег с srcsetподарком:

<?php the_post_thumbnail('medium',  array( 'class' => 'img-responsive' )); ?>

Вот как imgвыглядит тег с mediumразмером, переданным в функцию:

<img width="300" height="225" src="path/to/image-300x225.jpg" class="img-responsive wp-post-image" alt="Image" srcset="path/to/image-300x225.jpg 300w, path/to/image-768x576.jpg 768w, path/to/image.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px">

Однако, когда я делаю одно изменение, чтобы использовать свой собственный размер изображения, srcsetисчезает. Кто-нибудь знает, что здесь происходит?

Вот как я добавил свой собственный размер изображения:

add_image_size ('my-custom-size', 1050, 626, true );

Вот как это выглядит в коде:

<?php the_post_thumbnail('my-custom-size',  array( 'class' => 'img-responsive' )); ?>

И вот что он выводит, обратите внимание, что my-custom-sizeон не читается, а вместо этого добавляет wp-post-imageвместо my-custom-size:

<img width="1024" height="626" src="path/to/image-1024x626.jpg" class="img-responsive wp-post-image" alt="Image">

Пожалуйста, помогите мне понять, что я делаю неправильно!

лось
источник
1
установите свои add_image_size ('my-custom-size', 1050, 0, false );и для объяснения, пожалуйста, прочитайте это отвечено wordpress.stackexchange.com/a/211405/18731
Евуска
Вы тестировали только что загруженное изображение? Ваш новый размер изображения будет применяться только при загрузке изображений. Вы можете восстановить наборы изображений для существующих изображений с помощью плагина, такого как Regenerate Thumbnails.
Энди Маколей-Брук
1
@Jevuska, который не будет сильно обрезать изображение до размеров, которые хочет спрашивающий, хотя.
Энди Маколей-Брук
1
Помог ли мой ответ вообще? Этот вопрос все еще актуален?
Энди Маколей-Брук,

Ответы:

4

Недостаточно информации, чтобы убедиться, что этот ответ является окончательным, но вот попытка.

Во-первых, убедитесь, что загружаемое изображение на самом деле больше указанного вами размера. Я вижу, как люди загружают слишком маленькие изображения, а потом все время получают такой результат.

Во-вторых, WP будет составлять только список размеров изображений Srcset с тем же соотношением сторон. Если ваш пользовательский размер имеет другое соотношение сторон изображения, чем другие размеры изображения, вы можете создать подборку новых размеров с соотношениями сторон, которые соответствуют.

В-третьих, после изменения или добавления новых размеров изображения вы всегда должны восстановить существующие эскизы. Для этого есть отличный плагин Regenerate Thumbnails .

Энди Маколей-Брук
источник
1
Не стесняйтесь голосовать, если это помогло :-)
Энди Маколей-Брук