alexsoftdev

Модуль для Opencart - NeoSeo Удаление неиспользуемых картинок

Рекомендуемые сообщения

alexsoftdev    20
Модуль для Opencart - NeoSeo Удаление неиспользуемых картинок


Модуль для Opencart - NeoSeo Удаление неиспользуемых картинок


Выдача лицензии на Модуль для Opencart - NeoSeo Удаление неиспользуемых картинок происходит автоматически. При оформлении заказа, обязательно укажите доменное имя вашего сайта.

 

У вас накопилось так много изображений что требуется поменять тариф на хостинге? А все ли изображения используются? Возможно большая их часть была нужна когда-то, а теперь в ней уже нет необходимости?

Модуль «NeoSeo Удаление неиспользуемых изображений» позволяет проверить и удалить все изображения, которые уже не нужны, включая и их закешированные версии.

Учитываются следующие изображения:

1. Изображения товаров, включая дополнительные

2. Изображений категорий

3. Изображения производителей

4. Изображения банеров

5. Изображения из загрузок

6. Изображения из заказов

7. Изображения опций ( если есть )

8. Изображения из настроек

9. Изображения сертификатов

Если ссылка на изображение была добавлена вручную, например в html описание товара, то такие изображения не учитываются. Смотрите внимательно что вы удаляете и лучше всего изображения для описаний храните в отдельном каталоге.

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

Требования:

  1. PHP 5.3 и выше
  2. Opencart 1.5.*, 2.*
  3. VQMOD 2.4.1 и выше ( только для oc 1.5.* )
  4. IonCube Loader ( лицензия на домен )

Лицензия:

  • на ОДИН домен. Не на сайт, не на человека, не на студию. У вас несколько доменов подключены к одному сайту - значит вам нужно несколько лицензий.
  • на использование ( допускается установка клиентам при покупке лицензий под них ), но не на перепродажу.

Модули от NeoSeo это:

  1. Безупречное качество
  2. Дружественный интерфейс
  3. Богатая функциональность
  4. Высокое быстродействие
  5. Оперативная поддержка

Установка на примере опенкарт 2.Х ( для остальных смотрим инструкции внутри архива ):

  1. Запросите ключ лицензии по email license@***, при этом указав:
        - название сайта, на котором вы купили модуль. Например opencartforum.com
        - ваш ник на этом сайте, например, alexsoftdev
        - номер заказа на этом сайте, например 355446
        - основной домен сайта для активации лицензии, например lamoda.ru
        - тестовый домен сайта для разработки, например lamoda.***

  2. Распакуйте и загрузите ключ в корень сайта, рядом с robots.txt

  3. Если у вас правильно настроен и подключен ftp, то

    3.1. Установите архив целиком через Дополнения \ Установка расширений.

    Если же опенкарт настроен криво, то делаем это вручную:

    3.1. Распакуйте архив с модулем и загрузите содержимое папки upload на сайт

    3.2. В архиве есть файл install.xml, его переименовываете в install.ocmod.xml
         и загружаете через Дополнения \ Установка расширений

  4. Нажмите кнопку "Обновить" на страничке "Дополнения \ Модификаторы".

  5. Установите модуль посредством меню Дополнения \ Модули

  6. Установите права на просмотр модуля нужным пользователям

 

Обновление:

  1. Удалите модификатор
  2. Повторите установку

Также рекомендуем:

Также рекомендуем вам купить другие наши продукты, которые пригодятся в абсолютно любом магазине

  1. Водяной знак
  2. Резервная копия
  3. Ссылка на товар
  4. Источник заказа
  5. Товарный чек

 

Преимущества модулей от NeoSeo:

1-ое преимущество

- только практика, только проверенные и продуманные решения для рынка СНГ. Каждый наш продукт, будь-то Интернет-магазин в целом или отдельное решение (любой из написанных нами модулей) - это произведение многолетнего опыта разработки, которое постоянно дорабатывается по отзывам с рынка.


2-ое преимущество

