COVID2019 и это вот все. Друзья, вся эта история начинает плохо пахнет. Мойте руки, не ходите в люди. Отложите все плановые покупки и положите в носок заначку. Заприте ваших родителей, бабушек-дедушек на даче. Лучше перебдеть чем недобдеть. Берегите себя!

Буслік Кэш / Buslik Cache


BuslikDrev

Recommended Posts

ИЗОБРАЖЕНИЯ

Скрытый текст

cover19.png



ИНФОРМАЦИЯ
Название
модуляБуслік Кэш - "Buslik Cache"
Версия модуля: 1.0
Тип лицензии: Full (полная версия) и Pro (входит в состав сборки)
Тип установки: ocmod
Язык: Беларуская мова, English, Русский язык, Українська мова
Дата создания: 16.05.2021

Был протестирован на: OpenCart.cms 2.1.0.2.2 и OpenCart.pro 2.3.0.2.6 шаблон (default)
Название архива: Buslik Cache v1.0 Full OpenCart 2.X-3.X.zip

 

ОБЛАДАТЕЛЯМ OpenCart.pro 2.x СКИДКА 20%

для получения скидки обратитесь к Admin

 

ДЕМОНСТРАЦИЯ

Скрытый текст

ДЕМО САЙТ
ДЕМО АДМИНКА
Логин: demo
Пароль: demo



ОПИСАНИЕ

Модуль предназначен для уменьшения нагрузки на вашу базу данных и поднятию оценки Google PageSpeed.
 
Возможности по кэшу:
- поддержка драйверов: APC(u), MemCache(d), Redis, File, Buslik;
- можно установить исключение по роуту страницы, или наоборот включить для определённой страницы. При включении определённых страниц, то можно задать индивидуальное время и разнообразить по config и session данных;
- можно разнообразить кэш с помощью config и session данных состоящих даже из массивов;- есть адаптация под модули webp;
- из настроек модуля можно чистить кэш: html, css, js, images, logs, pwa;
- при редактировании товара, категории и т.д. полный кэш страниц тоже будет очищаться в соответствии id;
- можно установить время кэша для страниц, контроллеров, моделей и отдельных массивов (стандартного кэша OpenCart).

Возможности по Google PageSpeed:
- loading="lazy" изображений, фрейм окон и модулей;
- можно указать атрибуты ширины и высоты для изображений;
- можно сжать стили, скрипты и html страницу;
- можно скачать сторонние стили и скрипты на свой сайт;
- можно указать исключение из сжатия стилей и скриптов;
- можно сделать замену данных для страниц, стилей, скриптов;
- можно указать свои атрибуты для стилей и скриптов;
- можно предзагружать шрифты, изображения, видео файлы, стили, скрипты;
- можно установить инлайн стили и скрипты вверху, внизу, в отдельном файле, отложить загрузку по событию и таймеру;
- можно указать свои стили и скрипты;
- можно загружать критические стили.


Открытый исходный код, поддержка php5.4+, отвечаю на сообщения.

 


ВНИМАНИЕ!

Оригинальные файлы магазина не заменяет!

 

auto.png

Модификатор "вносит изменения" в следующие файлы:

Скрытый текст
admin/controller/{module,extension/module}/cachemanager.php
admin/controller/common/developer.php
catalog/controller/common/{header,footer}.php
system/engine/{action,front,router,loader}.php
system/library/{cache,response}.php



УСЛОВИЯ СОГЛАШЕНИЯ
- Beta версии устанавливаете на свой страх и риск - бэкап базы данных (далее - БД) обязателен;
- Модуль (модификатор, дополнение, расширение, приложение) (далее - Модуль) можно устанавливать на 1 домен включая поддомены (одна покупка - один домен);
- Редактировать код можно только под нужды своего магазина;
- Распространение модуля запрещено;
- Техническая поддержка (далее - ТП) осуществляется только при появлении ошибки, бага, глюка (зависания) и не совместимости модуля с заявленными версиями Opencart и шаблонов на момент продажи, при установке на боевой сайт (рабочий хостинг);
- Адаптация модуля под нестандартный шаблон - бесплатная;
- Адаптация модуля под другую версию Опенкарта и сторонние модули - платная;
- Автор модуля оставляет за собой право в любое время внести изменение в настоящее условие, описание и исходный код модуля;
- Автор модуля оставляет за собой право прекратить ТП пользователям по истечению 365 календарных дней со дня последнего обновления модуля (Full или Beta версии), или со дня окончания продления ТП, или при форс-мажорных обстоятельств;
- Автор не несёт ответственности за потерю или находку дохода пользователя из-за работы модуля;
- ТП осуществляется при условии соблюдения данного соглашения, пишите в личные сообщения.


