alexsoftdev

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

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

alexsoftdev    28
Модуль для 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    12

Поставил на 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    12

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

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

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

 

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

 

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

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


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

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

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


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

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

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

 

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

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


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

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

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

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


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

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

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

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


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

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

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


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

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

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


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

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

 

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

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


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

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

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

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


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

Да, я пока что не знаю нормального способа вытаскивать картинки из описаний продуктов/товаров, информационных страниц, 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    12

Если есть возможность дать доступ в админку (просмотр страницы товара + просмотр страницы модуля 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    12

Кстати, я натыкался на проблему на хостинге «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    12

Если честно, я не вижу смысла так делать. 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 084

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

 

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

 

needlessimage.zip

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


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

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

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

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

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

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

Войти

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

Войти


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

    • От VladG
      Движок ocStore Версия 1.5.5.1.2
      Где прописывать (изменять) Альты к картинкам
      Смотрел в карточках товара = не нашёл
    • От pavazar
      Приветствую, как таковых при заказе имен покупателя мне не нужно, я отказался от этого поля при заказе в пользу клиента, что бы удобнее и меньше заполнять.  Но теперь в админке мне нужно в меню заказы заместо колонки "Покупатель" что бы была колонка "Email"   Подскажите кто знает, куда что дописать что бы такая колонка появилась. Спасибо заранее.

    • От Desserro
      Доброго времени всем!
      Кто (подскажет/за деньги поможет) как в админке товаров,кнопку "посмотреть" сменить ее переход к товару- на переход к товару конкурента
      стандартно:
      <a target="_blank" href="<?php echo $product['href_shop']; ?>" data-toggle="tooltip" title="<?php echo $button_shop; ?>" class="btn btn-success"><i class="fa fa-eye"></i></a>
      http://screenshot.ru/upload/image/aEkM
      http://screenshot.ru/upload/image/aEke
       
      Вобще нужна полная доработка:
      1)Чтоб цену конкурента сразу вписывало в поле цена (цена товара) нужно для импорт/экспорт
      2)В том месте где вставлять ссылку конкурента сделать поле возможным для импорт/экспорт
      3) Заменить кнопку "Посмотреть" чтоб это была кнопка проверки ссылки на товар конкурента
      Жду вличку Ваших предложений
    • От Saglarita
      Здравствуйте уважаемые форумчане, 
      Мне кажется , у меня совсем безвыходное положение.
      Купила готовый сайт, мне передали пароли от хостинга и домена , пароли от админки сайта. 
      Теперь разработчик пропал и не отвечает на звонки. Я поменяла пароли везде, в том числе и в админке сайта , но теперь не могу зайти туда. Так как регистрация cms была не на мою почту, я не могу сбросить пароль. И возможно, что измененный пароль уже получил на свою почту тот самый разработчик.
      Только сейчас понимаю , что получилось очень глупо , но есть ли какой-то способ получить доступ к своему купленному сайту ? 
      Огромное спасибо всем, кто откликнется и уделит время моему вопросу !
       
    • От TigranS
      Здравствуйте коллеги,
       
      У меня такая ситуация:
      Заполнял базу данных php скриптом: имя товара, HTML-тег H1, Мета-тег Title 
      Например имя в базе данных: Фишер Прайс Книжка "Стишки для малышей"
      А в админке оно показывается урезано: Фишер Прайс Книжка
      Что то стринги в кавычках не показываются в админке.
      А если в админке в ручную написать кавычки то в базе данных в место кавычек будет показывать &quot; В такой ситуации появляется проблема поиска товара по имени в скрипте, что не удобно.
       
      Подскажите, как сделать чтобы в админке имя показывалось полностью?
       
       
       
  • Последние посетители   0 пользователей онлайн

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