- мы разрабатываем и внедряем наши продукты комплексно: дизайн, верстка, программирование, интернет-маркетинг. Полный цикл работ для получения результата: генерирование магазином продаж и создание вашей прибыли. Работая с нами вы не окажетесь в ситуации, где программисты не понимают, что от них требуют эти "надоедливые сеошники" и наоборот.

3-ье преимущество

- мы делаем и у вас всё работает. Если нужно что-то доработать, изменить или ещё кое-что улучшить - без проблем. Мы готовы сделать по вашему желанию всё, всё, что угодно. Сотрудничая с нашей студией, вы вправе рассчитывать на то, что благодаря нашему огромному опыту, вы получите в результате не только грамотную консультацию, но и лучшее программное решение на рынке.

 

Посмотреть работу модуля вы сможете тут:

https://shop.***/admin/

логин: admin

пароль: admin


  • Добавил
  • Добавлено
    10.11.2013
  • Категория
  • Системные требования
  • Метод активации
    Автоматическая активация
  • Ioncube Loader
    Требуется
  • OpenCart
    1.5.6.4
    1.5.6.3
    1.5.6.2
    1.5.6.1
    1.5.6
    1.5.4.1
    1.5.3.1
  • ocStore
    1.5.5.1.2
    1.5.5.1.1
    1.5.5.1
    1.5.4.1.2
    1.5.4.1.1
    1.5.4.1
    1.5.3.1
    1.5.2.1
    1.5.1.3
  • OpenCart.Pro, ocShop
    OcShop 1.5.6.4.х

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ukrline    3

Поставил на ocStore 1.5.4.1

При нажатии на "Добавить каталог" ничего не происходит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
wmx    8

Отличный модуль. Ocstore 1.5.5.1.1 всё работает, большое спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

Поставил на ocStore 1.5.4.1

При нажатии на "Добавить каталог" ничего не происходит.

Я только что протестировал на свежеустановленной ocStore 1.5.4.1 — все функции работают так же, как и на официально поддерживаемых версиях Opencart и ocStore. Можно уточнить, какой вы браузер используете, и его версию? Есть ли у вас возможность в этом браузере использовать отладочную консоль JavaScript?

 

Вообще, я отпишусь вам сейчас в ЛС.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ukrline    3

Да, проблема в браузере. В Хроме и Опере не сработало, а в Фаерфоксе все работает. Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ukrline    3

С некоторыми папками работает нормально, а с некоторыми выдает
 

SyntaxError: JSON.parse: unexpected character

OK

<b>Warning</b>: array_filter() expects parameter 1 to be array, boolean given in <b>/var/www/admin/data/www/site.com/admin/model/module/needlessimage.php</b> on line <b>33</b>

Возможно потому, что в тех папках по несколько тысяч картинок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

Обновил до версии 1.1.

  • Исправлена ошибка, из-за которой модуль мог не работать в браузерах Chrome и Opera.
  • Исправлена ошибка, из-за которой страница модуля могла получать от сервера не список файлов, а сообщение об ошибке «array_filter() expects parameter 1 to be array».

Для обновления никаких дополнительных телодвижений (кроме копирования файлов из папки upload из архива) делать не нужно. Все сохранённые настройки просматриваемых категорий сохранятся.

 

ukrline, спасибо за сообщения об ошибках.

 

wmx, спасибо за спасибо. )))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ingenerks    295

А как решен вопрос с тайм лимитом 30 секунд. Вываливается ошибка так как в магазине 8000 тыс. товаров, фоток примерно 24 000.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

А как решен вопрос с тайм лимитом 30 секунд.

Разве я могу ответить, как он решён, если он не решён?

 

Что за ошибка вываливается? Можно немного подробнее?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
gavi    134

Хороший и полезный модуль, спасибо.

Идея для платной версии: добавление папок в исключение и удаление пустых папок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Kuznec    10

А как решен вопрос с тайм лимитом 30 секунд. Вываливается ошибка так как в магазине 8000 тыс. товаров, фоток примерно 24 000.