Приобрести модуль можно ЗДЕСЬ!
Вопросы и пожелания можно задавать в данной теме.

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

  • 1 month later...

FAQ

 

 Вопрос: Как настроить?

Ответ:

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

 

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

Если параметр сессии имеет много ступеней, то указывайте все параметры через "|", например, $session['products']['param']['total']  - products|param|total

Рекомендуется указывать конкретные параметры кэширования страниц в поле "Параметры работы", чтобы чётко контролировать кэш.

Если вы 100% не уверены, то не рекомендуется включать кэш для авторизованных пользователей.

Добавьте в исключение keyword или роут модулей которые не выводят статические данные при подгрузки ajax методом (то есть указать в исключение модули отправляющие пост запросы и иные формы).

 

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

 

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

 

 

Для универсального loading="lazy" есть возможность указать начало и количество изображений (iframe тоже учитывать нужно) при старте через событие, что позволит также изменить атрибут для желаемых изображений. Данный скрипт можно указать в поле "Скрипт" или в модуле аналитики.

window.addEventListener('busLoadingLazy', function() {
	busLoadingLazy.setting['start'] = 0;  // начать загружать с
	busLoadingLazy.setting['quantity'] = 20; // загружать столько-то
	busLoadingLazy.setting['exception'] = {'https://mysite.by/image.png':true}; // не загружать это изображение при загрузки страницы
	busLoadingLazy.start(50, 5); // загрузить ещё изображения и iframe при загрузки страницы начиная от 50 в количестве 5 штук
	busLoadingLazy.setting['exception'] = {}; // убираем исключения
});

 

Для обычного loading="lazy" frame окон заменить src= на data-src и указать в поле скрипта код:

var busLoadingLazy = function() {
	var elements = document.querySelectorAll('iframe[loading="lazy"][data-src]');

	if (elements) {
		for (var i = 0; i < elements.length; i++) {
			elements[i].setAttribute('src', elements[i].getAttribute('data-src'));
			elements[i].style['opacity'] = 1;
			elements[i].removeAttribute('data-src');
		}
	}
};

window.addEventListener('mouseover', busLoadingLazy, {once:true, passive:true});
window.addEventListener('touchstart', busLoadingLazy, {once:true, passive:true});

 

 

Пример подключения метрик:

<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-00000000-0" type="text/javascript"></script>
<script type="text/javascript">
	window.dataLayer = window.dataLayer || [];
	function gtag(){dataLayer.push(arguments);}

	gtag('js', new Date());
	gtag('config', 'UA-00000000-0');
</script>
<!-- Global site tag (gtag.js) - Google Analytics -->

<!-- Yandex.Metrika counter -->
<script async src="https://mc.yandex.ru/metrika/tag.js" type="text/javascript"></script>
<script type="text/javascript">
	//https://yandex.ru/support/metrica/code/counter-initialize.html
	window.ym = window.ym || function() {(window.ym.a = window.ym.a || []).push(arguments);};
	window.ym.l = 1*new Date();

	ym(00000000, "init", {
		clickmap:true,
		trackLinks:true,
		accurateTrackBounce:10
	});
</script>
<!-- /Yandex.Metrika counter -->
<!-- Yandex.Metrika counter -->
<noscript><div><img src="https://mc.yandex.ru/watch/00000000" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->

 

 

Рекомендую использовать этот модуль и указать там ссылку:

Чистка кэша HTML, TWIG, DATA: https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&caches=1

Чистка кэша HTML, TWIG, DATA + CSS, JS: https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&minify=1

Чистка кэша HTML, TWIG, DATA + IMAGES: https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&images=1

Чистка кэша LOGS: https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&logs=1

Чистка кэша HTML, TWIG, DATA + MODIFICATIONS: https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&modifications=1

Чистка VIEW PRDOCUTS (просмотренные товары): https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&view_products=1

Чистка CUSTOMER SEARCH QUERY (поисковые запросы): https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&customer_search=1

Чистка CUSTOMER BLOG SEARCH QUERY (поисковые запросы по блогу OpenCart.Pro 2.3.0.2.6): https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&customer_blog_search=1

Чистка CUSTOMER ACTIVITY (информация об активности пользователей): https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&customer_activity=1

Чистка CUSTOMER AND API SESSION (file or DB) (сессионные данные пользователей и подключений по REST API OpenCart): https://mysite.by/admin/index.php?route=extension/module/bus_cache/clear&user_token=[user_token]&redirect=[route]&customer_session=1

 

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

