想让评论落在正文下面,Blogger 只留了一条路
省事的那条路通向侧边栏。要把评论放到正文下面,得走另一条。
Blogger 上省事的路和对的路不是同一条。布局里的 HTML/JavaScript 小工具两分钟就装好了,可小部件会原样出现在那个小工具所在的布局区域:侧边栏、页眉或者页脚。想让评论紧贴在每篇博文正文下面,就得打开 主题背景 > 修改 HTML,把挂载元素接在 <data:post.body/> 后面,因为 Blogger 的后台里没有一处可以只给单篇博文塞代码。以上没有一步要求 Blogger 的付费档位。动手改之前,先把主题备份下载下来。
Blogger 本来就有评论,先弄清你要换掉的是什么
Blogger 的主题里从一开始就带着评论区,画它的和画博文的是同一个 Blog 微件。翻一眼布局数据标记的清单,allowComments、numComments、addCommentUrl 就和博文标题、正文的标记并排列着。这说明自带评论不是后来加上去的功能,而是主题的一部分。哪怕只想改改样子,最后也还是要打开模板代码。
换掉它的理由大致三种:想在一个地方管好几个站点的评论,想撤掉一眼就能看出主题写于哪一年的评论框,想让博客和自己其他地方的评论长成一个样。别指望能把旧的搬过去。通过 Blogger 表单发出来的评论留在 Blogger 里,新小部件在每篇博文下面都从空的开始。
有一件事是站在你这边的。BootSignal 评论要访客用 Google 登录,而来到一个由 Google 运营的博客平台的读者,多半已经登录着。
打开主题编辑器之前,先看看评论区本身
2 条评论
- M
真的一行就搞定了,没想到安装这么简单!
- J
连登录都是共享的,不用再额外接入。👍
小部件在这一块自己画出来的样子,里面的评论是占位数据。放进 Blogger 博文里,它也在主题给的宽度内长成同一个样子。
三个入口,各自要付的代价
Blogger 给了三处可以粘 HTML 的地方,其中能把评论区放到博文正文下面的只有一处。开始点鼠标之前,先认准你要的是哪一行。
| 入口 | 小部件出现的位置 | 要不要改代码 | 每篇博文各自的评论区 | 怎么撤回 |
|---|---|---|---|---|
| 布局 > 添加小工具(HTML/JavaScript) | 你选的那个布局区域,也就是侧边栏、页眉或页脚 | 不用 | 不行,所有页面共用一段对话 | 在布局里删掉这个小工具 |
| 主题背景 > 修改 HTML,接在 <data:post.body/> 后面 | 每篇博文正文下面,只在博文页出现 | 要,Blogger 的主题 XML | 可以,按博文分开 | 把下载好的主题备份重新套上 |
| 博文编辑器的 HTML 视图 | 只在那一篇博文里 | 一点点 | 只有那一篇 | 再修改一次那篇博文 |
这三条没有一条要升级档位才打得开。布局里的添加小工具、主题背景的修改 HTML、主题备份,帮助中心都写着,一个付费条件也没附。Google 没有单独放出 Blogger 的价目页,所以这句话该读成没有东西挡着你,而不是一个可以拿去引用的承诺。blogger.com 上提到钱的地方只有一处:买一个自定义域名来替掉 blogspot.com 的地址。要花钱的是下面写着的 BootSignal。
A 路:用小工具在侧边栏放一个
先登记 blogspot 地址,或者取代它的那个域名
Blogger 博客从建站那天起就住在
yourname.blogspot.com,除非有人在 设置 > 正在发布 > 自定义域名(Settings > Publishing > Custom domain)里挂上自己的域名。挂上之后,blogspot 地址就不再直接端出博客,而是把人转到那个域名去。Blogger 在那个界面上写着,这个转向要过一阵子才真的生效。所以打开你的 BootSignal 站点设置,把发布出去的博文在地址栏里显示的主机名填进去;如果刚换域名不久、旧链接还会落到 blogspot 地址上,就把它也一并填上。带国家代码的写法不用单独登记:yourname.blogspot.co.uk这类地址会跳到.com那边,所以不管读者在哪个国家,最后到的都是你登记过的主机名。登记完会拿到一个 site id,要填进 Blogger 的就只有这一个值。小部件拿location.hostname去核对这份清单,不在清单上的地方它什么都不画。添加 HTML/JavaScript 小工具
登录 Blogger,选择要更新的博客。在左侧的菜单中,点击 布局(Layout)。在你想要修改的区域,点击 添加小工具(Add a Gadget)。在打开的窗口中选择 HTML/JavaScript,然后点击添加图标。这个小工具只有两个栏:标题和内容。除非你想在评论区上面再加个小标题,标题留空就行;把下面两行粘进内容栏,再点左下方的 保存。
<script src="https://bootsignal.com/bootsignal.js" data-site-id="YOUR_SITE_ID" data-lang="zh-cn" defer></script> <div data-bootsignal="comments" data-thread-id="blogger-sidebar"></div>打开线上博客,用眼睛确认一遍
小工具画在它所属的布局区域里。放进侧边栏,评论区就在侧边栏,而且每个页面上都有。更要紧的是,它不是每篇博文一段,而是整个博客共用一段对话,因为你粘进去的
data-thread-id是一个写死的键。这条路的诚实边界就在这儿:拿它当留言板还说得过去,但读者说要在这篇文章下面留言时,想的并不是这个。
B 路:每篇博文下面一个真正的评论区
打开主题编辑器
登录 Blogger,选择要更新的博客。在左侧的菜单中,点击 主题背景(Theme)。在“我的主题背景”下,点击更多操作图标,选 修改 HTML(Edit HTML)。现在整份模板都装在一个文本框里,这就是刚才让你先下载备份的原因。
找出 Blog 微件和正文标记
找
type='Blog'的那个b:widget标记,按惯例它是id='Blog1'。Blogger 的每个微件都有一个id='main'的 includable,官方主题还会把博文的标记拆到第二个 includable(通常是id='post')里,再用b:include调进来。你不必顺着这条链走。直接在文件里搜<data:post.body/>,文档把它写作博文的内容,它就是你的锚点。把挂载元素接在正文标记后面
夹在
b:if之间的东西只在单篇博文页上画出来,因为文档写着data:blog.pageType的取值是 item、archive、index 之一。Blogger 写属性引号时会做 XML 转义,所以条件看上去是"item",这不是绕路,Blogger 自己的示例就长这样。expr:前缀的作用是让数据标记进到属性值里,而不是当成内容打印出来,data:post.id则给每篇博文一个各自的会话键。data:post.url也能用,代价是以后一改固定链接,对话就留在旧键下面了。<b:if cond='data:blog.pageType == "item"'> <div data-bootsignal='comments' expr:data-thread-id='data:post.id'></div> </b:if>加载器在模板末尾放一次就够
加载器放在任何每个页面都会执行的位置都行,同一个文件里
</body>前面是最不让人意外的地方。明年再加五个挂载元素,模板里的脚本标记也还是这一个。这份文件是 XML 形状的,所以给defer写上明确的值,开了的标记都要闭合。<script src='https://bootsignal.com/bootsignal.js' data-site-id='YOUR_SITE_ID' data-lang='zh-cn' defer='defer'></script>保存,然后到已发布的博文上看
点 保存,在线上博客里打开一篇真正的博文,往正文下面翻。别拿主题预览下判断:那是 Blogger 在自己的编辑器里画出来的,不是读者拿到的页面,而第三方脚本在那里面怎么跑,帮助中心也没写过。
登记 blogspot 地址或自定义域名,复制 site id,粘两段代码。
把 Blogger 自带的评论表单关掉
两个一起开着,每篇博文末尾就会摆两个评论框。读者随手挑一个,对话分成两半,你要在两个地方回。新小部件上线之前,先决定哪一个留下。
开关有两处。全站那个在 Blogger 的设置界面里,评论相关的项目聚在一起的地方;帮助中心讲写博文的那一篇没写这些标签,所以别信任何地方抄来的标签,包括这一篇,看你屏幕上此刻写着什么。确定的是主题那一侧,而且那份文件你已经打开了:Blog 微件里,自带评论区是用 b:include 调进来的。把这个 include 包进一个永远不成立的 b:if,或者干脆删掉那一行,表单就从页面上退场了。
按博文来看,主题一般读 data:post.allowComments 决定要不要出自带表单,所以给某一篇关掉评论,只有那一篇的表单会消失。不管用哪个开关,你撤掉的那一块,正是一直以来画着你已有评论的那一块。评论还存在 Blogger 里,只是不再出现在页面上。
Blogger 的安装真正出岔子的几处
混合内容,Google 把它算作硬失败
这话是 Google 的说法。页面先用 HTTPS 安全地拿到最初的 HTML,之后又用不安全的 HTTP 去加载后续内容时,就会出现混合内容错误,而它的后果被写成 "will degrade both HTTPS security and the user experience of your blog.",意思是 HTTPS 的安全性和博客的使用体验会一起被拉低。开的方子是对半排查:把不是 Google 出品的小工具摘掉,看一遍博客,再一个一个装回去,直到罪魁祸首自己冒头。BootSignal 的加载器和它去取的东西全都只走 HTTPS,所以你的博客要是本来就在报这些警告,先把那边清干净,不然你会花一个下午去怪刚装上的小部件。
存不下去的保存
Blogger 的主题是它自己的一套 XML 风格标记语言:b:section、b:widget、b:includable、b:include、b:if、b:loop,属性值都做过 XML 转义。落到实处就是,粘进去的脚本里如果带着生的 <、& 或 &&,文件可能就存不下去。帮助中心既没写这种失败,也没提过 CDATA 的要求,所以把它当嫌疑人而不是规矩:保存被拒、编辑器又指向你刚粘的那一带,就先看这几个字符。这一篇里的两段代码都没有它们。
小部件核对的那个主机名
挂载元素画出来了却没有评论加载,或者登录被弹回去,先看域名。小部件只在登记到你 site id 的主机名上应答,Google 登录还要核对页面来源,所以 yourname.blogspot.com 和 yourname.com 不是一个博客的两个名字,而是两条登记。手机上也看一眼:b:widget 上除了 pageType 还有一个 mobile 属性,主题完全可能在桌面端显示某个微件,到小屏幕上就把它撤掉。
为什么一篇博文火了,账单也不动
BootSignal 按登记域名计价,每月 $20 或每年 $200,目录里的小部件全都包含在内,明年才出的那些也算,价格里没有一项跟浏览量或评论数挂钩。这件事在 Blogger 上比在别处更要紧:一篇被谁转走的 blogspot 博文,可能从一天四十个人读,变成整整一周每天四万个人读,而按流量计价的评论工具,偏偏挑那一周变贵。另一个用别的地址的博客算第二条登记,在控制台里加。
目录里有 38 个付费小部件和 33 个免费的浏览器工具,哪个归哪边,价格页上写着。跟其他托管评论服务把价钱并排放的比较,放在对比专区,因为那些数字会动,过期的数字比没有更糟。
主题文件还开着,顺手再加一行
刚粘上的加载器同时带动其他所有 BootSignal 小部件,所以第二个只要一个 div。在 Blogger 博文里最顺手的搭档是浏览量:它接会话键的方式一样,可以直接和博文共用同一个键。
无需登录 · 每次访问计一次
按博文分开计数的浏览量。不用登录,一次访问加一次。
<div data-bootsignal='viewcount' expr:data-thread-id='data:post.id'></div>关掉编辑器之前,把现在带着你改动的主题备份再下载一次,再把两段代码和 site id 记进一个跟博客笔记放在一起的文本文件。下次换主题,Blogger 会替换掉 HTML,两个挂载元素也一起没。有那个文件,装回去两分钟;没有,就是一晚上重读这一页。
常见问题
- 不改主题,能把评论区放到博文下面吗?
- 不能。Blogger 没有给单篇博文注入代码的栏位。HTML/JavaScript 小工具住在布局区域里,也就是侧边栏、页眉或页脚;就算只是想让这个小工具只在博文页显示,也要用到
b:widget标记上的pageType属性,而那个属性只能从主题背景 > 修改 HTML 进去改。正文下面的挂载元素,只能写进主题里,接在<data:post.body/>后面。 - 想先拿一篇博文试试,不动模板行吗?
- 行,博文编辑器就是干这个的地方。它的 HTML 视图能让你把挂载元素和加载器直接粘进正文,那一篇就有了评论区,博客其余部分一动不动。有两件事让它只能算试水,不算安装:往后写的每一篇你都得重复这次粘贴;而且帮助中心讲博文的那一篇,写了新博文、预览、保存、发布和更新,却完全没提编辑器里那个视图切换,所以切过去再切回来之后
<script>会变成什么样,没人给你保证。点发布之前,把 HTML 再读一遍。 - 主题编辑器的预览里那一块是空的,是不是粘错了?
- 多半不是,而且靠那个预览也判断不出来。它画的是 Blogger 编辑器里的模板,不是读者拿到的页面,第三方脚本在里面怎么跑,文档没写过,所以预览空着说明不了任何事。保存,打开一篇已发布的博文,在线上博客里下判断。要是那边也没有,就按上面写的混合内容和主机名依次查。
- 想留一句就走的读者,会被登录挡住吗?
- 会。身份路径只有 Google 一条:没有填名字和邮箱的表单,也没有匿名框。这道门槛在 Blogger 上比别处低,因为正看着一个 Google 运营的博客的读者,往往已经登录着 Google,点一下就过去了。真正落在门外的,是那些不肯为一句话去开账号的人。你现在的评论要是大半来自这种人,关掉自带表单之前先掂量一下。
- 已经留在 Blogger 博文上的评论会怎么样?
- 它们照旧存在 Blogger 里,也照旧由自带评论区画出来,新小部件那边每篇博文都是空的对话。在主题里删掉或者用条件挡住那一块,旧评论并没有消失,只是不再出现在页面上。有哪些内容是你不愿意从眼前消失的,删那一行之前先另外收好。
- 从 blogspot 换到自定义域名之后,评论区安静了,这是为什么?
- 小部件拿
location.hostname去和登记在你 site id 上的域名核对,Google 登录还要核对页面来源,而新主机名在你填进去之前是个陌生地址。到控制台里登记自定义域名;Blogger 还在从 blogspot 地址往那边转的这段时间里,把那个地址也一并留着,等到没有东西再指向它了再撤掉。
登记 blogspot.com 地址或自定义域名,就能拿到 site id。
数据来源
- Blogger Help: Change the design of your blog (Layout, Add a Gadget, Theme, Edit HTML) (核对 2026-08-25)
- Blogger Help: Layouts Data Tags (blog.pageType, post.body, post.id, allowComments) (核对 2026-08-25)
- Blogger Help: Page elements tags for layouts (b:section and b:widget attributes) (核对 2026-08-25)
- Blogger Help: Widget Tags for Layouts (b:includable, b:include, b:if) (核对 2026-08-25)
- Blogger Help: Fix mixed content on your blog (核对 2026-08-25)
- Blogger Help: Use themes to change how your blog looks (More, Backup, Download) (核对 2026-08-25)
- Blogger Help: Create, edit, manage, or delete a post (New post, Preview, Save, Publish, Update) (核对 2026-08-25)
- Blogger Help: Set up a custom domain (Settings > Publishing > Custom domain, blogspot address redirect) (核对 2026-08-25)
- Blogger Help (zh-Hant): Change the design of your blog, for the Traditional Chinese 版面配置 / 新增小工具 / 主題 / 編輯 HTML / 更多 / 儲存 labels (核对 2026-08-25)
- Blogger Help (zh-Hant): Show ads on your blog, for the gadget popup path (「HTML/JavaScript」旁邊的「新增」圖示, 標題, 「內容」, 「儲存」) (核对 2026-08-25)
- Blogger Help (zh-Hant): Use themes to change how your blog looks, for 我的主題 / 更多 / 備份 / 下載 (核对 2026-08-25)
- Blogger Help (zh-Hant): Set up a custom domain, for 設定 > 發布中 > 自訂網域 (核对 2026-08-25)
- Blogger Help (zh-Hant): Create, edit, manage, or delete a post, for 新文章 / 預覽 / 儲存 / 發布 / 更新 (no Compose and HTML view toggle documented) (核对 2026-08-25)
- Blogger Help (zh-Hant): Fix mixed content on your blog, for the quoted sentence 「這些瀏覽器錯誤不僅會降低 HTTPS 的安全性,更會讓瀏覽您網誌的使用者感受不佳。」 (核对 2026-08-25)