Медленная загрузка медиатеки WordPress: полные изображения вместо миниатюр
На моем сайте WordPress (который продает розничные товары) у меня есть большие изображения (до 4000x4000 пикселей), чтобы люди могли увеличивать их. К сожалению, при добавлении изображений на страницу через Медиатеку все изображения загружаются в полном качестве (хотя и уменьшенные в размере). Это делает страницу Медиатеки очень медленной и сильно тормозит мой браузер. Почему так происходит? Почему страница Медиатеки не использует миниатюры? Если я нажимаю на "Медиафайлы" в левом меню админки, там отображаются правильные миниатюры, но при добавлении медиа на страницу появляется список с полноразмерными изображениями.
Это баг в WordPress?

Если на вашем сервере не установлены необходимые библиотеки для работы с изображениями, WordPress не сможет создавать настоящие миниатюры, а только изменять их размер с помощью CSS. Я подозреваю, что в этом и заключается проблема.
Создайте файл на вашем сервере и поместите в него <?php phpinfo(); ?>
. Затем откройте этот файл в браузере. Вы увидите таблицу с информацией о конфигурации сервера. Проверьте наличие библиотек для работы с изображениями в PHP. Я почти уверен, что WordPress использует Imagemagick
, если он доступен, затем GD
, а если их нет, то ничего. Хотя я могу ошибаться, так как не слишком хорошо знаком с подсистемами работы с медиафайлами.
Также вы можете проверить папку wp-content/uploads
, чтобы убедиться, создаются ли изображения в нескольких размерах.
Ещё возможно, что плагин или тема отключили генерацию изображений.

У меня была такая же проблема. Я не мог понять, почему некоторые изображения, загруженные в начале разработки, отображались в виде миниатюр, а другие, загруженные позже, показывались в полном размере, ограниченном шириной 120px.
В итоге я осознал, что это произошло из-за того, что я отключил средний размер изображения, установив и ширину, и высоту в 0. Очевидно, WordPress использует средний размер изображения, если он доступен, а если нет - использует полный размер. Я просто установил средний размер в 120x120 и перегенерировал миниатюры (http://wordpress.org/plugins/regenerate-thumbnails/), после чего все заработало как надо.

Хотя есть уже принятый ответ, вот дополнительная информация для тех, кто столкнулся с той же проблемой.
Медиа-модальное окно требует наличия размера изображения "medium" и его присутствия в массиве "image_size_names_choose" (это, по крайней мере, фильтр). Если "medium" нет среди ключей этого массива, модальное окно использует полный размер изображения.
