В Wordpress есть стандартные размеры миниатюр для изображений (150, 300). Когда мы загружаем картинки, Wodrpress создает эти миниатюры и мы можем их использовать в разных разделах сайта. Что делать, если нужно добавить свой размер миниатюр?
Как правило, изменять и портить файлы ядра Wordpress нельзя (точнее можно, но бессмысленно: при очередном обновлении все слетит). Поэтому, будем вносить изменения в исходники темы сайта. Подразумевается, что у вас есть своя тема сайта, которую вы можете спокойно изменять, ведь стандартные темы тоже подвержены обновлениям.
Редактируем файл темы functions.php. Практически в самом начале, где инициализируется тема (функция с постфиксом _setup()) убеждаемся, что есть строка:
add_theme_support( 'post-thumbnails' );
Скорее всего, она там есть. Если нет, добавляем. Сразу после нее нужно инициализировать новые размеры миниатюр. Вставляем подобную строку:
add_image_size( 'custom-size-200', 200, 200 );
Первый параметр - это название типа миниатюры, которое потом будем вызывать в коде. Параметры функции add_image_size можно посмотреть в документации (ширина, высота и четвертый параметр - если false, то картинка будет отмасштабирована, если true - обрезана).
Можно инициализировать сколько угодно новых размеров миниатюр. Теперь их можно вызывать в коде, например так:
the_post_thumbnail( 'custom-size-200', array( 'alt' => get_the_title() ) );
Вызвав вышеуказанную функцию в нужном вам месте, вы укажете Wordpress вставить полный код изображения: тег img со всеми атрибутами, включая srcset.
Теперь при загрузке новых изображений будут автоматически создаваться также миниатюры с новыми размерами. Но если сайт существует достаточно давно, старые картинки пересозданы не будут. Для генерации миниатюр старых картинок можно использовать плагин Regenerate Thumbnails . Установите его и запустите пересоздание миниатюр.