Перестройте изображения из стиля изображения

58

У меня есть стиль изображения в Drupal 7. Я прикрепил несколько изображений к узлам и отображал изображения на основе этого стиля. Затем я изменил эффекты этого стиля изображения, но существующие изображения не воссоздаются с новыми эффектами стиля изображения. Они показывают со старыми эффектами стиля изображения.

Если я прикрепляю новые изображения, они используют новые эффекты. Удаление существующего изображения и повторная загрузка заставляет изображение использовать старые эффекты.

В руководстве (неправильно я предполагаю) говорится, что простое сохранение стиля изображения вызывает перестройку: http://drupal.org/documentation/modules/image

Я очистил кэшированный.

Как заставить перестроить?

Джастин
источник
1
Вы действительно нажимали кнопку « Обновить стиль» , когда находились на странице «Стиль изображения»? Я только что провел несколько тестов и убедился, что при щелчке по нему все сгенерированные файлы в каталоге файлов удаляются.
Juampy NR
Руководство правильное. Изменение стиля изображения, например, путем добавления, редактирования или удаления эффекта, стирает стиль изображения. Это может быть кеш вашего браузера (или другого промежуточного) или проблема с правами при удалении производных.
fietserwin
Я использовал собственную команду drush для регенерации изображений gist.github.com/typhonius/8599853
apostnikov

Ответы:

113

Очистка кэша, не стирает стили изображения: http://drupal.org/node/997332

Вы могли бы:

  • удалить их вручную
  • использовать image_style_flush
  • используйте командную строку: rm -rf sites/default/files/styles
  • использовать drush: drush image-flush
ipwa
источник
9
drush image-flush style_name - это находка. :-)
Шон Робертсон
15

Чтобы очистить имена стилей изображения в Drupal 7 через пользовательский интерфейс, попробуйте этот модуль contrib:

http://drupal.org/project/imagestyleflush

Это дает вам возможность сброса для каждого имени стиля изображения. Также имеется возможность сбрасывать все имена стилей изображения одновременно.

Как только модуль включен, в интерфейсе администратора перейдите сюда, чтобы очистить определенный стиль изображения:

admin/config/media/image-styles
tyler.frankenstein
источник
9

Это ошибка со стилями изображения. Если вы редактируете стиль изображения и редактируете уже существующий эффект, изображения не будут сбрасываться при обновлении. Однако, если вы удалите этот эффект (я не говорю об удалении стиля изображения - удалите эффект в пределах определенного стиля изображения) и создадите новый, изображения будут обновлены при обновлении.

laskiyt
источник
Функция image_effect_save () вызывает image_style_flush (), так что это не ошибка.
fietserwin
1
То, что что-то вызывается, не означает, что это не ошибка. Функциональности нет, когда это должно быть. Это определение ошибки ...
Киркланд
3

Есть еще один, более простой способ. Это скорее замена, чем обновление, но работает нормально. Вы можете создать новый стиль изображения на основе старого, но с новыми функциями (действиями с изображениями), которые вы пожелаете. Затем удалите старый стиль; На странице подтверждения удаления вы найдете выпадающий список с доступными стилями изображений, которые вы можете использовать для замены старого. Это стандартная функция замены стиля изображения, я полагаю.

WtheM
источник
3

Отредактируйте нужный вам стиль из admin / config / media / image-styles.

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

Джит
источник
1

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

 $style='full_content_width';
 $path=$node->my_img_field['und']['0']['uri'];
 $style_url = image_style_url($style, $path);
  print "<img src=".file_create_url($style_url)." >";
Matoeil
источник