v0.4
- для 2.1 теперь можно отключать модификатор модуля без ошибок;
- добавлена и включена по-умолчанию возможность минимизировать html данные;

 

v0.5
- исправлено кэширование корзины, закладки и т.д.;
- файлы кэша разбиты по каталогам (id магазина/id языка/группа покупателей) для магазинов с большим количеством товаров (думаю для 10000-20000 должно работать, а если товаров больше, то отключайте кэширование товара);
- улучшен отсчёт времени генерации (время стало ближе к правде при включении дебаг режима);

- добавлена адаптация под OpenCart 2.0-2.1;

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

v0.6
- добавлено определение мобильных устройств и google pagespeed (им отдаётся контент без боковых модулей, а для pagespeed отключаются также скрипты вне файла и все иконки для уменьшения структуры DOM) по-умолчанию включено;
- сокращён путь хранения кэш файлов;
- минификация HTML получила уровни сжатия (2 уровня);

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

  • 4 months later...
  • 7 months later...

v0.9

- добавлена админ панель управлением модуля;

- добавлен свой скрипт loading lazy (работает даже на ie9);
- добавлено разделение генерации кэша поддержки браузеров изображений webp.

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

/admin/index.php?route=extension/module/bus_cache/clear&redirect=extension/module/mymodule&info=true&token=dfgfdgdfgdfgdfg

И тогда после чистки кэша переадресация будет на ваш модуль с выводом информации какие файлы кэша были удалены.

Также можно удалить кэш без перехода по ссылке $this->load->controller('extension/module/bus_cache/clear', array('info' => true));

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

v1.0
- распределена нагрузка;
- добавлено сжатие css и js файлов, а также их сборка в один;
- добавлены драйвера кэша APC(-u), Memcache(-d), Redis;

- устранены найденные ошибки;

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

  • BuslikDrev changed the title to Буслік Кэш / Buslik Cache

Со сторонними темами как работает модуль? Установил, поставил галочки на Lazy load, но гугл все равно предлагает настроить отложенную загрузку скрытых изображений, аналогично с установкой размера картинок...

Шаблон Aurus, куда смотреть?

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

1 час назад, YaRad сказал:

Со сторонними темами как работает модуль? Установил, поставил галочки на Lazy load, но гугл все равно предлагает настроить отложенную загрузку скрытых изображений, аналогично с установкой размера картинок...

Шаблон Aurus, куда смотреть?

Функции pagespeed начинают работать после кэширования страницы. В следующей версии сделаю настройку, чтобы работало независимо.

И галочки нету на lazy load там select и выбор 2 варианта.

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

Жаль, кэш вообще работать не хочет....

 

Цитата

Notice: Undefined index: cache_engine in /home/p96775/www/ecowoodmaster.com/system/library/bus_cache/bus_cache.php on line 183Notice: Undefined index: cache_engine in /home/p96775/www/ecowoodmaster.com/system/library/bus_cache/bus_cache.php on line 213
Fatal error: Uncaught exception 'Exception' with message 'Error: Could not load cache adaptor Bus_Cache\ cache!' in /home/p96775/www/ecowoodmaster.com/system/storage/modification/system/library/cache.php:19 Stack trace: #0 /home/p96775/www/ecowoodmaster.com/system/library/bus_cache/bus_cache.php(213): Cache->__construct('Bus_Cache\\', '3600') #1 /home/p96775/www/ecowoodmaster.com/system/library/bus_cache/bus_cache.php(13): Bus_Cache\Bus_Cache->start(1621342660.3728) #2 /home/p96775/www/ecowoodmaster.com/system/storage/modification/system/engine/front.php(27): Bus_Cache\Bus_Cache->__construct(Object(Registry), 1621342660.3728) #3 /home/p96775/www/ecowoodmaster.com/system/framework.php(108): Front->dispatch(Object(Action), Object(Action)) #4 /home/p96775/www/ecowoodmaster.com/system/startup.php(129): require_once('/home/p96775/ww...') #5 /home/p96775/www/ecowoodmaster.com/index.php(19): start('catalog') #6 {main} thrown in /home/p96775/www/ecowoodmaster.com/system/storage/modification/system/library/cache.php on line 19

 

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

При изменении способа кэширования заработало. Но lazy load и атрибуты ширины и высоты не появились.

 

<img src="https://www.ecowoodmaster.com/image/cache/catalog/horeca/menu/14017/14017-1-200x200.jpg" 
alt="Деревянная меню-папка Элея с коричневым кожаным корешком" title="Деревянная меню-папка Элея с коричневым кожаным корешком" class="img-responsive">

 

