<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>主题指南 on IMX 示例站</title><link>https://hugo-theme-imx.vercel.app/categories/%E4%B8%BB%E9%A2%98%E6%8C%87%E5%8D%97/</link><description>Recent content in 主题指南 on IMX 示例站</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Sat, 29 Aug 2026 18:00:00 +0800</lastBuildDate><atom:link href="https://hugo-theme-imx.vercel.app/categories/%E4%B8%BB%E9%A2%98%E6%8C%87%E5%8D%97/index.xml" rel="self" type="application/rss+xml"/><item><title>从空目录到上线：hugo-theme-imx 全量配置手册</title><link>https://hugo-theme-imx.vercel.app/posts/imx-configuration-deployment-guide/</link><pubDate>Wed, 15 Jul 2026 11:00:00 +0800</pubDate><guid>https://hugo-theme-imx.vercel.app/posts/imx-configuration-deployment-guide/</guid><description>&lt;p&gt;这篇手册按一个真实站点的顺序来写：先把环境和模块装好，再整理 &lt;code&gt;hugo.toml&lt;/code&gt;、内容与图片，最后部署。文中的配置以 IMX 当前模板实际读取的参数为准，不把 Hugo 的数百项通用设置全部塞进来凑数。&lt;/p&gt;
&lt;p&gt;&lt;img
 src="https://hugo-theme-imx.vercel.app/posts/imx-configuration-deployment-guide/images/cover.webp"
 alt="IMX 从配置到部署的流程示意"
 width="1600"
 height="900"
 loading="lazy"
 decoding="async"&gt;&lt;/p&gt;
&lt;p&gt;如果只想先看效果，下载主题 Release 源码后，在主题目录运行：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;hugo server --source exampleSite
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;但正式建站不要复制 &lt;code&gt;exampleSite/go.mod&lt;/code&gt;。其中的 &lt;code&gt;replace github.com/c-x-x/hugo-theme-imx =&amp;gt; ../&lt;/code&gt; 只为主题仓库本地开发服务，离开这个目录结构就会失效。&lt;/p&gt;
&lt;h2 id="1-环境与目录"&gt;1. 环境与目录&lt;/h2&gt;
&lt;p&gt;IMX 通过 Hugo Module 安装，最低要求是 Hugo Extended &lt;code&gt;0.112.0&lt;/code&gt; 和 Go &lt;code&gt;1.20&lt;/code&gt;。先确认本机工具：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;hugo version
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;go version
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;git --version
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;hugo version&lt;/code&gt; 的输出应包含 &lt;code&gt;extended&lt;/code&gt;。普通建站不需要 Node.js，也不需要执行主题仓库里的 &lt;code&gt;npm install&lt;/code&gt;；Node.js 和 Playwright 只是主题维护者跑回归测试时使用。&lt;/p&gt;
&lt;p&gt;新站点可以这样开始：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;hugo new site my-blog
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; my-blog
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;git init
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;hugo mod init github.com/your-name/my-blog
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;一个够用的目录大致如下：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;my-blog/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── archetypes/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── assets/ # 覆盖主题 CSS 等资源时才需要
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── content/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;│ ├── _index.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;│ ├── about.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;│ ├── categories/_index.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;│ ├── posts/_index.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;│ └── tags/_index.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── static/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;│ └── images/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── go.mod
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── go.sum
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;└── hugo.toml
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;public/&lt;/code&gt; 和 &lt;code&gt;resources/_gen/&lt;/code&gt; 都是构建产物，不应当手工维护。建议加入 &lt;code&gt;.gitignore&lt;/code&gt;：&lt;/p&gt;</description></item><item><title>把评论留在 GitHub：IMX 主题接入 Giscus</title><link>https://hugo-theme-imx.vercel.app/posts/imx-giscus-comments/</link><pubDate>Wed, 15 Jul 2026 10:00:00 +0800</pubDate><guid>https://hugo-theme-imx.vercel.app/posts/imx-giscus-comments/</guid><description>&lt;p&gt;Giscus 不替你另建一套评论数据库。每篇文章的评论最终都是 GitHub Discussions 里的一个讨论，访客用 GitHub 账号登录后发言，站长仍在熟悉的仓库里管理内容。对静态博客来说，这套办法省心，也方便迁移。&lt;/p&gt;
&lt;p&gt;&lt;img
 src="https://hugo-theme-imx.vercel.app/posts/imx-giscus-comments/images/cover.webp"
 alt="IMX 主题与 Giscus 评论连接示意"
 width="1600"
 height="900"
 loading="lazy"
 decoding="async"&gt;&lt;/p&gt;
&lt;p&gt;IMX 已经把 Giscus 的加载、懒加载和深浅色同步写进主题。真正需要做的事只有两部分：先把 GitHub 仓库准备好，再把 giscus.app 生成的参数原样填进 &lt;code&gt;hugo.toml&lt;/code&gt;。&lt;/p&gt;
&lt;h2 id="开始前先选好评论仓库"&gt;开始前先选好评论仓库&lt;/h2&gt;
&lt;p&gt;评论可以放在博客源码仓库，也可以单独建一个仓库。个人站点我更倾向于单独建，例如 &lt;code&gt;your-name/blog-comments&lt;/code&gt;：源码仓库的 Issues、Pull Requests 和 Discussions 不会混在一起，将来更换静态站点生成器，也不影响旧评论。&lt;/p&gt;
&lt;p&gt;无论选哪一种，仓库都要满足三个条件：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;仓库是公开仓库。Giscus 需要让访客读取讨论内容。&lt;/li&gt;
&lt;li&gt;仓库已经启用 GitHub Discussions。&lt;/li&gt;
&lt;li&gt;Giscus GitHub App 已获准访问这个仓库。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;若仓库属于组织，安装 GitHub App 可能需要组织所有者批准。不要等到配置页一直报错才回头查权限。&lt;/p&gt;
&lt;h2 id="第一步开启-github-discussions"&gt;第一步：开启 GitHub Discussions&lt;/h2&gt;
&lt;p&gt;进入评论仓库，依次打开 &lt;strong&gt;Settings → General → Features&lt;/strong&gt;，勾选 &lt;strong&gt;Discussions&lt;/strong&gt;。仓库顶部随后会出现 &lt;strong&gt;Discussions&lt;/strong&gt; 标签。&lt;/p&gt;
&lt;p&gt;第一次进入 Discussions 时，GitHub 会让你选择或创建讨论分类。IMX 示例配置使用 &lt;code&gt;Announcements&lt;/code&gt;，但这不是硬性要求。你可以新建一个名为“博客评论”的分类，只要稍后在 giscus.app 里选择同一个分类即可。&lt;/p&gt;
&lt;p&gt;建议把分类的格式设为 &lt;strong&gt;Open-ended discussion&lt;/strong&gt;。如果使用公告类分类，还要确认普通访客能够在对应讨论下回复。&lt;/p&gt;
&lt;h2 id="第二步安装-giscus-app"&gt;第二步：安装 Giscus App&lt;/h2&gt;
&lt;p&gt;打开 &lt;a href="https://github.com/apps/giscus"&gt;Giscus App 安装页&lt;/a&gt;，点击 &lt;strong&gt;Install&lt;/strong&gt;，选择仓库所属的个人账号或组织。&lt;/p&gt;</description></item></channel></rss>