Невозможно использовать Rocket Loader от Cloudflare в ручном режиме с wp_enqueue_script - PullRequest
5 голосов
/ 28 февраля 2012

У меня есть несколько плагинов на моем WordPress сайте, который использует функцию wp_enqueue_script. Недавно у меня был клиент, использующий Cloudflare, который хочет внедрить Rocket Loader, который представляет собой автоматический асинхронный загрузчик javascript. Проблема в том, что некоторые скрипты не работают с ним, поэтому я должен отключить их автоматическую асинхронную загрузку.

Согласно вики Rocket Loader Мне нужно вставить атрибут data-cfasync = "false" в тег, который не представляется возможным при использовании функции wp_enqueue_script.

Есть ли другие способы определения этих атрибутов? Если нет, есть ли другой способ предотвратить асинхронную загрузку Rocket Loader этих конкретных сценариев?

Ответы [ 2 ]

2 голосов
/ 01 марта 2012

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

Одним из возможных решений является то, что вы можете использовать нашу функцию «Правила страницы» для выборочного отключения Rocket Loader на целых страницах, которые соответствуют базовому шаблону. Если это звучит так, как будто это подходящее решение для вас, войдите в свою учетную запись CloudFlare и ознакомьтесь с «Правилами страницы».

Эта проблема дает мне ясную идею: мы могли бы предоставить плагин WordPress, который предоставляет версию wp_enqueue_script для CloudFlare Rocket Loader. Если для разработчиков WordPress это предпочтительный способ добавления сценариев на страницу, то для пользователей CloudFlare это может оказаться удобным плагином.

Наконец, если вам это интересно, было бы полезно узнать о каких-либо конкретных сценариях, которые, как вы знаете, имеют проблемы с запуском через Rocket Loader. Мы всегда стараемся сделать его лучше и более совместимым с JavaScript, поэтому, если бы вы могли отправить мне электронное письмо на wco [at] cloudflare [dot] com, я был бы очень признателен!

1 голос
/ 28 февраля 2012

Я на самом деле работаю на CloudFlare. Эта опция также должна работать, если Rocket Loader игнорирует некоторые сценарии в автоматическом режиме.

...