我基于 Jekyll 的网站突然停止包含 Google Analytics 脚本块。昨天,它正在工作(脚本块在所有页面上),但是今天,在我上传了一个新帖子后,脚本块从所有页面上统一消失了。
我在 GitHub 页面上托管我的网站,因此为了排除故障,我想在我的本地计算机上重现该问题。原来我在本地机器上运行的是旧版本的 Ruby 和 Jekyll,所以我更新了 Ruby 并安装了GitHub Pages Gem,以确保我的本地环境与 GitHub 页面匹配:
gem 安装 github 页面
这使我能够重现该问题。现在,即使我跑了
jekyll 服务——安全
Analytics 脚本块未包含在任何页面中。
经过多次故障排除后,我终于发现,如果我在我的 JB/analytics 文件中,在google案例和 include 指令之间放置任何类型的非空白字符,它就会起作用。
因此,这有效,因为当--safe
开关打开时,脚本块JB/analytics-providers/google
被包含在内:
{% case site.JB.analytics.provider %}
{% when "google" %}.
{% include JB/analytics-providers/google %}
(注意之后的句点字符{% when "google" %}
)。
但是,这不起作用- 即使使用--safe
开关,include JB/analytics-providers/google
也永远不会包含 的内容:
{% case site.JB.analytics.provider %}
{% when "google" %}
{% include JB/analytics-providers/google %}
虽然我有一个解决方法,但我非常感谢对这种行为的解释。