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


58

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

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

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

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

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


1
Вы действительно нажимали кнопку « Обновить стиль» , когда находились на странице «Стиль изображения»? Я только что провел несколько тестов и убедился, что при щелчке по нему все сгенерированные файлы в каталоге файлов удаляются.
Juampy NR

Руководство правильное. Изменение стиля изображения, например, путем добавления, редактирования или удаления эффекта, стирает стиль изображения. Это может быть кеш вашего браузера (или другого промежуточного) или проблема с правами при удалении производных.
fietserwin

Я использовал собственную команду drush для регенерации изображений gist.github.com/typhonius/8599853
apostnikov

Ответы:



15

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

http://drupal.org/project/imagestyleflush

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

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

admin/config/media/image-styles

9

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


Функция image_effect_save () вызывает image_style_flush (), так что это не ошибка.
fietserwin

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

3

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


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)." >";

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.