Jump to content

Recommended Posts

Постановка задачи:

оптимизировать клиентскую часть, для сайта с несколькими сотнями товаров, с использованием мультиязычности и SEO (генерация страницы не более 0,2с).

В качестве пациента для экспериментов был взят OpenCart 1.5.5.1 с дефолтной базой.

Для поиска узких мест начнём с профилирования, анализируем результаты загрузки главной страницы (в листинге и карточке товара получаются аналогичные результаты):

Image.png

Как и ожидалось, почти половину времени тратиться на запросы к БД, вот и займемся этой частью, не будем экономить на спичках.

Простеньким скриптом собираем массив с данными выполнения запросов для анализа (ключами являются методы функций из которых делался запрос к БД, значениями кол-во таких запросов).

Image%20%5B1%5D.png

Видим, что точек вызова не так уж много - 15, но это не одинаковые запросы, для большинства повторений SQL код разный.

Править php код и SQL запросы, заниматься денормализацией БД не интересно, хочется более кастомного и простого решения с использованием кэша.

Основная проблема при его использовании - инвалидация, так:

по времени - сайт будет тормозить в момент обновления кэша

по событию - много правок в коде надо делать, не подходит...

зависимости? - легче движок переписать :)

Попробуем схитрить, записи в хэш таблице обновлять порциями не более N штук, по факту просмотра страницы, тем самым рассредоточив нагрузку. Время жизни тоже можно сделать разным, для разных типов данных (классифицируем по имени метода функции).

Хочется еще сократить кол-во запросов при обращение к кэшу, тэгирование излишне для нашей задачи, будем просто объединять в группы. Например: настройки, курсы валют, единицы измерения - то что от страницы к странице одинаково грузить пачкой, товары будут браться из кэша отдельно.

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

Дальше кодим и получаем вот такой результат (время/количество запросов):

2013-03-17_2335.png

Может еще можно что то глобально ускорить? повторный профайл:

2013-03-18_1014.png

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

Результат устраивает, довольно потираем руки :).

Выводы:

Данное решение позволяет в 4-7 раз увеличить производительность сайта! Можно ещё экспериментировать с настройкой групп, времени жизни и размером порций обновления кэша (N).

Файлы выкладываю на gist.

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

Полезные ссылки по теме:

- клиентская оптимизация OpenCart

- Отладчик для OpenCart

- профилирование PHP кода

- Кеширование на клиенте и на сервере (ШРИ в Москве 2012)

Желаю всем быстрых сайтов!

Edited by kikasso
  • +1 5

Share this post


Link to post
Share on other sites

Вы кажется забыли подключить файл статик.пхп

require_once(DIR_SYSTEM . 'library/static.php');

И еще забыли закрыть тег пхп в \system\library\static.php

И еще забыли в запросе к бд учесть, что не у всех префикс к базе - ос_

Но в итоге у меня все равно не заработало :-)

Notice: unserialize() [function.unserialize]: Error at offset 65531 of 65535 bytes in Z:\home\localhost\ocstore1521\system\database\mysql.php on line 95

Notice: Trying to get property of non-object in Z:\home\localhost\ocstore1521\index.php on line 70

Warning: Invalid argument supplied for foreach() in Z:\home\localhost\ocstore1521\index.php on line 70

Возможно дело в версии, хотя вообще странно, что вы взяли ту версию (1551), которую здесь почти никто не использует.

Share this post


Link to post
Share on other sites

Вы кажется забыли подключить файл статик.пхп

require_once(DIR_SYSTEM . 'library/static.php');

И еще забыли закрыть тег пхп в \system\library\static.php

И еще забыли в запросе к бд учесть, что не у всех префикс к базе - ос_

Но в итоге у меня все равно не заработало :-)

Возможно дело в версии, хотя вообще странно, что вы взяли ту версию (1551), которую здесь почти никто не использует.

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

тег <?php не закрываю по привычке, сейчас это уже общепризнанный стандарт раздел PSR-1

OpenCart 1.5.5.1 - т.к. выбрал его для своего проекта, лучше всего подходил по требованиям из коробки

а какая у вас версия? в хэш таблицу что нибудь пишется?

Share this post


Link to post
Share on other sites

1521

в таблице данные есть, с виду там все корректно, но на сайте кроме этих предупреждений перестали работать практически все модули, пропали картинки, пропал блок категорий, пропал фильтрпро, зато дебаггер показывает реальное уменьшение запросов до 1-2)

PS Поставил на 1541, завелось почти сразу, но заметил интересный баг - у меня там чистая сборка, и после добавления изменений из темы, перестали сохранятся настройки, т.е. ВООБЩЕ любые настройки, внесенные в админку, не сохраняются после нажатия кнопки сохранить. Если дропнуть таблицу кеша, то настройки начинают сохранятся. Такие дела :)

PPS Еще в админке нужно подключить static.php

Share this post


Link to post
Share on other sites

Вот и баги полезли)) Спасибо за помощь!

Проблему решаем отключением кэша для админки для этого:

- в файл \admin\config.php добавить строчку - define('IS_ADMIN', true);

- код формирования кэша обернуть в условие

if(!defined('IS_ADMIN')){
...
}

файлы на гист обновил

Share this post


Link to post
Share on other sites

Посмотрел 4 страницы категории по 15 товаров (всего 60) - размер таблицы кеша увеличился до 316 кб, не сильно ли жирно это? У меня в магазине скоро будет 30К товаров, таблица соответственно перевалит за сотню мб, правильно? БД не упадет с такими размерами таблиц?)

Share this post


Link to post
Share on other sites

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

установкой в массиве конфигруции значения expire = false, это еще пригодится и для данных, которые по определению не нужно кэшировать.

Для грубой отладки, можно использовать в mysql.php две строчки

var_dump($method. ' ('. $caller[2]['line']. ')'); //вывод места откуда вызывается запрос
var_dump($sql);//текст запроса

Share this post


Link to post
Share on other sites

