Поддержка Проблемы и решения Ресайз изображений на лету при необходимости

  • WP создает несколько размеров изображений при их загрузке, + могут свои размеры создавать плагины. Можно ли сделать чтобы создавалось только основное изображение и изображение для превью библиотеки (кстати, какое используется для этого?). А остальные «по требованию», если делается миниатюра или какой то плагин для данного изображения требует особый размер, то в момент когда в WP требуется этот размер в 1й раз оно и создается?

Просмотр 15 ответов — с 1 по 15 (всего 18)
  • Модератор Yui

    (@fierevere)

    永子

    https://wordpress.org/plugins/wp-thumb/
    можете попробовать это, но насколько оно хорошо или вообще работает ли, я не скажу.

    более того в wp 4.4 планируются изменения что браузер будет сам выбирать тот размер который ему загружать и показывать (responsive images на основе srcset)

    Ресайз изображений на лету

    Еще есть плагины. которые автоматически сжимают загружаемые картинки до указанных размеров и соответственно разумного «веса».
    (Например этот https://wordpress.org/plugins/resize-image-after-upload/ )

    Конечно оптимизировать картинки лучше предварительно, на компьютере.
    Но на одном из сайтов приходится применять такой плагин с целью защиты от неискушенных в работе с изображениями авторов того сайта, которые начали загружать на сайт оригиналы фото с зеркалок размером от 5000 пкс и весом от 4 мб. каждое.

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

    Я давно искал решение этой проблемы но ничего не придумал. Есть один вариант это найти безлимитный и «недорогой» хостинг.

    Ресайз изображений на лету

    Если Вы действительно этого хотите — готовьтесь платить за хостинг в несколько раз больше, чем без этого.

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

    И где тут проблема? В нескольких лишних МБ? Место на диске стоит гораздо дешевле, чем память и ЦП, необходимые для реалтайм-ресайза.
    И лишних ли? Создать 2-3 копии разных размеров — вполне достаточно. Остальное стилями подгонять.
    И да, оптимизировать картинки надо, а не загружать многомегобайтные. Тогда и с местом не будет проблем, и, что важнее, со скоростью загрузки со всеми вытекающими.

    почему платить больше? Ресайз (по крайней мере по моей идеи) делается один раз! Такой же ресайз делается и при создании записи (вы грузите один размер — создается несколько)! Более того так как ресайз будет делаеться не для всех изображений использования ресурса хостинга уменьшится. Да при первом вызове записи потребуется больше времени и больще ресурсов.
    1.Но ресурсов не более чем при создании записи (точнее загрузки изображений для этой записи)
    2.На пользователях это не скажется, так как обычно создатель записи сам первый ее и вызывает чтобы посмотреть что получилось.

    Ресайз (по крайней мере по моей идеи) делается один раз!

    А что же тогда Ваше «на лету»? Чем это отличается от стандартного создания миниатюр при загрузке картинки?

    так как обычно создатель записи сам первый ее и вызывает чтобы посмотреть что получилось.

    Вот и надо загружать подготовленную картинку.

    Да, внимательней перечитайте что выше говорили Yui и Konstantin.

    Модератор Yui

    (@fierevere)

    永子

    А что же тогда Ваше «на лету»? Чем это отличается от стандартного создания миниатюр при загрузке картинки?

    можно было бы не создавать лишние размеры миниатюр которые не используются никогда (на 4.4 они хоть в srcset пойдут, а сейчас от них пользы нет)

    wp-thumb я проверила, на 4.3.1 как создавалась пачка миниатюр сразу, так и создается, никакого on-demand …

    на лету — при первом обращение. Ну может правильнее действительно это назвать «по запросу». Но суть вроде понятна, по крайней мере некоторым.

    можно было бы не создавать лишние размеры миниатюр которые не используются никогда

    Абсолютно согласен. Механизм миниатюр (да и вообще медиатеки) в ВП — не самое удачное место 🙂
    Впрочем, это можно считать платой за универсальность.

    на лету — при первом обращение. Ну может правильнее действительно это назвать «по запросу».

    Тогда правильней — при загрузке. При обращении уже нужно показать готовое.

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

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

    Это как-то странно. Как можно не знать какие размеры нужно выводить? Мне такое непонятно.

    И вообще ВП по умолчанию делает 2 доп. «типорамера». Задача темы/плагинов — выбрать подходящее для конкретного случая/клиента.
    Разница в 10-15% при изменении размеров с пом css на качество не влияет.
    В чём проблема — не ясно совершенно.

    В чем проблема реализовать механизм — при показе записи ищется нужное изображение в нужном разрешении, не находится — создается?

    Вы не читали что выше Yui написала:

    более того в wp 4.4 планируются изменения что браузер будет сам выбирать тот размер который ему загружать и показывать (responsive images на основе srcset)

    ну давайте на конкретном примере
    загружаю изображение 1658х2464
    на настройках медиафайлов установлено
    миниатюра 150х150
    средний размер 300х300
    крупный 1024х1024

    в редакторе при редактирования этого изображения появилось
    миниатюра 150х150
    средний 201х300 (а это откуда взялось???)
    большой 474х704 (и это откуда?)
    ну и исходный который загружен (1658х2464)
    Далее если попытаться задать миниатюру записи то выбирается именно исходный размер а не средний или миниатюра (почему? зачем они тогда создавались?) и приходится перед этим делать ресайз изображения

    Далее.
    При работе с библиотекой есть 2 вида плитка и список с разным размером изображения. Какие размеры изображений используются для этих видов?
    Причем вроде вырезается наибольший квадрат из изображения.

    А еще могут сами темы пытаться создать какие то размеры изображений.

    физически есть файлы (по названию)
    исходный
    689х1024
    672х372(обрезано) (а это откуда, все плагины деактивированы!)
    201х300
    150х150
    1038х576(обрезано) (а это откуда, все плагины деактивированы!)

    Модератор Yui

    (@fierevere)

    永子

    средний 201х300 (а это откуда взялось???)
    большой 474х704 (и это откуда?)

    урезается ширина или высота , в зависимости от того что будет превышать заданый размер, другое измерение меняется пропорционально
    Если нужно чтобы разные по пропорциям картинки менялись только по одному из параметров (ширина или высота) а другой менялся пропорционально, то задавайте его (другого параметра) значение как 9999 например

    Далее если попытаться задать миниатюру записи то выбирается именно исходный размер а не средний или миниатюра

    это уже похоже к теме претензии, у меня берется как раз ближайшая по подходящим размерам миниатюра

    дополнительными размерами от тем и плагинов «рулит» функция
    add_image_size()

    обратите внимание на возможность «вырезать» квадрат (или прямоугольник) и изменение точно по заданым размерам (непропорционально) c помощью параметра(-ов) crop

    ps:
    да, меня тоже отчасти возмущает этот бардак, поэтому для плагинов и тем иногда используют timthumb/bfi_thumb/otf regenerate thumbnails

    * timthumb устарел и имеет существенные проблемы, использоваться более не должен

    а где WP использует миниатюры и средний размер?
    посмотрел миниатюру по коду, вроде да выбырается вроде как исходный, но ставится 672х372.
    Тоже не понятно. А почему не показать при выборе изображения какие размеры присутствуют.

    И еще вопрос миниатюры 150х150 и миниатюры записи это разные понятия?

Просмотр 15 ответов — с 1 по 15 (всего 18)
  • Тема «Ресайз изображений на лету при необходимости» закрыта для новых ответов.