Size: a a a

WordPress Russian Community

2020 September 28

EM

Eri Meilis in WordPress Russian Community
Не Осилишь
Wordpress woocommerce
нужно сделать чтоб каждая страница имела свою группу товаров ( разбитую по категориям.
https://www.buyboost.net/wow/catalog (пример )
игра wow. можно перейти в каталог и там уже будут выводится категории самих товаров
дальше проваливаемся в группу https://www.buyboost.net/wow/catalog/mythic-dungeons
и там уже в сами товары.
все уже есть, кроме этого функционала.
Отвечу на ваши вопросы, если что-то не понятно
По запросу предоставлю доступ к текущему сайту и админку.
Можно сделать
источник

АА

Александр А... in WordPress Russian Community
Добрый день.

Пытаюсь сделать lazy loading для плагина который сильно тормозит сайт.

Плагин вставляется через shortcode в некоторые посты. Хотел поправить в самом плагине, но он часто обновляется - слетят изменения, поэтому решил добавлять код прямо в посты.

Обнаружил, что ломается на этапе постановки EventListener`a, т.е. так работает:

<p>
   <script>
       const out = '[visualizer id="2543"]';

       function WPshortcodeLazyLoading() {
           document.write(out);
       };
       WPshortcodeLazyLoading();
   </script>
</p>

а так:

<p>
   <script>
       const out = '[visualizer id="2543"]';

       function WPshortcodeLazyLoading() {
           document.write(out);
           document.removeEventListener('scroll', WPshortcodeLazyLoading);
       };
       document.addEventListener('scroll', WPshortcodeLazyLoading);
   </script>
</p>

затирает весь сайт и ничего не выводит.

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

ПС. document.write используется только для отладки...
источник

АП

Артём Приходько... in WordPress Russian Community
Александр А
Добрый день.

Пытаюсь сделать lazy loading для плагина который сильно тормозит сайт.

Плагин вставляется через shortcode в некоторые посты. Хотел поправить в самом плагине, но он часто обновляется - слетят изменения, поэтому решил добавлять код прямо в посты.

Обнаружил, что ломается на этапе постановки EventListener`a, т.е. так работает:

<p>
   <script>
       const out = '[visualizer id="2543"]';

       function WPshortcodeLazyLoading() {
           document.write(out);
       };
       WPshortcodeLazyLoading();
   </script>
</p>

а так:

<p>
   <script>
       const out = '[visualizer id="2543"]';

       function WPshortcodeLazyLoading() {
           document.write(out);
           document.removeEventListener('scroll', WPshortcodeLazyLoading);
       };
       document.addEventListener('scroll', WPshortcodeLazyLoading);
   </script>
</p>

затирает весь сайт и ничего не выводит.

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

ПС. document.write используется только для отладки...
вы выводите шорткод в браузере?
источник

АА

Александр А... in WordPress Russian Community
Артём Приходько
вы выводите шорткод в браузере?
Уточните вопрос, я делаю на тестовом сайте WP, смотрю Хромом.
источник

АП

Артём Приходько... in WordPress Russian Community
вы делаете бесполезную работу
источник

АП

Артём Приходько... in WordPress Russian Community
шорткоды обрабатываются на сервере
источник

АА

Александр А... in WordPress Russian Community
Я знаю
источник

АА

Александр А... in WordPress Russian Community
Но на фронт они в виде кода приходят.
источник

АП

Артём Приходько... in WordPress Russian Community
так сайт тормозит html код, который вставляет плагин?
источник

АП

Артём Приходько... in WordPress Russian Community
или php код плагина?
источник

АА

Александр А... in WordPress Russian Community
Тормозит кривая загрузка js-файлов
источник

АП

Артём Приходько... in WordPress Russian Community
тогда надо js файлы загружать асинхронно
источник

АП

Артём Приходько... in WordPress Russian Community
а не вот этот велосипед)
источник

АА

Александр А... in WordPress Russian Community
Если я перепишу плагин который это делает, то всё слетит при его обновлении
источник

АП

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

Иi

Игорь iTRON in WordPress Russian Community
- Обнаружил, что ломается на этапе постановки EventListener`a
WPshortcodeLazyLoading() еще не определён.
источник

Иi

Игорь iTRON in WordPress Russian Community
Я бы вообще посомтрел что там внутри этого магического метода
источник

АП

Артём Приходько... in WordPress Russian Community
источник

АА

Александр А... in WordPress Russian Community
Артём Приходько
не надо ничего переписывать. Если отдельные плагины, которые позволяют сделать асинхронную загрузку скриптов
Она и так асинхронная, мне нужно её отложить
источник

АА

Александр А... in WordPress Russian Community
Плагины я тоже знаю
источник