Как задать размер загружаемому изображению оригиналу?
Здравствуйте, подскажите. Я загружаю оригинальное изображение, оно размера 3000px на 2003px,
вопрос: как мне сразу при загрузке обрезать это изображение до нужного мне размера? допустим я хочу что бы оригинал сразу обрезался до 1180px. Все изображения которые нарезает WordPress я удаляю вот так.
function disable_default_image_sizes( $sizes) { unset( $sizes['thumbnail']); unset( $sizes['medium']); unset( $sizes['medium_large']); unset( $sizes['large']); unset( $sizes['1536x1536']); unset( $sizes['2048x2048']); return $sizes; } add_filter('intermediate_image_sizes_advanced', 'disable_default_image_sizes'); |
function disable_default_image_sizes( $sizes) { unset( $sizes['thumbnail']); unset( $sizes['medium']); unset( $sizes['medium_large']); unset( $sizes['large']); unset( $sizes['1536x1536']); unset( $sizes['2048x2048']); return $sizes; } add_filter('intermediate_image_sizes_advanced', 'disable_default_image_sizes');
потом я регистрирую какие мне надо размеры,
проблема: при вставке изображения через редактор Gutenberg, он вставляет оригинальное изображение 3000px, даже если у меня есть add_image_size('custom-large', 1000, 1000, false); он все равно в коде прописывает изображению оригинальные размеры width="3000" и height="1709".
https://g1t.ru/video/chrome_RoTKzC3qcw.mp4
Дополнительно:
Кажется нашел решение, кому будет интересно, https://wp-kama.ru/id_12989/suffiks-scaled-u-karti... на wp-kama
Ответы:
Вот тут все разложено по полочкам, рекомендую,
https://perishablepress.com/disable-wordpress-gene...
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Если нужно уменьшать оригинал изображения сразу при загрузке в WordPress, не удаляйте размеры вручную после факта. Используйте стандартный механизм ограничения больших изображений. В WordPress есть фильтр
big_image_size_threshold, который автоматически создаёт “уменьшенный оригинал” для слишком больших картинок.Например, ограничить большую сторону до 1180 px:
add_filter('big_image_size_threshold', function () { return 1180; });
После этого при загрузке изображения 3000x2003 WordPress создаст уменьшенную версию и будет считать её основным файлом. Но точное кадрирование зависит от пропорций: если нужно именно обрезать, а не пропорционально уменьшить, используйте размер изображения.
Добавить свой размер:
add_action('after_setup_theme', function () { add_image_size('custom-original-like', 1180, 787, true); });
Параметр
trueозначает жёсткую обрезку. Если нужна только ширина 1180 без crop:add_image_size('custom-width-1180', 1180, 0, false);
Удалять все размеры WordPress не всегда правильно. Тема, WooCommerce, srcset и адаптивные изображения используют разные размеры, чтобы не грузить огромный файл на мобильных. Если оставить только один размер, можно ухудшить PageSpeed.
Если задача — экономия места, можно отключить лишние размеры темы, но оставить thumbnail/medium/large и нужные размеры карточек. Для уже загруженных файлов потребуется регенерация миниатюр.
Итог: для ограничения оригинала используйте
big_image_size_threshold. Для конкретного размера вывода используйтеadd_image_size(). Полностью удалять все нарезки стоит только после понимания, где они используются.