Поддержка Проблемы и решения Плагины кэширования ломают меню

  • Здравствуйте.

    Сейчас использую PageSpeed Ninja в качестве плагина для ускорения мобильных страниц. Но столкнулся с проблемой: через время, когда кэш насобирается, открывающееся меню (не горизонтальное, а вертикальное — которое открывается по клику на бургер) перестает открываться. Просто ничего не происходит. После очистки кэша меню снова работает, но лишь на время.

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

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Что ответил автор кэширующего плагина на этот вопрос?

    Судя по всему, нужно или добавить wp-content/themes/cenote/assets/js/cenote-custom.min.js в исключения, или полностью отключить настройку «Optimize integrations» в разделе «Minify JavaScript».

    @dryabov, похоже, отключение Optimize integrations действительно помогло. Даже без удаления кэша на сайте меню стало спокойно открываться. Большое спасибо, никогда бы не подумал!

    Там суть в том, что «Optimize integrations» воспринимает атрибуты async и defer как указание на то, что данные скрипты можно загрузить уже после отрисовки страницы. К сожалению, в случае defer это не совсем так, т.к. такие скрипты должны быть выполнены до события DOMContentLoaded, а не после. Нужно будет в следующей версии или убрать проверку атрибута defer, или переопределить метод addEventListener у document и window, чтобы правильно вызывать DOMContentLoaded у новых скриптов (сложно, но можно).

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Плагины кэширования ломают меню» закрыта для новых ответов.