Такая же проблема.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
barturin    1

ocstore 1.5.5.1 модуль пытается удалить все изображения. скажите что может быть не так в моей конфигурации

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

Он при проверке выводит в список для удаления изображения, которые используются? Можно на это как-нибудь посмотреть?

 

В любом случае, у него логика работы такая, что удаляться будут только те изображения, которые вы отметите для удаления.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
serrg    1

Хороший модуль, но есть один нюанс : модуль видит  "как ненужные" не только картинки товара но и все картинки из описания  (без разбора), Я чуть чуть бы и удалил бы все к чретовой бабушке ,хорошо через фтп перепроверил

Может есть какое нибудь решение ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

Да, я пока что не знаю нормального способа вытаскивать картинки из описаний продуктов/товаров, информационных страниц, css-файлов, js-файлов и т.п. В процессе работы проверяются только поля, предназначенные для хранения картинок. Это таблицы:

 

  • banner_image, поле «image»;
  • category, поле «image»;
  • download, поле «filename»;
  • manufacturer, поле «image»;
  • option_value, поле «image»;
  • order_download, поле «filename»;
  • product, поле «image»;
  • product_image, поле «image»;
  • setting, поле «value»;
  • voucher_theme, поле «image».

 

Я пока что могу только посоветовать не использовать модуль для тех каталогов, в которых есть картинки, используемые в описаниях, стилях, скриптах и пр. Сравнение, например, пути к картинке с содержимым того же поля «description» таблицы «information_description» можно организовать, но для этого нужно писать довольно-таки сложный код, на который у меня катастрофически не хватает времени сейчас. Всё же модуль бесплатный, и по этой причине я его идеально качественным сделать не могу.

 

Если кому-нибудь интересно поддержать и ускорить разработку, то можно переслать любую сумму на кошельки WebMoney: R419475063025, Z818926822205, E279845099658, U427974319977.

 

Ещё один способ: можно форкнуть репозиторий на GitHub и отправить пул-реквест с правками, которые, по вашему мнению, сделают модуль лучше.

 

Делать модуль платным и организовывать полноценную поддержку я не собираюсь ни в каких обстоятельствах. У меня есть опыт сопровождения платных программ. Это очень интересно, круто и познавательно. Но, чтобы нормально зарабатывать на этом, нужно заниматься только этой темой, вкладывать в рекламу и т.п., иначе профита — с гулькин х...вост. У меня есть более спокойные способы заработка.
 

 

модуль видит  "как ненужные" не только картинки товара но и...

 

Я уже подобный вопрос задавал: «Можно на это как-нибудь посмотреть?» Дело в том, что я воспроизвести такой момент в тестовой среде не смог (когда он предлагает удалить картинку, которая есть в таблицах и полях, список которых есть чуть выше в этом посте). Без этого, я никак не могу поправить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
serrg    1

Я уже подобный вопрос задавал: «Можно на это как-нибудь посмотреть?»

Вы имеете в виду дать вам доступ ?

Кстати у меня картинки сгрупированны по папкам , для каждого товара своя папка (имена папок - АРТИКУЛЫ) а в них картинки и главные, и дополнительные и из описания, т.е это такой алгоритм сохранения картинок у парсера

И вот от большого количества неудачных парсингов , скопилось большое количество ненужных картинок а также их копий

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

Если есть возможность дать доступ в админку (просмотр страницы товара + просмотр страницы модуля needlessimage) — было бы здорово. Для этого можно создать отдельную группу: «Система» → «Пользователи» → «Группы пользователей» → «Добавить». На этой странице можно выбрать в разделе «Разрешён просмотр» параметры: «catalog/product» и «module/needlessimage». После сохранения новой группы можно добавить пользователя: «Система» → «Пользователи» → «Пользователи» → «Добавить». Нужно выбрать для нового пользователя только что созданную группу, задать прочие поля и сохранить. После этого, если вам не сложно, отправьте адрес админки, логин/пароль созданного пользователя мне в личные сообщения (желательно ещё какие-нибудь контактные данные, чтобы можно было в онлайне с вами разговаривать — Skype, ICQ?).

 

