0

我为一家小公司工作,该公司出于自身原因在使用 Wordpress 上的重主题网页时不灵活。他们还使用了大量插件,加载时间超过 10 秒。所以,在我运行分析告诉我js只是一场灾难之后,我想我应该尝试一下并检查生成的主页源代码。 他们选择的主题是 Unero,因为我想它适用于 woocommerce。该网站是一个小型电子商店和一个博客,没有什么太花哨的东西,我们也使用 yoast SEO,但这可能无关紧要。我意识到这里和那里运行着大量的 js 脚本。我读到您可以将所有内容设置为使用 async set true 运行。

还读到这可能会导致脚本之间出现中断,因为我认为未定义的变量和其他问题。请注意,我对 js 技术有点陌生,我可能不知道我真正应该问什么或搜索什么。我尽我所能解释我需要发生的事情。

  1. 有没有一种方法可以覆盖(或重载,这里的术语是什么?)页脚上的一些js,在它们的位置(在 HEAD 和 BODY 中)定义之后,通过在页脚上使用片段将其设置为异步模式?这真的会奏效吗?
  2. 我不想涉及任何插件通用解决方案,因为我担心它们会破坏上面提到的东西。如果我错了,请纠正我,请给我一些建议。除非解决方案是制作自定义插件,否则我猜我将拥有完全控制权。
  3. 我对任何建议持开放态度,只要它不会破坏网站。

我在这里而不是在 Wordpress 开发或任何其他 Stack Exchange 论坛上问,因为我正在寻找一个手工完成的解决方案,以及它为什么会起作用的解释。我真的是一个手工编写代码的人,我不怕深入研究某些事情,如果事情会做对的话。

4

1 回答 1

1

有没有一种方法可以覆盖(或重载,这里的术语是什么?)页脚上的一些 js,在它们的位置(在 HEAD 和 BODY 中)定义之后,通过在页脚上使用片段将其设置为异步模式?这真的会奏效吗?

答:是的,有可能,但同步代码也可能发生这种情况。如果插件 A 正在做类似的事情$('title').text('Title from A'),然后下一个插件做了,$('title').text('Title from B')那么它会被覆盖,不管它是同步还是异步。

我不想涉及任何插件通用解决方案,因为我担心它们会破坏上面提到的东西。如果我错了,请纠正我,请给我一些建议。

答:我不确定你想做什么。您对这个网站的目标是什么?你想解开插件的混乱吗?这可能很困难,因为您几乎无法控制插件及其机制。

我对任何建议持开放态度,只要它不会破坏网站。

答:一种方法是逐个禁用它们以查看因果关系并尝试清除这种方式。另一个解决方案是切换到更简单的解决方案,例如 Shopify,第三个解决方案是创建一个您可以更好地控制的自定义解决方案。

这是一个相当开放的问题,因此很难为您的问题提供具体的答案或解决方案。

于 2019-02-10T17:04:42.593 回答