Оригинал изображения. Не принято

1

Создаем руками (ну или автоматом каким) товар. В настройках магазина включена опция "Сохранять оригинал изображения". Далее

$product = new shopProduct($id);
$images = $product->getImages();
foreach($images as $image){
  .. бла-бла-бла...
}

Так вот если у $image получить

$original_path = shopImage::getOriginalPath($image);

То на выходе получим несуществующий файл. Не скажу уж на каком этапе ошибка возникает (при загрузке изображения, или может в какой другой момент), но факт остается фактом: опция включена, до оригинала не достучаться.

Если я где-то что-то недопонимаю - просьба поправить.

2 комментария

  • +3
    Михаил Ушенин Михаил Ушенин Webasyst 15 декабря 2016 13:19 #

    Оригинальный файл не существует, если изображение не модифицировалось во время или после загрузки. Если изображение модифицируется плагином во время загрузки файла или стандартными операциями поворота, то в этом случае выполняется метод shopImage::save(), который и сохраняет оригинальное изображение. После этого shopImage::getOriginalPath() вернёт путь к существующему файлу (в это время файл уже существует, т. к. в нём есть смысл, иначе пришлось бы хранить множество "оригинальных" изображений, которые ничем не отличались бы от "неоригинальных" и тем самым излишне расходовалось бы дисковое пространство сервера).

    Добавить комментарий

    Чтобы добавить комментарий, зарегистрируйтесь или войдите