Всем привет!
Есть такая проблема.
Прежде чем далать импорт товаров на сайт, пользователь удаляет все товары из магазина с помошью node_delete, но также удаляются и все файлы привязанные к этому товару, причем не только из БД, но и с ФС-мы сервера, т.е. при каждом импорте приходится загружать изображения заново, а их там не мало.
Вопрос! Каким образом можно обойти эту проблему, чтобы файлы физически оставались на месте?
Комментарии
решение: использовать hook_file_delete($file) (нужен модуль FileField)
наподобии токого:
<?php
if(file_exists($file->filepath))
{
$filepath=$file->filepath;
file_copy($file->filepath,file_directory_temp(),FILE_EXISTS_REPLACE);
$filesave=$file->filepath;
$file->filepath=$filepath;
imagecache_image_flush($file->filepath);
file_copy($filesave,$filepath,FILE_EXISTS_REPLACE);
}
?>
Для меня это тоже актуально. А где, конкретно использовать этот hook_file_delete($file)? Я не очень силен в РНР.
Этот хук нужно использовать в вашем модуле, например если модуль называется main, то функция в это модуле будет иметь вид main_file_delete($file), тем самым вы перехватите удаление файла и проведете необходимые операции