Если, такой вариант не подойдёт, есть вариант с сохранением листинга файлов в текстовый файл и экспортом нужных полей БД в дамп:

1. откройте консоль и перейдите в папку «/image/data» сайта. Запустите:

Для Windows:

dir /s /b > file_listing.txt

Для *nix:

find . -name \* -fprint ./file_listing.txt

2. Откройте PhpMyAdmin, выберите БД, в которой живёт сайт, потом перейдите на вкладку «SQL» и введите такой запрос (если у ваших таблиц нет префикса, удалите из этого листинга все «oc_». Если у вас другой префикс, замените «oc_» на этот префикс):

SELECT * FROM (
	SELECT 'banner_image' as table_name, `image` as table_value FROM `oc_banner_image`
	UNION ALL SELECT 'category', `image` FROM `oc_category`
	UNION ALL SELECT 'download', `filename` FROM `oc_download` WHERE `filename` LIKE '%data/%'
	UNION ALL SELECT 'manufacturer', `image` FROM `oc_manufacturer`
	UNION ALL SELECT 'option_value', `image` FROM `oc_option_value`
	UNION ALL SELECT 'order_download', `filename` FROM `oc_order_download` WHERE `filename` LIKE '%data/%'
	UNION ALL SELECT 'product', `image` FROM `oc_product`
	UNION ALL SELECT 'product_image', `image` FROM `oc_product_image`
	UNION ALL SELECT 'setting', `value` FROM `oc_setting` WHERE `value` LIKE '%data/%' OR `value` LIKE '%data\\/%' OR `value` LIKE '%data\/%'
	UNION ALL SELECT 'voucher_theme', `image` FROM `oc_voucher_theme`
) tt
WHERE tt.`table_value` IS NOT NULL AND tt.`table_value` <> ''

Далее — «OK». На странице результатов запроса внизу (под списком записей) есть раздел «Использование результатов запроса». Выберите «Экспорт» (не перепутайте с вкладкой «Экспорт» вверху страницы). Откроется страница с настройками экспорта. Если в разделе «Формат» в выпадающем списке нет формата SQL (это PMA так иногда глючит), выберите формат YAML и нажмите «OK». Появится диалоговое окно с предложением сохранить куда-нибудь файл.

 

Для консоли MySQL я сейчас затруднюсь порядок действий описать, так как навскидку не помню, как там экспортировать из консоли.

 

3. Пришлите эти два файла в мне в ЛС на форуме и я попробую эмулировать в тестовом окружении вашу ситуацию. Желательно ещё, опишите какая операционная система используется на сервере, добавьте название и версию вебсервера (Apache, Nginx, Lighthttpd и т.п.), а так же — версию PHP.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

Кстати, я натыкался на проблему на хостинге «RU-CENTER» — у них случается так, что пользователь БД не имеет достаточно прав для создания представления. Так вот, суть в том, что NeedlessImage при установке пытается создать представление, которое основано на примерно похожем запросе, который я написал в предыдущем посте. Соответственно, раз представление не может быть создано, значит список используемых картинок невозможно получить. Значит все картинки в теории могут считаться неиспользуемыми. Хотя, вообще-то, MySQL в такой ситуации должен теоретически ругаться на то, что не найдена таблица «needlessimage_view»

 

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

SHOW GRANTS

В результате будет написано: «GRANT ALL PRIVILEGES (или список привилегий) ON blah-blah-blah». Если там есть «ALL PRIVILEGES» или «CREATE VIEW», то проблема не в этом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
profipc    0

модуль не работает с проверкой файлов более 5000 картинок в каталоге - обидно. может автор доработает модуль.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хотелось бы не только с папки data, а с корневой image

Так как у меня например image/Brand_archos

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nowm    11