Посмотрел 4 страницы категории по 15 товаров (всего 60) - размер таблицы кеша увеличился до 316 кб, не сильно ли жирно это? У меня в магазине скоро будет 30К товаров, таблица соответственно перевалит за сотню мб, правильно? БД не упадет с такими размерами таблиц?)

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

Share this post


Link to post
Share on other sites

Посмотрел 4 страницы категории по 15 товаров (всего 60) - размер таблицы кеша увеличился до 316 кб, не сильно ли жирно это? У меня в магазине скоро будет 30К товаров, таблица соответственно перевалит за сотню мб, правильно? БД не упадет с такими размерами таблиц?)

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

Здравствуйте, каким образом настроить кеширование только емких запросов?

Share this post


Link to post
Share on other sites

Интересует такой вопрос. Почему если отключить method, то кеш все равно пишется в БД? По логике вещей ведь кешировать нужно только то что разрешено. И хотелось бы понять причину по которой данное решение не совместимо с некоторыми дополнениями.

Share this post


Link to post
Share on other sites

к серверной оптимизации так же можно отнести, настройку HTTP заголовков Last-Modified и If-Modified-Since, это позволит снизить нагрузку на сервер и упростит жизнь поисковым ботам (ускорит индексацию). Подробнее что это такое и как готовить, уже обсуждалось на форуме

Share this post


Link to post
Share on other sites

kikasso, большое спасибо! Молодец, на maxystore 1.5.5.1 с товаром +/- 2тыс ускорение в 4 раза точно!!! 

Share this post


Link to post
Share on other sites

Решение кончено имеет право на жизнь, только в MySQL уже есть кэширование

И неразумно писать PHP-костыли, когда есть нативные вещи, которые работают эффективнее. И скорее всего уже защищено от тормозов при устаревании кэша. Надо лишь настроить сервер.

 

SQL-кэш к стати куда быстрее файлового работает, так как в нем заключена вся мощь СУБД.

  • +1 2

Share this post


Link to post
Share on other sites

Решение кончено имеет право на жизнь, только в MySQL уже есть кэширование

И неразумно писать PHP-костыли, когда есть нативные вещи, которые работают эффективнее. И скорее всего уже защищено от тормозов при устаревании кэша. Надо лишь настроить сервер.

 

SQL-кэш к стати куда быстрее файлового работает, так как в нем заключена вся мощь СУБД.

 

Если вы свою теорию проверите на практике, поделитесь успехами - интересно как можно обойти кэширование запросов, например, содержимого корзины...? и ведь если выполнялось пол тысячи запросов к БД при обращении к странице, так пол тысячи выполняться и будет при включено MySQL кэше... да быстрее, но вопрос на сколько? поэтому очень интересна обоснованность фразы "неразумно писать PHP-костыли, когда есть нативные вещи, которые работают эффективнее"

 

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

 

За ссылку  на информацию по MySQL кэшу спасибо, первый раз слышу, никогда не использовал!

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

А давайте вы произведете замеры. Пожалуй так будет справедливо. Тем более, что у вам прекрасные инструменты. Изменения описанные в статье внесены в актуальную сборку ocStore в оригинальном OpenCart их нет. OpenCart vs OcStore. Самому интересно в конкретных цифрах.

  • +1 1

Share this post


Link to post
Share on other sites

А давайте вы произведете замеры. Пожалуй так будет справедливо. Тем более, что у вам прекрасные инструменты. Изменения описанные в статье внесены в актуальную сборку ocStore в оригинальном OpenCart их нет. OpenCart vs OcStore. Самому интересно в конкретных цифрах.

 

произведу, только если вы обоснуете фразу "неразумно писать PHP-костыли, когда есть нативные вещи, которые работают эффективнее", говоря что с встроенным кэшем в MySQL будет работать быстрее

вы со мной делитесь интересующей меня информацией, я вам помогаю с интересующими цифрами по производительности - вот так справедливо:)

Share this post


Link to post
Share on other sites

произведу, только если вы обоснуете фразу "неразумно писать PHP-костыли, когда есть нативные вещи, которые работают эффективнее", говоря что с встроенным кэшем в MySQL будет работать быстрее

вы со мной делитесь интересующей меня информацией, я вам помогаю с интересующими цифрами по производительности - вот так справедливо :)

Одна из причин в том, что кэш MySQL располагается преимущественно в памяти, а не в файлах, таблицах и т.п.

Использование Memcached будет не хуже, но сам Memcached занимает место в памяти, да и для общения с ним нужно выполнять дополнительные вычисления/преобразования данных. Что хранить в кэше, а что нет, MySQL определяет не только по времени устаревания кэша. Там учитывается и частота запросов, и трудоемкость. Таким образом MySQL хранит в кэше то, что оптимально там хранить, а не самое свежее.

Минус SQL-кэша в том, что запросы с NOW(), CURRENT_TIMESTAMP() и т.д. не кэшируются, UPDATE INSERT таблицы стирает связанный с таблицей кэш. Также ключ кэша формируются на основании всего запроса. И два запроса, отличающиеся на пробел MySQL посчитает разными и результаты второго из кэша не возьмет.

При помощи PHP можно обогнать MySQL-кэш, но для этого надо ключ делать не просто md5($sql), а что-то похитрее. Ну и кэшировать самые тяжелые и частые запросы.

Share this post


Link to post
Share on other sites

 

Также можно загружать данные не в цикле, а одним запросом. Нужно сначала собрать массив найденных product_id, а потом в запросе использовать условие p.product_id IN(...).

Оказалось что лучше 20 запросов на каждый товар нежели один.

Суммарное время выполнения по очереди 20 getProduct оказалось почти в 5 раз быстрее чем один запрос с p.product_id IN(...).

  • +1 2

Share this post


Link to post
Share on other sites

Оказалось что лучше 20 запросов на каждый товар нежели один.

Суммарное время выполнения по очереди 20 getProduct оказалось почти в 5 раз быстрее чем один запрос с p.product_id IN(...).

Полностью согласен. Я был удивлен, когда узнал, что p.product_id IN(...) не использует индексы.

