在 Wordpress 中添加内联 Javascript

Add inline Javascripts on Wordpress

我想在我的 wordpress 网站的页脚上添加内联 Javascript。我知道我们可以使用 wp_add_inline_script 添加内联 Javascript。根据我对 Codex 教程的理解,我们必须注册和排队脚本,然后使用 wp_add_inline_script.

假设我:

  1. 使用 wp_register_script.
  2. 注册 ScriptA.js
  3. 排队 ScriptA.js 使用 wp_enqueue_script.
  4. 使用句柄 ScriptA.js.
  5. 使用 wp_add_inline_script 添加内联 ScriptB.js

我的问题:

  1. 据我所知,Adblock Plus(Web 浏览器扩展)或类似软件可以阻止外部 .js。如果我的 ScriptA.js 被 Adblock Plus 屏蔽了,我的 ScriptB.js 会加载吗?
  2. 如果它被阻止,是否有任何其他正确的方法可以添加内联 Javascripts?我唯一能想到的就是使用 wp_footer 钩子简单地打印(回显)它。

使用内联的原因Javascripts:防止 Adblock 用户阻止我的广告脚本。因为 Adblock Plus 不能像他们的开发者所说的那样阻止内联脚本

免责声明:这不是我自己的回答。我只是从 Wordpress 支持论坛复制粘贴这个答案。感谢 @bcworkz(Wordpress moderator/developer)。

The inline script is still output even if the enqueued file request is blocked. AFAIK anyway, not verified, but I’m pretty sure this is the case. The inline output cannot know the enqueued request was blocked, the block is external to the server. Of course, the added inline cannot be dependent on the blocked enqueued script if it is to work correctly. Your ad content would need to be part of the inline script, any external requests can still be blocked.

While AdBlock cannot block inline script, it can remove specific DOM elements. The key is to avoid having any consistent identifiers in your ad elements.