[Решено] Как обновить изображения imagecache при обновлении фотографии?

Главные вкладки

Аватар пользователя Positiff Positiff 24 января 2012 в 0:20

Не пойму как работает imagecache
Для того чтобы создалось Imagecache изображение использую
theme('imagecache', 'my_preset', $img_path);

Но если изображение было обновлено (например через тот же imagefield), при этом настроено что имя файла формируется из имени пользователя например user-<ИД пользователя>-picture.<расширение>. То есть оригинал просто обновляется.

Как при этом заставить imagecache обновить все созданные им изображения?

Комментарии

Аватар пользователя VasyOK VasyOK 24 января 2012 в 6:26

"Positiff" wrote:
Для того чтобы создалось Imagecache изображение использую
theme('imagecache', 'my_preset', $img_path);

Где вы это используете? Покажите сайт. И объясните в каком месте.

Аватар пользователя Positiff Positiff 26 января 2012 в 19:27

Дело не в кэше, а в том что автоматически физически не пересоздаются копии
Нашел функцию imagecache_image_flush(); - удаляем файл, удаляем все сохраненные копии. Новые создадутся заново сами.

Но остается проблема со стандартным поле imagefield
Пока решил проблему заменив стандартную маску имени файла:
[profile_picture-name]/user-[uid]-[profile_picture-name].[profile_picture-extension]
На:
[profile_picture-name]/user-[uid]-[profile_picture-filename].[profile_picture-extension]

Теперь при загрузке нового файла имя меняется и imagecache копии пересоздаются автоматически