Фото.

    Расположение фото в OpenCart.

    Наверное, когда разрабатывался OpenCart планировалось только одно фото в товаре, а потом, была добавлена возможность создавать несколько дополнительных.

    С тех пор, фото каждого товара делятся на две группы:

    • главное фото
    • дополнительные фото

    Главное фото имеет конкретное место расположение, его можно найти, удалить, заменить. Дополнительные фото свалены в кучу и выделить какое-либо конкретное из них - не возможно.

    Невозможно найти, заменить или удалить конкретное фото среди дополнительных.

    Файлы фото хранятся в под-папках image/catalog, и привязаны к товару через базу данных(БД), полу-ссылками:

    Здесь видно, что главное фото товара 2768 находится в папке image/catalog/palto и называется photo-main12.png

    Если изменить имя фото в папке image/catalog/palto, то его нужно изменить и в БД, иначе главное фото товара исчезнет на сайте.

    Самый важный раздел этой страницы.

    Папка palto содержит фото не одного товара 2768, а целой категории "Верхняя одежда" потому, что при создании товаров, плагин выполнял наше указание на вкладке "Категории и наценки":

    и закачивал фото товаров из категории, которая в  прайс листе обозначена как 23451 в папку image/catalog/palto

    Подробнее.

    Плагин прочитал из прайс листа товар. В товаре были ссылки на фото, плагин скачал эти фото. В товаре, в колонке "младшая категория" было написано "23451". Плагин нашел младшую категорию "23451" на вкладке "Категории и наценки" и увидел, что товар нужно положить в категорию магазина "Верхняя одежда", а фото закачать в папку image/catalog/palto

    Влияние на скорость работы сайта.

    По мнению экспертов, если папка с фото в OpenCart содержит более 1000 файлов, сайт начинает притормаживать в работе, поэтому в плагине реализованы три способа избежать переполнения папки.

    1. Больше разных папок для разных категорий. Не допускайте такой настройки:

    2. Разделите каждую папку на 10 под-папок:

    При включенной кнопке "Раскладывать по под-папкам...", плагин равномерно распределит фото по под-папкам: [0], [1], [2],...[9]

    Все фото товара 2768 попадут в папку palto/8/ потому, что цифра 8 - последняя в номере товара.

    3. В случае крайней необходимости, можно, используя "Инструменты", разделить каждую под-папку еще на 10 под-под-папок:

    Удаление фото.

    Файлы картинок (фото) являются самым большим потребителем дискового пространства сайта, папка image - самая большая папка на сайте, хотя не все фото, которые в ней хранятся, используются в карточках товаров.

    Ненужные, мусорные фото образуются в папке image после удаления фото в товарах.

    OpenCart удаляет только ссылку на файл фото в базе данных, а сам файл в папке не трогает, т.к. это фото теоретически может использоваться и в другом товаре.

    В плагине есть инструмент "Удалить из image неиспользуемые фото":

    Перед использованием инструмента следует сделать копию базы данных.

    Функция просматривает все товары в магазине и копирует в новую пустую папку только фото, которые связаны хотя бы с одним товаром. Таким образом, в новой папке image1 оказывается только нужные фото.

    Всю подготовку следует делать на ПК.

    1. Скачайте папку image на ПК и не удаляйте ее до конца работы
    2. Создайте папку image1 и скопируйте в нее все содержимое папки image
    3. Очистите папку image1/catalog от файлов с помощью консольной команды: del /s /q image1/catalog (восстановите удаленные файлы, не имеющие отношения к товарам: иконок, языков, категорий...)
    4. Закачайте папку image1 в корень сайта (рядом с папкой image)
    5. Запустите в работу инструмент "Удалить из image неиспользуемые фото"
    6. По окончанию работы инструмента, переименуйте папку image в image2, а папку image1 - в image
    7. Очистите папку image/cache/catalog
    8. Зайдите на сайт, убедитесь, что фото у товаров не пропали
    9. Удалите папку image2

    usergio Copyright © 2022