Jekyll Minima主题中Utterances评论script标签应放置在什么位置
核心原因
两个问题的本质非常明确:
- 绝对不要手动修改
_site目录下的任何文件。这个目录是Jekyll每次构建自动生成的输出产物,你运行一次build/serve就会全量覆盖一次,你加的script标签被删、评论加载失败,全是因为构建时把你改的文件冲掉了。 - 本地找不到
_layouts/post.html是正常情况:通过RubyGem安装的Minima主题,核心文件都存在Ruby的Gem安装目录里,不会默认放到你的项目文件夹下。
具体接入步骤(兼容性最好,不受版本影响)
推荐用主题文件覆盖的方式接入,适配所有Minima版本:
- 先定位本地Minima主题的存放路径,在项目根目录打开终端执行命令:
执行后会输出类似bundle show minima/usr/local/lib/ruby/gems/3.2.0/gems/minima-3.2.1的路径,就是你本地Minima主题的安装位置。 - 在自己的Jekyll项目根目录,新建名为
_layouts的文件夹。 - 打开第一步输出的Minima路径,进入里面的
_layouts子文件夹,找到post.html文件,复制到你项目刚建的_layouts文件夹里。Jekyll构建时会优先读取你项目目录下的同名文件,覆盖Gem主题里的对应文件,不会影响原主题的其他功能。
- 打开你项目里刚复制过来的
_layouts/post.html,找到{{ content }}这行(这是渲染文章正文的位置),把你准备好的Utterances脚本粘贴到{{ content }}下方、</article>标签上方即可:<script src="https://utteranc.es/client.js" repo="sanchoi0310/comments" issue-term="pathname" theme="github-light" crossorigin="anonymous" async> </script> - 如果本地正在运行
jekyll serve,先按Ctrl+C停掉进程,重新执行启动命令,进入任意文章页面就能看到评论模块正常加载。
可选简化方案(适合Minima 2.7及以上版本)
如果你不想复制整个post.html布局文件,可以直接用主题预留的自定义插槽:
- 在项目根目录新建
_includes文件夹 - 在文件夹内新建
post-custom.html文件,把Utterances脚本直接粘贴进去,Minima的默认post布局会自动在文章末尾加载这个文件的内容,不需要额外修改布局。 - 如果你的Minima版本低于2.7,没有这个自定义插槽,还是用上面覆盖布局的方法更稳妥。
内容的提问来源于stack exchange,提问作者cout Hello world endl
相关产品推荐
相关产品推荐