В ocStore IN не используется.

  • +1 2

Share this post


Link to post
Share on other sites

ну что значит оказалось?

оказалось на вашей базе и вашей конфигурации. только и всего

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Одна из причин в том, что кэш MySQL располагается преимущественно в памяти, а не в файлах, таблицах и т.п.

Использование Memcached будет не хуже, но сам Memcached занимает место в памяти, да и для общения с ним нужно выполнять дополнительные вычисления/преобразования данных. Что хранить в кэше, а что нет, MySQL определяет не только по времени устаревания кэша. Там учитывается и частота запросов, и трудоемкость. Таким образом MySQL хранит в кэше то, что оптимально там хранить, а не самое свежее.

Минус SQL-кэша в том, что запросы с NOW(), CURRENT_TIMESTAMP() и т.д. не кэшируются, UPDATE INSERT таблицы стирает связанный с таблицей кэш. Также ключ кэша формируются на основании всего запроса. И два запроса, отличающиеся на пробел MySQL посчитает разными и результаты второго из кэша не возьмет.

При помощи PHP можно обогнать MySQL-кэш, но для этого надо ключ делать не просто md5($sql), а что-то похитрее. Ну и кэшировать самые тяжелые и частые запросы.

 

Из этих рассуждений вы строите свои доводы? Не убедительно!

Как можно говорить об эффективности оптимизации не делая замеры?

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

  • +1 1

Share this post


Link to post
Share on other sites

Из этих рассуждений вы строите свои доводы? Не убедительно!

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

  • +1 2

Share this post


Link to post
Share on other sites

Мы пишем модули, пытаемся писать их оптимально, ориентируясь на некий сферический магазин в вакууме.
Конкретные базы серверы и т.д. оказываются тоже оторванными от реальности. Что касается предоставить данные, так я вам верю, чего вас проверять?
 
Конечно всегда много если: нельзя под себя настраивать MySQL, нельзя установить Memcache или Sphinx, объем памяти, диска.
Любое решение может подходить или не подходить. Я просто против велосипедов, которые вводят в заблуждение.
Вот это например что за решение? https://github.com/shaman/opencart-mysql-cache


