Асинхронная загрузка некоторых сгенерированных Javascript

Я работаю в небольшой компании, которая не может гибко вносить изменения в использование тяжелой тематической веб-страницы в Wordpress по своим собственным причинам. Они также используют множество плагинов, и для их загрузки требуется более 10 секунд. Итак, я подумал, что должен попробовать и проверить сгенерированный исходный код домашней страницы после того, как я запустил анализ, который говорит мне, что js - это просто катастрофа.Тема, которую они выбрали, была Unero, потому что она работает с woocommerce, я полагаю. Веб-сайт - это небольшой интернет-магазин вместе с блогом, на самом деле ничего особенного, мы тоже используем yoast SEO, но это может быть неактуально. Я понял, что здесь и там работает множество js-скриптов. Я прочитал, что вы можете установить все, что работает с асинхронным установить true.

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

  1. Есть ли способ, которым вы можете переопределить (или перегрузить, каков здесь термин?)Некоторых js в нижнем колонтитуле, после определения их положения (в HEAD и в BODY), установив его в асинхронный режим, используя сниппет в нижнем колонтитуле? Будет ли это на самом деле работать?
  2. Я не хочу использовать какие-либо общие решения для плагинов, потому что я боюсь, что они сломают вещи, как упомянуто выше. Поправьте меня, если я ошибаюсь, и, пожалуйста, предложите мне что-нибудь. За исключением случаев, когда решение состоит в том, чтобы сделать собственный плагин, где я буду иметь полный контроль, я думаю.
  3. Я открыт для ЛЮБЫХ предложений, пока это не сломает сайт.

Я спрашиваю здесь, а не на Wordpress Development или любом другом форуме Stack Exchange, потому что я ищу решение, сделанное вручную, вместе с объяснением, почему оно будет работать. Я действительно программист, и я не боюсь углубляться в что-то, если все будет сделано правильно.

1 ответ

Есть ли способ, которым вы можете переопределить (или перегрузить, каков здесь термин?) Некоторых js в нижнем колонтитуле, после определения их положения (в HEAD и в BODY), установив его в асинхронный режим, используя сниппет в нижнем колонтитуле? Будет ли это на самом деле работать?

Ответ: Да, это возможно, но это также может произойти с кодом синхронизации. Если плагин А делает что-то вроде $('title').text('Title from A') а затем следующий плагин делает $('title').text('Title from B')тогда он будет отменен, не имеет значения, будет ли он синхронизированным или асинхронным.

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

Ответ: я не уверен, что вы хотите сделать. Какова ваша цель с этим сайтом? Хотите распутать беспорядок плагинов? Это может быть сложно, так как у вас мало контроля над плагинами и их механизмом.

Я открыт для ЛЮБЫХ предложений, пока это не сломает сайт.

Ответ: Один из способов - отключить их один за другим, чтобы увидеть причину и следствие, и попытаться очистить их таким образом. Другим решением было бы переключиться на более простое решение, такое как Shopify, а третье - создать собственное решение, которое вы бы имели под большим контролем.

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

Другие вопросы по тегам