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

BuslikDrev

Соучастники
  • Публикации

    2484
  • Зарегистрирован

  • Посещение

  • Days Won

    133

Сообщения, опубликованные пользователем BuslikDrev

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

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

  2. 2 часа назад, kimono11 сказал:

    Да, но включить его невозможно. Ставлю галочку на "Да" сохраняю и автоматом слетает на "Нет"

     

    Это невозможно т.к. у меня всё работает, структура этого меню не отличается от 2.3.0.2.5. В общем у вас проблема в конфигах опенкарт, или сервера (например брандмауэр хостинга блокирует запрос сохранения), или из-за браузера.

  3. В 15.04.2022 at 15:11, kimono11 сказал:

    Есть ошибка с деактивацией кастомного меню в конструкторе. При сохранении оно деактивируется и больше не включается:

     

    На скріншоте же отключено меню. Когда устанавливали сборку версии 2.3.0.2.6 - вчера? Если больше недели, то можете обновить сборку.

     

    В 15.04.2022 at 15:11, kimono11 сказал:

    Активирован SEO Менеджер Pro

    Это про событие речь или сторонний модуль? Дело в том, что этот модуль никакой активации не требует.

     

     

  4. 31/

    Рекомендую писать js код с правилом строгой типизации:

    "use strict";

    "use asm";

    Это научит вас писать оптимизированный код, а в случае "use asm" поддерживающие браузеры этого правила будут выполнять ваш код быстрее.

     

    Также рекомендую ознакомиться с возможностями WebAssembly (wasm). Эта технология позволяет выполнять код C, C++, C#, Rust (нужно конвертировать через спец. программы в wasm), что выходит быстрее, если бы вы написали такой код на JavaScript. То есть полезно создать свой модуль wasm с функциями для выполнения каких-то вычислений (работа с изображениями и видео, кодирование и декодирование информации).

    Онлайн конвертёр из Си в Wasm

    Онлайн конвертёр из С++ в Wasm

     

    32/ Универсальный анкор скролл

    Скрытый текст
    'use strict';
    'use asm';
    
    if (typeof document.documentElement.style['scroll-behavior'] !== 'undefined') {
    	document.documentElement.style['scroll-behavior'] = 'none';
    	window.addEventListener('load', function(e) {
    		document.documentElement.style['scroll-behavior'] = 'smooth';
    	});
    } else {
    	if (!('scrollIntoView' in window)) {
    		(function() {
    			var lastTime, vendors, x;
    			lastTime = 0;
    			vendors = ['ms', 'moz', 'webkit', 'o'];
    			for (x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {
    				window.requestAnimationFrame = window[vendors[x]+'RequestAnimationFrame'];
    				window.cancelAnimationFrame = window[vendors[x]+'CancelAnimationFrame'] || window[vendors[x]+'CancelRequestAnimationFrame'];
    			}
    
    			if (!window.requestAnimationFrame) {
    				window.requestAnimationFrame = function(callback, element) {
    					var currTime = new Date().getTime();
    					var timeToCall = Math.max(0, 16 - (currTime - lastTime));
    					var id = window.setTimeout(function() {
    						callback(currTime + timeToCall);
    					}, timeToCall);
    					lastTime = currTime + timeToCall;
    					return id;
    				};
    			}
    
    			if (!window.cancelAnimationFrame) {
    				window.cancelAnimationFrame = function(id) {
    					clearTimeout(id);
    				};
    			}
    		}());
    
    		var s, ss;
    		s = document.createElement('script');
    		s.async = true;
    		s.type = 'text/javascript';
    		s.src = 'http://iamdustan.com/smoothscroll/src/smoothscroll.js';
    		ss = document.getElementsByTagName('head')[0];
    		ss.parentNode.appendChild(s);
    	}
    
    	var element = document.querySelectorAll('a[href*="#"]');
    
    	if (element) {
    		var i, l, t, link;
    		i = 0;
    		l = element.length;
    
    		for (i; i < l; i++) {
    			element[i].addEventListener('click', function(e) {
    				t = e.target;
    				if (typeof t.hash === 'undefined') {
    					t = t.parentNode;
    				}
    
    				if (window.location.pathname.replace(/^\//,'') == t.pathname.replace(/^\//,'') && window.location.hostname == t.hostname) {
    					if (typeof t.hash !== 'undefined') {
    						e.preventDefault();
    						link = document.getElementById(t.hash.substring(t.hash.length - (t.hash.length-1)));
    						if (link) {
    						console.log(link);
    							link.scrollIntoView({ behavior: "smooth" });
    						}
    					}
    				}
    			});
    		}
    	}
    }

     

     

  5. В 12.03.2022 at 01:03, Arsenty87 сказал:

    2. Нужна помощь с настройкой и оптимизацией, поправить кеширование и подразогнать сайт 

     

    Вам нужно или сменить хостинг или перестать удалять часто кэш изображений и прогонять сайт через программу Xenu для создания нового кэша изображений.

  6. Изображения в категориях что-то из javascript_min.js меняет webp на png при первой загрузки изображения в результате чего pagespeed говорит, что нужно использовать новый формат и дополнительная нагрузка в целом на рендер страницы.

     

    Похоже это меняет

    $('#content .owlproduct').owlCarousel({

     

  7. 12 часа назад, vivft сказал:

    Для роута достаточно добавить в таблицу `oc_url_alias`?

    Зачем так тупить и какие-та запросы придумывать, если я чётко сказал, что в сео менеджере прописать?

    https://demo23.opencart.pro/admin/index.php?route=tool/seomanager

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

    image.thumb.png.fd1945e3fd1dde6d7f890b33ee8f4892.png