Отладка и ошибки WordPress

<b>Конфликт JS в WordPress: 5 проверок, если скрипты ломают страницу</b>

<b>Конфликт JS в WordPress: 5 проверок, если скрипты ломают страницу</b>

Чаще всего проблема не в «битом» коде, а в том, что один скрипт мешает другому. В WordPress это всплывает после подключения темы, плагина, виджета или вставки внешнего JS: кнопки перестают работать, слайдер не листается, форма зависает.

Проверь сначала базу: • есть ли ошибка в консоли браузера; • не подключаются ли два одинаковых скрипта; • не стоит ли у файла loading=defer/async там, где он должен грузиться раньше; • не завязан ли код на jQuery, а jQuery отключён или загружается позже.

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

Когда конфликт неочевиден, отключай плагины по одному и проверяй тему на дефолтном шаблоне. Если проблема исчезла, возвращай компоненты по очереди — так быстро находят виновника. Для сложных случаев используй уникальные namespace, оборачивай код в DOMContentLoaded и не пиши селекторы «в лоб» без проверки наличия элемента.

Не лечи конфликт добавлением ещё одного скрипта «для исправления»: сначала найди источник, иначе ошибка вернётся в другом месте.
Этот пост опубликован в Telegram-канале Отладка и ошибки WordPress. Подписаться можно по ссылке: @wp_debug_corner_ww.
editorial

Свежие посты в категории «Editorial Voice & Insider»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @dumay. Быстрый тест: $20 за канал, $1000 за пакет по сети.