kikasso, я писал: Что хранить в кэше, а что нет, MySQL определяет не только по времени устаревания кэша. Там учитывается и частота запросов, и трудоемкость.

 

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

  • +1 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • By sitecreator
      WEBP работает везде просто и надежно !
      Никакой зависимости от хостера в плане создания и вывода WEBP! Работает WEBP везде без всяких условий!   Не надо спрашивать будет ли работать на вашем хостинге WEBP. Ответ простой - у вас будет WEBP! В данном решении предусмотрено практически все, включая полную совместимость с ускорителями Jet Cache, Turbo.
      WEBP (сжатый формат графики) можно теперь получить практически у любого хостера.
      Не имеет значения есть ли поддержка WEBP у вашего хостера или нет.
      Такая поддержка WEBP встроена в модуль Компрессор и работает на любой Linux и Windows.
       
      Поддерживается любой современный браузер, способный отображать WEBP.
       
      Благодаря современному формату изображений WEBP удается снизить общий вес изображений в среднем в 2-3 раза на странице, и тем самым выполнить рекомендации Гугла.
       

       
       
      Мастерам большие СКИДКИ! Оптимизация (сжатие) изображений - Гугл PageSpeed одобряет.
      Теперь настоящий комбайн для работы с изображениями.  Управление белыми полями изображений, фоном, размером, обрезкой картинок, отдельное управление изображениями для яндекс-маркета и т.д.
      Индивидуальные настройки для групп изображений ("всплывающие", "thumb-миниатюры").
      "Компрессор" (Image Compressor) обеспечит максимальное сжатие изображений Opencart на обычном хостинге (функция proc_open php нужна для работы mozjpeg, optipng; но создание WEBP в режиме "по расписанию" не требует ее наличия в php, на котором работает ваш сайт)  и всегда на VDS.   Нужные функции (proc_open) вы можете сами включать даже на обычном хостинге (некоторые это позволяют, но не все хостеры - см. ниже).
      Установка софта для сжатия изображений Опенкарт (mozjpeg и  optiPNG, WEBP) полностью автоматизирована в два клика на обычный хостинг и VDS (не требует знаний Linux).
       
      Вся магия здесь:
       

       
      Для разработчиков и веб-мастеров, устанавливающих модуль своим заказчикам действует особая (низкая) цена
       
      Демо 2 (клиентская часть): http://watermark.sitecreator.pro
      Демо 2 (админка): http://watermark.sitecreator.pro/admin/index.php?route=extension/module/watermark_by_sitecreator
       
      Демо 1.5 (клиентская часть): http://watermark15.sitecreator.pro
      Демо 1.5 (админка): http://watermark15.sitecreator.pro/admin/index.php?route=module/watermark_by_sitecreator
       
      пользователь: DEMO
      пароль: DEMO
       
      совместим со всеми сборками версий движков Opencart (ocstore, opencart.pro, русская сборка и т. д.) 1.5 и 2+ (2.0, 2.1, 2.2, 2.3)
      Файлы движка не заменяются (используется vqmod или ocmod для соответствующих веток движка)
      Для Opencart 3.0  версия здесь: https://opencartforum.com/files/file/6148-kompressor-izobrazheniy-watermark-bonusy-dlya-opencart-30/
       

       
      Модуль Сжатия Изображений Opencart по максимуму использует возможности imagick (если установлен), что уже позволяет получить лучшие по качеству и размеру изображения.  Кроме того, в отличие от дефолтного GD использование imagick позволяет уменьшить размер файла за счет очистки изображения от ненужной информации.
       
      Как избежать тормозов во время создания сжатых изображений?

      При обновлении до версии 1.12.6+ нужно проявить внимание! Внедрена защита "от дурака".
       
       
      Максимум настроек водяного знака Opencart (watermark): его позиция, поворот, прозрачность водяного знака и т. д.
      Можно настроить ограничение (запретить применять) для водяного знака как по имени файла/папок, так и по  размерам.
      Также можно добавить к имени файла nowatermark , и на данное изображение водяной знак не будет накладываться.
      Адаптивный ресайз (resize, обрезка) изображения.
       
       
      Вот так работает WEBP Lazy Load модуля Компрессор.
      Гугл одобряет!
       

       
       
      Как включить нужную для максимального сжатия функцию?
       
       
       
       
      Основной функционал модуля - это добавление водяного знака на изображения и другие настройки изображения (ресайз, белые поля и фон, и т. д. ).  Как бонус - это использование автоматического  супер-сжатия изображений. Но для многих сжатие изображений в Opencart - это самый важный функционал.
      С версии 1.1.0 получаете максимальное сжатие для JPEG, PNG благодаря еще поддержке WebP. 
      Использование WebP задумывалось как компромиссное решение когда нет возможности использовать mozjpeg.  А mozjpeg сейчас удалось установить практически везде.
       
      Проверенные хостеры, которые поддерживают mozjpeg, OptiPNG,   WebP , т. е. возможно суперсжатие в полной мере.
      Это не означает, что другие не поддерживают, просто тут устанавливали уже  модуль и мне о названии хостера  сообщил заказчик.
      В зоне RU  99.9% хостеров обеспечат максимальное сжатие, в зоне UA показатель поменьше - на уровне 90...95%
      Информация по части WEBP является устаревшей, т.к. этот формат с версии 1.16 возможно создавать практически везде в режиме "по расписанию" (cron).
       
       
      Совместим с Opencart, Ocstore, opencart.pro и сборок версии 1.5.* и 2+ (2.0, 2.1, 2.2, 2.3)
      требования: php 5.6+ (рекомендуемый минимум - это 5.6; 7.0, 7.1, 7.2)   Версию php у хостера вы можете изменить самостоятельно через панель управления. 
      Ioncube Loader  (крайне рекомендуется 10+)
      Касательно версии php.  Рекомендованный минимум (5.6) есть у любого хостера и на этой версии работает любой движок Opencart.
      Ioncube loader 10+ есть сейчас, как минимум, у 99% хостеров (у всех нормальных), и все меньше остается нерадивых хостеров, которые не могут обновить старую версию Ioncube loader 6 (2-х летней давности).
      Просьба учесть, что при минимальных требованиях модуль работать будет, но не все функции могут быть доступны.  Не вижу смысла поддерживать совместимость с допотопным серверным софтом в ущерб развитию модуля.
       
       
      Модуль совместим с ускорителями/кешерами Jet Cache и Turbo и, скорее всего, с остальными.
      Модуль не заменяет файлы , используется ocmod для движка 2.*,  аналогично в движке 1.5.* используется vqmod с 1.5.1 версии модуля. 
      Просьба обратить внимание до установки модуля на то, не изменен ли код напрямую (или за счет модификаторов) в файлах:
       
      system/image.php, catalog/tool/image.php, admin/tool/image.php.
       
      Не гарантируется нормальная работа если у вас в движке были сделаны прямые (или за счет модификаторов) изменения кода указанных выше файлов.
      Желательно чтобы эти файлы были такими же как в дистрибутиве движка.  Но даже в случае их изменения редко когда возникают проблемы, и они решаемые (обращайтесь к автору).
       
      Пожалуйста, лицензию запрашивайте, написав мне на почту или в личку.
       
      Пояснение к лицензированию.
      Лицензия предоставляется для одного домена с конкретным доменным именем (без возможности переноса на другой домен).
      Приобретая модуль вы соглашаетесь с принципом лицензирования. 
       
      Подробно о лицензировании читайте здесь.
       
      Супер-сжатие выполняется согласно рекомендациям Гугла PageSpeed Insights и позволяет добиться снижения размера файлов изображений и, как следствие, уменьшения трафика.
      Google  PageSpeed Insights благодаря этому дает более высокую оценку вашему сайту в баллах.
       
      mozjpeg, optipng необязателен к установке, это лишь рекомендация для достижения максимального сжатия.
      Процесс установки этого софта сводится к нажатию двух кнопок в модуле.
      Это работает как на обычном хостинге, так и на VDS.
       
      Самая распространенная "ошибка" после установки.
       
       
       
       
       
      Инструкция для самостоятельной сборки серверного софта оставлена для любознательных. Не нужно ее пугаться и не нужно повторять все эти действия.
      Модуль Компрессор уже содержит средства диагностики и вывода информации.  Пользуйтесь ими (вкладка "сервис").
       
       
      Инструкция по установке дополнительного софта для WINDOWS :
      (для локальной машины разработчика, например. ).
       
       
       
      Установку модуля "Сжатие изображений плюс водяной знак" осуществляет покупатель самостоятельно или его доверенное лицо.
       

       
       

       

       
       
      Модуль умеет накладывать водяной знак и сжимать изображения, которые вставлены по прямым ссылкам в описании товара.  Данная возможность предоставлена в качестве бонуса, но не как обязательная часть, на некоторых шаблонах редко возможна несовместимость (не будет работать) с данной функцией (может потребоваться адаптация) поскольку шаблон может кардинально изменить существующий контроллер. Для SEO CMS есть отдельное решение.
       
       
      Модуль умеет оптимизировать (сжимать) все изображения ваших шаблонов и логотип сайта.  Это в дополнение к сжатию всех изображений, проходящих через движок (картинки товаров, категорий, баннеры и т. д. и т. п.)
       

       
       
       
      Для SEO CMS сделано решение, позволяющее также использовать супер-сжатие по максимуму и водяной знак в этом модуле.  Сделано как отдельное дополнение к модулям "Компрессор" (Image Compressor) и SEO CMS.  Такое решение обусловлено тем, что указанный модуль использует свою библиотеку  и модели для работы с изображениями.
      Сжаты будут даже отображаемые оригиналы, вставленные по прямым ссылкам в статьях.  И на оригиналы можно накладывать водяной знак и защищать их от кражи.
      Любые изменения с оригиналами обратимы. Например, можно менять водяной знак.
       
      Решение здесь: SEO CMS mod for Image Compressor & Watermark
       
       
       
      Решение по работе с фоном исходных изображений здесь:
      Можно обрезать, добавлять фон, делать аккуратные рамки цветом фона.
      Данное решение реализовано как плагин к модулю "Компрессор", т. е. все настройки делаются в модуле "Компрессор".
       
       
      Совместимость со специфическими модулями и модификаторами, 
      (затрагивающими системную библиотеку и модель image.php)
       
       
      ПОДДЕРЖКА от автора модуля:

       
       
      Самодиагностика и вывод полезной информации - это первое средство если у вас "ничего не работает".
       

      Если у вас "не сжимает".  Некоторые серверы (нередко хостер ukraine.com.ua ) кешируют изображения на сервере. Ищите это в настройках панели управления хостера "ускорение".  Нужно просто отключить это кеширование. Подробнее описал в поддержке модуля:
       
       
      А что это гугл пишет "изменение размера .... уменьшит"?

       
       

      Админ БАР для управления изображениями (очистка кеша только для конкретной страницы)
      и СЖАТИЕ изображений по прямым ссылкам и из CSS.
       
      Тест Тест
       
       
       
       
       
       
       


      info.php

    • By sitecreator
      2 490.00 руб
      Скачать/Купить дополнение


      Image COMPRESSOR & Watermark & WebP & Lazy Load etc. by Sitecreator
      WEBP работает везде просто и надежно !
      Никакой зависимости от хостера в плане создания и вывода WEBP! Работает WEBP везде без всяких условий!   Не надо спрашивать будет ли работать на вашем хостинге WEBP. Ответ простой - у вас будет WEBP! В данном решении предусмотрено практически все, включая полную совместимость с ускорителями Jet Cache, Turbo.
      WEBP (сжатый формат графики) можно теперь получить практически у любого хостера.
      Не имеет значения есть ли поддержка WEBP у вашего хостера или нет.
      Такая поддержка WEBP встроена в модуль Компрессор и работает на любой Linux и Windows.
       
      Поддерживается любой современный браузер, способный отображать WEBP.
       
      Благодаря современному формату изображений WEBP удается снизить общий вес изображений в среднем в 2-3 раза на странице, и тем самым выполнить рекомендации Гугла.
       

       
       
      Мастерам большие СКИДКИ! Оптимизация (сжатие) изображений - Гугл PageSpeed одобряет.
      Теперь настоящий комбайн для работы с изображениями.  Управление белыми полями изображений, фоном, размером, обрезкой картинок, отдельное управление изображениями для яндекс-маркета и т.д.
      Индивидуальные настройки для групп изображений ("всплывающие", "thumb-миниатюры").
      "Компрессор" (Image Compressor) обеспечит максимальное сжатие изображений Opencart на обычном хостинге (функция proc_open php нужна для работы mozjpeg, optipng; но создание WEBP в режиме "по расписанию" не требует ее наличия в php, на котором работает ваш сайт)  и всегда на VDS.   Нужные функции (proc_open) вы можете сами включать даже на обычном хостинге (некоторые это позволяют, но не все хостеры - см. ниже).
      Установка софта для сжатия изображений Опенкарт (mozjpeg и  optiPNG, WEBP) полностью автоматизирована в два клика на обычный хостинг и VDS (не требует знаний Linux).
       
      Вся магия здесь:
       

       
      Для разработчиков и веб-мастеров, устанавливающих модуль своим заказчикам действует особая (низкая) цена
       
      Демо 2 (клиентская часть): http://watermark.sitecreator.pro
      Демо 2 (админка): http://watermark.sitecreator.pro/admin/index.php?route=extension/module/watermark_by_sitecreator
       
      Демо 1.5 (клиентская часть): http://watermark15.sitecreator.pro
      Демо 1.5 (админка): http://watermark15.sitecreator.pro/admin/index.php?route=module/watermark_by_sitecreator
       
      пользователь: DEMO
      пароль: DEMO
       
      совместим со всеми сборками версий движков Opencart (ocstore, opencart.pro, русская сборка и т. д.) 1.5 и 2+ (2.0, 2.1, 2.2, 2.3)
      Файлы движка не заменяются (используется vqmod или ocmod для соответствующих веток движка)
      Для Opencart 3.0  версия здесь: https://opencartforum.com/files/file/6148-kompressor-izobrazheniy-watermark-bonusy-dlya-opencart-30/
       

       
      Модуль Сжатия Изображений Opencart по максимуму использует возможности imagick (если установлен), что уже позволяет получить лучшие по качеству и размеру изображения.  Кроме того, в отличие от дефолтного GD использование imagick позволяет уменьшить размер файла за счет очистки изображения от ненужной информации.
       
      Как избежать тормозов во время создания сжатых изображений?

      При обновлении до версии 1.12.6+ нужно проявить внимание! Внедрена защита "от дурака".
       
       
      Максимум настроек водяного знака Opencart (watermark): его позиция, поворот, прозрачность водяного знака и т. д.
      Можно настроить ограничение (запретить применять) для водяного знака как по имени файла/папок, так и по  размерам.
      Также можно добавить к имени файла nowatermark , и на данное изображение водяной знак не будет накладываться.
      Адаптивный ресайз (resize, обрезка) изображения.
       
       
      Вот так работает WEBP Lazy Load модуля Компрессор.
      Гугл одобряет!
       

       
       
      Как включить нужную для максимального сжатия функцию?
       
       
       
       
      Основной функционал модуля - это добавление водяного знака на изображения и другие настройки изображения (ресайз, белые поля и фон, и т. д. ).  Как бонус - это использование автоматического  супер-сжатия изображений. Но для многих сжатие изображений в Opencart - это самый важный функционал.
      С версии 1.1.0 получаете максимальное сжатие для JPEG, PNG благодаря еще поддержке WebP. 
      Использование WebP задумывалось как компромиссное решение когда нет возможности использовать mozjpeg.  А mozjpeg сейчас удалось установить практически везде.
       
      Проверенные хостеры, которые поддерживают mozjpeg, OptiPNG,   WebP , т. е. возможно суперсжатие в полной мере.
      Это не означает, что другие не поддерживают, просто тут устанавливали уже  модуль и мне о названии хостера  сообщил заказчик.
      В зоне RU  99.9% хостеров обеспечат максимальное сжатие, в зоне UA показатель поменьше - на уровне 90...95%
      Информация по части WEBP является устаревшей, т.к. этот формат с версии 1.16 возможно создавать практически везде в режиме "по расписанию" (cron).
       
       
      Совместим с Opencart, Ocstore, opencart.pro и сборок версии 1.5.* и 2+ (2.0, 2.1, 2.2, 2.3)
      требования: php 5.6+ (рекомендуемый минимум - это 5.6; 7.0, 7.1, 7.2)   Версию php у хостера вы можете изменить самостоятельно через панель управления. 
      Ioncube Loader  (крайне рекомендуется 10+)
      Касательно версии php.  Рекомендованный минимум (5.6) есть у любого хостера и на этой версии работает любой движок Opencart.
      Ioncube loader 10+ есть сейчас, как минимум, у 99% хостеров (у всех нормальных), и все меньше остается нерадивых хостеров, которые не могут обновить старую версию Ioncube loader 6 (2-х летней давности).
      Просьба учесть, что при минимальных требованиях модуль работать будет, но не все функции могут быть доступны.  Не вижу смысла поддерживать совместимость с допотопным серверным софтом в ущерб развитию модуля.
       
       
      Модуль совместим с ускорителями/кешерами Jet Cache и Turbo и, скорее всего, с остальными.
      Модуль не заменяет файлы , используется ocmod для движка 2.*,  аналогично в движке 1.5.* используется vqmod с 1.5.1 версии модуля. 
      Просьба обратить внимание до установки модуля на то, не изменен ли код напрямую (или за счет модификаторов) в файлах:
       
      system/image.php, catalog/tool/image.php, admin/tool/image.php.
       
      Не гарантируется нормальная работа если у вас в движке были сделаны прямые (или за счет модификаторов) изменения кода указанных выше файлов.
      Желательно чтобы эти файлы были такими же как в дистрибутиве движка.  Но даже в случае их изменения редко когда возникают проблемы, и они решаемые (обращайтесь к автору).
       
      Пожалуйста, лицензию запрашивайте, написав мне на почту или в личку.
       
      Пояснение к лицензированию.
      Лицензия предоставляется для одного домена с конкретным доменным именем (без возможности переноса на другой домен).
      Приобретая модуль вы соглашаетесь с принципом лицензирования. 
       
      Подробно о лицензировании читайте здесь.
       
      Супер-сжатие выполняется согласно рекомендациям Гугла PageSpeed Insights и позволяет добиться снижения размера файлов изображений и, как следствие, уменьшения трафика.
      Google  PageSpeed Insights благодаря этому дает более высокую оценку вашему сайту в баллах.
       
      mozjpeg, optipng необязателен к установке, это лишь рекомендация для достижения максимального сжатия.
      Процесс установки этого софта сводится к нажатию двух кнопок в модуле.
      Это работает как на обычном хостинге, так и на VDS.
       
      Самая распространенная "ошибка" после установки.
       
       
       
       
       
      Инструкция для самостоятельной сборки серверного софта оставлена для любознательных. Не нужно ее пугаться и не нужно повторять все эти действия.
      Модуль Компрессор уже содержит средства диагностики и вывода информации.  Пользуйтесь ими (вкладка "сервис").
       
       
      Инструкция по установке дополнительного софта для WINDOWS :
      (для локальной машины разработчика, например. ).
       
       
       
      Установку модуля "Сжатие изображений плюс водяной знак" осуществляет покупатель самостоятельно или его доверенное лицо.
       

       
       

       

       
       
      Модуль умеет накладывать водяной знак и сжимать изображения, которые вставлены по прямым ссылкам в описании товара.  Данная возможность предоставлена в качестве бонуса, но не как обязательная часть, на некоторых шаблонах редко возможна несовместимость (не будет работать) с данной функцией (может потребоваться адаптация) поскольку шаблон может кардинально изменить существующий контроллер. Для SEO CMS есть отдельное решение.
       
       
      Модуль умеет оптимизировать (сжимать) все изображения ваших шаблонов и логотип сайта.  Это в дополнение к сжатию всех изображений, проходящих через движок (картинки товаров, категорий, баннеры и т. д. и т. п.)
       

       
       
       
      Для SEO CMS сделано решение, позволяющее также использовать супер-сжатие по максимуму и водяной знак в этом модуле.  Сделано как отдельное дополнение к модулям "Компрессор" (Image Compressor) и SEO CMS.  Такое решение обусловлено тем, что указанный модуль использует свою библиотеку  и модели для работы с изображениями.
      Сжаты будут даже отображаемые оригиналы, вставленные по прямым ссылкам в статьях.  И на оригиналы можно накладывать водяной знак и защищать их от кражи.
      Любые изменения с оригиналами обратимы. Например, можно менять водяной знак.
       
      Решение здесь: SEO CMS mod for Image Compressor & Watermark
       
       
       
      Решение по работе с фоном исходных изображений здесь:
      Можно обрезать, добавлять фон, делать аккуратные рамки цветом фона.
      Данное решение реализовано как плагин к модулю "Компрессор", т. е. все настройки делаются в модуле "Компрессор".
       
       
      Совместимость со специфическими модулями и модификаторами, 
      (затрагивающими системную библиотеку и модель image.php)
       
       
      ПОДДЕРЖКА от автора модуля:

       
       
      Самодиагностика и вывод полезной информации - это первое средство если у вас "ничего не работает".
       

      Если у вас "не сжимает".  Некоторые серверы (нередко хостер ukraine.com.ua ) кешируют изображения на сервере. Ищите это в настройках панели управления хостера "ускорение".  Нужно просто отключить это кеширование. Подробнее описал в поддержке модуля:
       
       
      А что это гугл пишет "изменение размера .... уменьшит"?

       
       

      Админ БАР для управления изображениями (очистка кеша только для конкретной страницы)
      и СЖАТИЕ изображений по прямым ссылкам и из CSS.
       
      Тест Тест
       
       
       
       
       
       
       


      info.php

      Добавил sitecreator Добавлено 26.08.2017 Категория Кэширование, сжатие, ускорение Системные требования php 5.6+, Ioncube Loader (обязательно версия: 10+) ) Сайт разработчика https://sitecreator.ru/ Старая цена 2000 Метод активации По запросу в ЛС
      По запросу на почту Ioncube Loader Требуется OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.5.1
      1.5.5
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      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 Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х Обращение к серверу разработчика Нет
      Да  
    • By TimRod
      850.00 руб
      Скачать/Купить дополнение


      OCCleaner - очистка и оптимизация
      OCCleaner - профессиональный инструмент очистки и оптимизации Вашего магазина OpenCart. 

      Основные возможности:

      - Очистка системного мусора и временных файлов;
      - Поиск и удаление ненужных изображений (умный алгоритм анализа базы данных и файлов OpenCart);
      - Очистка файловой системы от мусора и остаточных файлов;
      - Оптимизация и очистка базы данных;
      - Полный анализ в один клик;
      - Максимальное предоставление информации об обнаруженных объектах;
      - Работает на слабых хостингах и способен обрабатывать большие массивы данных;
      - Интуитивно понятный и простой интерфейс;
      - Работает с помощью ajax, без перезагрузки страницы;


      Ознакомиться с работой модуля и его возможностями Вы можете на демо сайте.
      http://demo.occleaner.timrod.ru/admin/index.php?route=extension/module/occleaner
      Логин/пароль: demo/demo

      Совместимость:

      - openCart 2.1.x
      - openCart 2.2.x
      - openCart 2.3.x
      - openCart 3.0.x
      - ocStore 2.1.x
      - ocStore 2.2.x
      - ocStore 2.3.x
      - ocStore 3.0.x


      В архиве модуля присутствует инструкция по установке и настройке модуля!
      Лицензия на модуль распространяется на 1 домен + 1 поддомен бесплатно, путем предоставления лицензионного ключа.

      Если у Вас появился вопрос, предложение по расширению функционала или Вы нашли ошибку, пишите на e-mail: timrod.v@yandex.ru или в личку, на ресурсе, где приобретали модуль.
      Добавил TimRod Добавлено 27.08.2019 Категория Модули Системные требования Сайт разработчика Старая цена Метод активации По запросу в ЛС
      По запросу на почту Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1 ocStore 3.0
      2.3
      2.2
      2.1 OpenCart.Pro, ocShop Обращение к серверу разработчика Нет  
    • By dentevik
      399.00 руб
      Скачать/Купить дополнение


      Минимизация JS, CSS, HTML Opencart, ocStore версий 2-3 - оптимизация скорости сайта для Google Speed Test
      Минимизация JS, CSS, HTML Opencart, ocStore 2,3 оптимизация скорости сайта для Google Speed Test
       
      Этот плагин Минимизирует вывод HTML сайта, объединяет JS и CS файлы в один, а так же минимизирует JS и CSS.

      Он сжимает вывод HTML, удаляя не нужные пробелы, уменьшает размер вывода вашего сайта, что заметно увеличит скорость работы вашего сайта, так как на выходе будет меньше контента.
       
      Так же плагин умеет вырезать из контента одинокие JS коды, минимизирует их и добавляет перед закрывающим тегом </body> после оптимизированного главного JS файла  (чтобы ничего не сломать)

      Это лучший способ сжать вывод HTML вашего сайта!
       
      Модуль использует библиотеку Minify, настройки и описание библиотеки по ссылке https://github.com/matthiasmullie/minify
       
      Пример работы
       
      Тестирование с работающим модулем http://oc.anira-web.ru/
       
      Тестирование без минимизации http://oc.anira-web.ru/?tevik_no_minimized=true 
       
      Удаления JS/CSS кеша и его пересоздание http://oc.anira-web.ru/?tevik_clear_minimized=true
       
      P.S. для тестирования без минимизации любой страницы сайта добавьте в конец GET параметр ?tevik_clear_minimized=true
       
      Тесты Google Speed (специально выбрал страницу где больше контента)
       
      https://developers.google.com/speed/pagespeed/insights/?hl=ru&amp;url=http%3A%2F%2Foc.anira-web.ru%2Fdesktops - с работающим модулем
       
      https://developers.google.com/speed/pagespeed/insights/?hl=ru&amp;url=http%3A%2F%2Foc.anira-web.ru%2Fdesktops%3Ftevik_no_minimized - без минимизации
       
      Установка
       
      1. Скопируйте содержимое архива в корень Вашего сайта
      2. Если у вас версия OpenCart 2.0 добавьте файл dtevik_minifi.ocmod.xml через "Установщик расширений"
      3. Если у вас версия OpenCart 2.1 добавьте файл dtevik_minifi_2_1.ocmod.xml через "Установщик расширений"
      4. Если у вас версия OpenCart 2.3 добавьте файл dtevik_minifi_2_3.ocmod.xml через "Установщик расширений", 
      а так же Вам необходимо вручную подкорректировать 1 строку в файле /system/startup.php, 
      заменив require_once(DIR_SYSTEM . 'framework.php'); на require_once(modification(DIR_SYSTEM . 'framework.php')); 
      Это необходимо для изменения файла framework.php через модификаторы.
      5. Если у вас версия OpenCart 3+ добавьте файл dtevik_minifi_v3.ocmod.zip через "Установщик рассширений", 
      а так же Вам необходимо вручную подкорректировать 1 строку в файле /system/startup.php, 
      заменив require_once(DIR_SYSTEM . 'framework.php'); на require_once(modification(DIR_SYSTEM . 'framework.php')); 
      Это необходимо для изменения файла framework.php через модификаторы.
      6. Зайдите в раздел "Модификаторы" и сделайте обновление кеша модификаторов, нажав на кнопку "Обновить" 
      (в правом верхнем углу)
      7. По всем вопросам пишите в личку.
       
      P.S. некоторые темы используют специфические AJAX запросы содержащие JS файлы и JS код, например для открытия POPUP (быстрый заказ, обратный звонок). В таких случаях необходимо настраивать модуль минимизации под Ваш сайт. Данная настройка оплачивается отдельно (+2 000 руб) и в оплату покупки модуля не входит.
       
      ВНИМАНИЕ!!!
      Покупая данный модуль, иногда, необходима настройка модуля под ваш сайт. Так как необходимо подружить модуль с Вашей темой и установленными модулями. Данная услуга платная (2 000р.) и в покупку данного модуля не входит. 
      Так же перед покупкой проверьте, возможно, вы уже используйте минимизатор на основе библиотеки Minify. В таком случае будет конфликт и ошибки установки.
      Учитывайте данные пожелания перед покупкой.
      Спасибо!
       
      Совместимость
      Opencart, ocStore ver. 2-3
      (Можно подружить и с Opencart ver 1.5 при желании)
       
      Важно!
      Плагин с открытым программным кодом, не использует Ioncube!
       
      Добавил dentevik Добавлено 08.12.2018 Категория Кэширование, сжатие, ускорение Системные требования PHP Сайт разработчика https://anira-web.ru Старая цена 899 Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0 ocStore 3.0
      2.3
      2.2
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х Обращение к серверу разработчика Нет  
    • By dentevik
      Минимизация JS, CSS, HTML Opencart, ocStore 2,3 оптимизация скорости сайта для Google Speed Test
       
      Этот плагин Минимизирует вывод HTML сайта, объединяет JS и CS файлы в один, а так же минимизирует JS и CSS.

      Он сжимает вывод HTML, удаляя не нужные пробелы, уменьшает размер вывода вашего сайта, что заметно увеличит скорость работы вашего сайта, так как на выходе будет меньше контента.
       
      Так же плагин умеет вырезать из контента одинокие JS коды, минимизирует их и добавляет перед закрывающим тегом </body> после оптимизированного главного JS файла  (чтобы ничего не сломать)

      Это лучший способ сжать вывод HTML вашего сайта!
       
      Модуль использует библиотеку Minify, настройки и описание библиотеки по ссылке https://github.com/matthiasmullie/minify
       
      Пример работы
       
      Тестирование с работающим модулем http://oc.anira-web.ru/
       
      Тестирование без минимизации http://oc.anira-web.ru/?tevik_no_minimized=true 
       
      Удаления JS/CSS кеша и его пересоздание http://oc.anira-web.ru/?tevik_clear_minimized=true
       
      P.S. для тестирования без минимизации любой страницы сайта добавьте в конец GET параметр ?tevik_clear_minimized=true
       
      Тесты Google Speed (специально выбрал страницу где больше контента)
       
      https://developers.google.com/speed/pagespeed/insights/?hl=ru&amp;url=http%3A%2F%2Foc.anira-web.ru%2Fdesktops - с работающим модулем
       
      https://developers.google.com/speed/pagespeed/insights/?hl=ru&amp;url=http%3A%2F%2Foc.anira-web.ru%2Fdesktops%3Ftevik_no_minimized - без минимизации
       
      Установка
       
      1. Скопируйте содержимое архива в корень Вашего сайта
      2. Если у вас версия OpenCart 2.0 добавьте файл dtevik_minifi.ocmod.xml через "Установщик расширений"
      3. Если у вас версия OpenCart 2.1 добавьте файл dtevik_minifi_2_1.ocmod.xml через "Установщик расширений"
      4. Если у вас версия OpenCart 2.3 добавьте файл dtevik_minifi_2_3.ocmod.xml через "Установщик расширений", 
      а так же Вам необходимо вручную подкорректировать 1 строку в файле /system/startup.php, 
      заменив require_once(DIR_SYSTEM . 'framework.php'); на require_once(modification(DIR_SYSTEM . 'framework.php')); 
      Это необходимо для изменения файла framework.php через модификаторы.
      5. Если у вас версия OpenCart 3+ добавьте файл dtevik_minifi_v3.ocmod.zip через "Установщик рассширений", 
      а так же Вам необходимо вручную подкорректировать 1 строку в файле /system/startup.php, 
      заменив require_once(DIR_SYSTEM . 'framework.php'); на require_once(modification(DIR_SYSTEM . 'framework.php')); 
      Это необходимо для изменения файла framework.php через модификаторы.
      6. Зайдите в раздел "Модификаторы" и сделайте обновление кеша модификаторов, нажав на кнопку "Обновить" 
      (в правом верхнем углу)
      7. По всем вопросам пишите в личку.
       
      P.S. некоторые темы используют специфические AJAX запросы содержащие JS файлы и JS код, например для открытия POPUP (быстрый заказ, обратный звонок). В таких случаях необходимо настраивать модуль минимизации под Ваш сайт. Данная настройка оплачивается отдельно (+2 000 руб) и в оплату покупки модуля не входит.
       
      ВНИМАНИЕ!!!
      Покупая данный модуль, иногда, необходима настройка модуля под ваш сайт. Так как необходимо подружить модуль с Вашей темой и установленными модулями. Данная услуга платная (2 000р.) и в покупку данного модуля не входит. 
      Так же перед покупкой проверьте, возможно, вы уже используйте минимизатор на основе библиотеки Minify. В таком случае будет конфликт и ошибки установки.
      Учитывайте данные пожелания перед покупкой.
      Спасибо!
       
      Совместимость
      Opencart, ocStore ver. 2-3
      (Можно подружить и с Opencart ver 1.5 при желании)
       
      Важно!
      Плагин с открытым программным кодом, не использует Ioncube!
       
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.