Подскажите, как это поправить?

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

4 часа назад, YaRad сказал:

Жаль, кэш вообще работать не хочет....

 

Обновите модуль, у вас 2.1 версия OC?

И отключите определение моб. устройств. И кэш не работает, когда вы авторизованы в админке.

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

В 18.05.2021 at 19:55, BuslikDrev сказал:

Обновите модуль, у вас 2.1 версия OC?

2.3 pro

 

Вошел неавторизованный - все заработало. Спасибо

 

НО. Заработало только на главной. В категориях и карточке товара все так же

 

Изменено пользователем YaRad
Ссылка на комментарий
Поделиться на других сайтах

5 часов назад, YaRad сказал:

НО. Заработало только на главной. В категориях и карточке товара все так же

 

Что именно не заработало только на главной? Вы что-то неправильно делаете, может даже браузер у вас с глюками. Также вы не обновили модуль, не почистили кэш. И смотрю, что всё у вас работает.

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

v1.0.6
- добавлено исключение css и js из сжатия;
- добавлена предзагрузка нужных шрифтов и изображений из css;
- добавлена установка font-display чтобы не показывать невидимый текст;
- добавлена чистка css и js при чистки кэша;
- увеличена степень сжатия;
- добавлена чистка всего кэша (APC(-u), Memcache(-d), Redis);

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

  • 6 months later...

v1.0.11

 

Возможности по кэшу:

- можно установить конкретно, что кэшировать;

- более точная настройка сессионных перемен.

 

Возможности по Google PageSpeed:

- улучшенный скрипт loading="lazy";

- можно скачать стили и скрипты на свой сайт;

- можно указать исключение из сжатия стилей и скриптов;

- можно сделать замену данных для страниц;

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

- можно предзагружать шрифты и изображения;

- можно установить стили и скрипты вверху, внизу, отложить загрузку по событию и таймеру;

- можно указать свои стили и скрипты;

- модуль стал быстрее;

- можно загружать критические стили;

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

  • 1 month later...

добрый день.

 

Хотим купить модуль на замену турбо, но есть ряд вопросов:

1. Какие настройки нужно сделать или он будет работать из коробки?

2. Как сочетается с модулями оплаты и доставки? Симпл, СДЭК, ОЗОН

3. Нужно ли адаптировать, если у шаблона revolution своя минификация js и кэширование?

4. Основная цель: методы REST API не должны кэшироваться. Они должны быть в исключении.

5. Поможете ли с первоначальной настройкой?

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

В 15.02.2022 at 16:44, Pelmen сказал:

1. Какие настройки нужно сделать или он будет работать из коробки?

2. Как сочетается с модулями оплаты и доставки? Симпл, СДЭК, ОЗОН

3. Нужно ли адаптировать, если у шаблона revolution своя минификация js и кэширование?

4. Основная цель: методы REST API не должны кэшироваться. Они должны быть в исключении.

5. Поможете ли с первоначальной настройкой?

 

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

Для кэширования нужного указывается роут или другой параметр, или соответствующий им keyword. Например, если это страница оформления заказа, то роут: "checkout/cart" или keyword: "cart", а если это все категории, то "category_id".

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

3. Ненужно, можете минификацию css, js не включать, если устраивает от шаблона.

5. Сам я ничего делать не буду, а на все вопросы ответ дам.

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

  • 1 month later...

Здравствуйте!

 

Модуль куплен на liveopencart. Ocstore 2.3.0.2.3.

 

На десктопе всё работает, на мобильном белый экран при заходе на  страницу оформления заказа simple.

В параметры исключения прописала simplecheckout (пробовала также прописывать checkout/simplecheckout), определение мобильных пробовала включать и выключать.

 

Помогите пожалуйста, что нужно сделать?

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

  • 1 month later...
1 час назад, YaRad сказал:

Добрый день! Как обновить модуль? Не помню на каком ресурсе покупал (((

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

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

v1.0.14
- устранены мелкие ошибки;

- оптімізація кода;
- добавлена возможность кэширования контроллеров и моделей;
- добавлена возможность установки времени кэша для определённых роутов\seo_url;
- доработана система переноса скриптов и стилей в файл;
- добавлена возможность замены в css, js перед сжатием;
- добавлена кнопка обновления модификаторов, чистки логов, и копий изображений;
- добавлена возможность lazy load html;
- добавлена возможность установить свой обработчик кэша.

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

Join the conversation

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

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  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.