Если честно, я не вижу смысла так делать. Image/data — это корневая папка во встроенном файловом менеджере Opencart. Если не делать никаких модификаций движка, то за пределы папки data невозможно выйти. Именно поэтому я писал модуль так, чтобы он тоже не выходил за пределы папки data.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
alf1976    2

У меня ошибка:

Notice: Error: CREATE VIEW command denied to user '*****'@'localhost' for table 'needlessimage_view'
Error No: 1142
CREATE OR REPLACE VIEW `needlessimage_view` AS SELECT DISTINCT `image` image FROM `banner_image` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `category` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `filename` image FROM `download` WHERE `filename` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `manufacturer` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `option_value` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `filename` image FROM `order_download` WHERE `filename` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `product` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `product_image` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `value` image FROM `setting` WHERE `value` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `voucher_theme` WHERE `image` LIKE 'data/%' in /var/www/***/data/www/***.ru/vqmod/vqcache/vq2-system_database_mysql.php on line 102

Кто нибудь сталкивался?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
alf1976    2

У меня ошибка:

Notice: Error: CREATE VIEW command denied to user '*****'@'localhost' for table 'needlessimage_view'
Error No: 1142
CREATE OR REPLACE VIEW `needlessimage_view` AS SELECT DISTINCT `image` image FROM `banner_image` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `category` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `filename` image FROM `download` WHERE `filename` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `manufacturer` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `option_value` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `filename` image FROM `order_download` WHERE `filename` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `product` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `product_image` WHERE `image` LIKE 'data/%' UNION SELECT DISTINCT `value` image FROM `setting` WHERE `value` LIKE 'data/%' UNION SELECT DISTINCT `image` image FROM `voucher_theme` WHERE `image` LIKE 'data/%' in /var/www/***/data/www/***.ru/vqmod/vqcache/vq2-system_database_mysql.php on line 102

Кто нибудь сталкивался?

Нашел причину сам: у юзера не хватало привелегий для работы с базой

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
chukcha    1 017

Имена файлов, директорий иногда могут иметь  апостроф в имени

 

Автору на заметку с исправленной моделью

 

needlessimage.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От fazli
      Как добавить пагинацию в админке со списком опций?
      Есть опция "Цвет товара", только открыть эту опцию в админке очень сложно — слишком большой список фото образцов цвета товара. В итоге, страница зависает на долго, и открывается только через минут 20. Может есть способ решить этот вопрос?
      Предполагаю, что если добавить пагинацию и выводить на странице к примеру по 20 опций все решится.
    • От tamarad
      Доброго времени суток!
      В osStore 2.1.0 в панели управления админки в разделе Последние заказы при нажатии на значок просмотра появляется сообщение об ошибке  "error undefined"(  как на скриншоте).
      Как исправить эту ошибку?
      Спасибо.

    • От dvabrata
      1. Добрый день, нужно сделать так, чтоб все изображения на сайте были в оригинальном качестве, сейчас же они размыты все. Знаю, что эта проблема решается только через хостера, поэтому нужно внести измениния там. 
      2. Адаптация под мобильные устройства (сейчас работает, но некоторые функции и значки отображаются не корректно, в основном это смещение текстов и наложений категорий друг на друга).
      3. Расположить значки соц сетей сверху (активными должны быть)
      4. Дополнительный логотип в шапке сайта (изображение с информацией)
      5. Подключить оплату картами робокасса
       
      Opencart 3.0.2 
      Хостинг на reg.ru (панель управления Plesk)
    • От legioner26
      Реализован вывод в список товаров артикулов и кодов, кому интересно пишите, реализую.

    • От zeus12
      Добрый вечер , кто может помочь ,у меня мало опыта с опенкарт, вопрос в следуюющем есть магазин на окстор 1.5.3.1 , хочу добавить столбец на странице товаров в админке сайта ,который будет выводить дату добавления товара , и можно будет сортировать товары с помощу этого столбца , что и как делать помогите!
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу