996 字
5 分钟
定制与修改主页
2026-06-15
无标签

定制与修改主页#

由于本博客项目在主页上集成了较多个性化、复杂的展示块(如多语言自我介绍、技术栈标签、动态按钮等),为了保证最大的排版灵活性,主页的大部分文案和布局直接写在了代码源文件里,而不是配置在普通的 config 文件中。

如果你希望对主页进行深度的修改(比如更换文案、增加图片、调整排版结构),你需要直接修改主页的 .astro 源码文件。

本篇教程将带你找到对应的代码位置并指导你如何修改。

1. 主页代码在哪里?#

整个主页的核心代码都存放在这一个文件中: src/pages/[...lang]/index.astro

你可以使用 VSCode 或其他代码编辑器打开这个文件。它是一个标准的 Astro 组件文件,主要分为两部分:

  1. 顶部的代码逻辑区(由 --- 包裹),包含数据处理、多语言文案字典。
  2. 底部的 HTML 模板区,使用 Tailwind CSS 控制样式,并且嵌入了 Astro 组件。

2. 如何修改主页的文字文案?#

为了配合系统的多语言 (i18n) 机制,主页的文案被统一写在了一个名为 t 的翻译字典对象中。

index.astro 文件的顶部代码区(约第 18 行左右),你会看到类似下面这样的结构:

// Translations for the homepage
const t = {
zh_CN: {
title: "Hi, 我是 Aquamarine",
subtitle: "前端开发者 & 语言爱好者",
description: "我专注于 <strong>前端设计</strong>,使用 <strong>React</strong> 和 <strong>Vue</strong> 构建美观且交互丰富的 Web 应用。...",
readBlog: "阅读博客",
viewDocs: "查看文档",
// ...更多字段
},
en: {
title: "Hi, I'm Aquamarine",
// ...英文翻译
},
// ...其它语言
};

修改方法: 你只需要直接在这些字符串中修改文字即可!

  • 如果你懂 HTML,你可以在 description 等字段中随意穿插 <strong> (加粗), <br> (换行) 等标签来控制排版。
  • 如果你要修改某个主语言的文案,请一定记得把你启用的外语(如 en, ja)对应的文案也一并修改,保持结构对称。

3. 如何修改主页的 HTML 结构和排版?#

如果你想做的不仅是修改文字,还想修改排版(比如增加一个展示板块,或者修改按钮的颜色),那么你需要往下滚动,找到 HTML 模板区(位于第二个 --- 之后)。

这里使用了强大的 Tailwind CSS,你会看到很多带有 class="..." 的标签:

例子 1:修改头像区域#

你会看到如下代码渲染头像:

<div class="w-36 h-36 md:w-52 md:h-52 shrink-0 rounded-full overflow-hidden border-[6px] border-[var(--primary)]/20...">
<ImageWrapper src={profileConfig.avatar || '/favicon.svg'} alt="Avatar" class="w-full h-full object-cover" />
</div>

它默认读取你 config.ts 中的 avatar 配置。你可以更改包裹它的 div 的 class 属性,比如改变圆角、阴影或大小。

例子 2:修改技术栈小标签#

你会在模板区中找到如下这些静态标签代码:

<div class="flex items-center gap-2 px-4 py-2 rounded-xl bg-[var(--primary)]/10 text-[var(--primary)]...">
<Icon name="fa6-brands:react" class="text-xl" /> React
</div>
  • 你可以任意复制、粘贴、删除这些 <div class="flex items-center..."> 代码块来增减你的技术栈标签。
  • <Icon name="..." /> 是一个图标组件,你可以前往 Icones 网站 寻找任何你喜欢的图标,并将 name 替换为新图标的名字(比如 fa6-brands:python)。

例子 3:修改按钮的链接或图标#

跳转到博客和文档的按钮代码:

<a href={...} class="group bg-[var(--primary)] text-white px-6 py-3.5 rounded-xl...">
<Icon name="material-symbols:article-outline-rounded" class="text-xl" />
{currentT.readBlog}
<Icon name="material-symbols:arrow-forward-rounded" class="text-xl transition-transform group-hover:translate-x-1" />
</a>
  • {currentT.readBlog} 代表这里动态读取了你在顶部字典里写的文字。
  • 你可以像前面一样替换 <Icon> 中的图标。

注意事项#

  • 在修改 index.astro 文件时,请保持 Astro 和 HTML 的基本语法正确(标签需要闭合)。
  • 由于这里广泛使用了 Tailwind CSS,如果你想改颜色、间距,可以直接查阅 Tailwind CSS 官方文档 并在 class="" 中修改对应的工具类。
定制与修改主页
https://aquamarine-z.github.io/docs/fuwari/advanced-customization/05-modify-homepage/
作者
Aquamarine
发布于
2026-06-15
许可协议
CC BY-NC-SA 4.0