修改文档

This commit is contained in:
Han 2025-04-07 18:32:06 +08:00
parent a2d19f5045
commit a87c93acd6
4 changed files with 139 additions and 43 deletions

View File

@ -60,27 +60,21 @@
- 执行 pnpm newpost '文章标题' 创建新文章,并在 src/content/posts/ 目录中编辑
- 参考官方指南将博客部署至 Vercel, Netlify,Cloudflare Pages, GitHub Pages 等
### ⚠️ Hexo 迁移 Astro 方法
> `Hexo` 的部署、使用、自动化部署等方法 完全适用于 `Astro`,只需要将 `Hexo` 博客的 `src/_posts/` 目录下的文章文件迁移至 `Astro` 目录下的 `src/content/blog/` 目录下即可,然后自定义 `src/config.ts` 配置文件去自定义博客。<br> 此时,你已成功迁移 Hexo 博客至 Astro 博客!
### 自动部署
**Vercel 部署:**
### Vercel 自动部署
[![vhAstro-Theme](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https://github.com/uxiaohan/vhAstro-Theme)
### 使用命令拉取模板
```bash
# pnpm
pnpm create astro@latest --template uxiaohan/vhAstro-Theme
# yarn
yarn create astro --template uxiaohan/vhAstro-Theme
# npm
npm create astro@latest -- --template uxiaohan/vhAstro-Theme
# 使用 pnpm
pnpm create astro@latest --template uxiaohan/vhAstro-Theme astro-blog
# 或者 yarn
yarn create astro --template uxiaohan/vhAstro-Theme astro-blog
# 或者 npm
npm create astro@latest -- --template uxiaohan/vhAstro-Theme astro-blog
# 进入项目目录
cd astro-blog
```
### 本地开发
@ -96,6 +90,10 @@ pnpm build
pnpm newpost '文章标题'
```
### ⚠️ Hexo 迁移 Astro 方法
> 将 `Hexo` 博客的 `src/_posts/` 目录下的文章文件,复制到 `Astro``src/content/blog/` 目录下即可,然后自定义 `src/config.ts` 配置文件去自定义博客。<br>⚠️ `Hexo` 的部署、使用、自动化部署等方法 完全适用于 `Astro` 博客!<br>🎉 此时,你已成功迁移 Hexo 博客至 Astro 博客!
## 🍬 特色页面
### 友情链接

View File

@ -15,8 +15,7 @@ if (!articleName) {
const ArticleContent = `---
title: "${articleName.replace(/"/g, '\\"')}"
categories: 分类
tags:
- 标签
tags: ['标签']
id: "${articleID.slice(0, 16)}"
date: ${dayjs().format('YYYY-MM-DD HH:mm:ss')}
cover: "封面图URL (为空默认随机内置封面 /public/assets/images/banner)"

View File

@ -68,42 +68,35 @@ top: true
## 🚀 使用方法
### 使用 Github 模板
- 使用此模板 [生成新仓库或 Fork 此仓库](https://github.com/new?template_name=vhAstro-Theme&template_owner=uxiaohan)
- 进行本地开发Clone 新的仓库,执行 `pnpm install` 以安装依赖
- 若未安装 pnpm执行 `npm install -g pnpm`
- 若未安装 [pnpm](https://pnpm.io),执行 `npm install -g pnpm`
- 通过配置文件 `src/config.ts` 自定义博客
- 执行 pnpm newpost '文章标题' 创建新文章,并在 src/content/posts/ 目录中编辑
- 参考官方指南将博客部署至 Vercel, Netlify,Cloudflare Pages, GitHub Pages 等
- 部署前需编辑 `astro.config.mjs` 中的站点设置。
### ⚠️ Hexo 迁移 Astro 方法
### Vercel 自动部署
> `Hexo` 的部署、使用、自动化部署等方法 完全适用于 `Astro`,只需要将 `Hexo` 博客的 `src/_posts/` 目录下的文章文件迁移至 `Astro` 目录下的 `src/content/blog/` 目录下即可,然后自定义 `src/config.ts` 配置文件去自定义博客。<br> 此时,你已成功迁移 Hexo 博客至 Astro 博客!
::btn[Vercel 一键部署]{link="https://vercel.com/new/clone?repository-url=https://github.com/uxiaohan/vhAstro-Theme"}
其他更多部署方式(简简单单闭眼部署),请参考 [Astro 官方文档](https://docs.astro.build/en/guides/integrations-guide/cloudflare/)。
## 📄 文章格式
### 使用命令拉取模板
```md
---
title: 标题
categories: 分类
tags:
- 标签1
- 标签2
id: 文章ID
date: 文章创建日期
updated: 文章更新日期
cover: "封面图URL (为空默认随机内置封面 /public/assets/images/banner)"
recommend: false # 是否推荐文章
top: false # 是否置顶文章
hide: false # 是否隐藏文章
<!-- 页面独有 -->
type: "links" # 页面类型
comment: false # 关闭页面评论(默认开启)
---
```bash
# 使用 pnpm
pnpm create astro@latest --template uxiaohan/vhAstro-Theme astro-blog
# 或者 yarn
yarn create astro --template uxiaohan/vhAstro-Theme astro-blog
# 或者 npm
npm create astro@latest -- --template uxiaohan/vhAstro-Theme astro-blog
# 进入项目目录
cd astro-blog
```
## 💻 命令
### 本地开发
```bash
# 安装依赖
@ -116,6 +109,16 @@ pnpm build
pnpm newpost '文章标题'
```
### ⚠️ Hexo 迁移 Astro 方法
:::note{type="success"}
`Hexo` 博客的 `src/_posts/` 目录下的文章文件,复制到 `Astro``src/content/blog/` 目录下即可,然后自定义 `src/config.ts` 配置文件去自定义博客。
⚠️ `Hexo` 的部署、使用、自动化部署等方法 完全适用于 `Astro` 博客!
🎉 此时,你已成功迁移 Hexo 博客至 Astro 博客!
:::
## 🍬 特色页面
### 友情链接
@ -201,6 +204,29 @@ export default {
}
```
## 📄 文章格式
```md
---
title: 标题
categories: 分类
tags:
- 标签1
- 标签2
id: 文章ID
date: 文章创建日期
updated: 文章更新日期
cover: "封面图URL (为空默认随机内置封面 /public/assets/images/banner)"
recommend: false # 是否推荐文章
top: false # 是否置顶文章
hide: false # 是否隐藏文章
<!-- 页面独有 -->
type: "links" # 页面类型
comment: false # 关闭页面评论(默认开启)
---
```
## ✅ Lighthouse
![vhAstro-Theme-Lighthouse](https://uxiaohan.github.io/v2/2025/03/1742543844078.svg)
@ -628,9 +654,9 @@ $\cup$、$\cap$、$\in$、$\notin$、$\ni$、$\subset$、$\subseteq$、$\supset$
::vhLivePhoto{photo="https://static.vvhan.com/img/2.webp" video="https://static.vvhan.com/img/2.mp4"}
```
::vhLivePhoto{photo="/public/assets/livephoto/1.webp" video="/public/assets/livephoto/1.mp4" type="y"}
::vhLivePhoto{photo="/assets/livephoto/1.webp" video="/assets/livephoto/1.mp4" type="y"}
::vhLivePhoto{photo="/public/assets/livephoto/2.webp" video="/public/assets/livephoto/2.mp4"}
::vhLivePhoto{photo="/assets/livephoto/2.webp" video="/assets/livephoto/2.mp4"}
### Music 组件

View File

@ -0,0 +1,73 @@
---
title: "从Hexo到Astro博客1分钟迁移指南"
categories: Share
tags: ["Hexo", "Astro", "静态博客", "迁移"]
id: "hexo-to-astro-1-minute-migration-guide"
date: 2025-04-07 17:20:46
cover: "https://i0.wp.com/uxiaohan.github.io/v2/2025/04/1744018738123.webp"
---
:::note{type="info"}
🎉 本文将介绍如何将 Hexo 博客迁移到 Astro 博客,只需要 1 分钟即可完成!
作为 `Hexo` 的长期用户,我在 2024 年开始尝试 `Astro``Hexo` 基于模板引擎EJS/Swig的字符串拼接`Astro` 采用基于 `Vite` 的组件化构建体系。`Hexo``hexo generate` 时完成全量渲染,`Astro``astro build` 时执行 `SSG`(静态站点生成)+ `ISR`(增量静态再生)。
`Astro` 的组件化架构、按需加载,构建速度、`Vite` 驱动,热更新速度快等现代化开发体验 深深吸引了我!
:::
### 项目结构对比
| Hexo | Astro | 说明 |
| ------------ | ---------------- | ------------ |
| \_config.yml | src/config.ts | 配置文件 |
| source | src/content/blog | 主内容目录 |
| themes | src/components | 组件目录 |
| public | public | 静态资源目录 |
## 迁移步骤详解
### 1. 初始化 Astro 项目
```bash
# 创建美妙的 Astro 项目
npm create astro@latest --template uxiaohan/vhAstro-Theme astro-blog
# 进入项目目录
cd astro-blog
# 安装依赖
npm install
# 本地预览
npm run dev
```
### 迁移文章内容
:::note{type="success"}
`Hexo` 博客的 `src/_posts/` 目录下的文章文件,复制到 `Astro``src/content/blog/` 目录下即可,然后自定义 `src/config.ts` 配置文件去自定义博客。
⚠️ `Hexo` 的部署、使用、自动化部署等方法 完全适用于 `Astro` 博客!
🎉 此时,你已成功迁移 Hexo 博客至 Astro 博客!
:::
### Vercel 自动部署
::btn[Vercel 一键部署]{link="https://vercel.com/new/clone?repository-url=https://github.com/uxiaohan/vhAstro-Theme"}
其他更多部署方式(简简单单闭眼部署),请参考 [Astro 官方文档](https://docs.astro.build/en/guides/integrations-guide/cloudflare/)。
### 迁移后性能对比
| 指标 | Hexo | Astro | 提升 |
| --------------- | ----- | ----- | ---- |
| 构建时间 | 12.3s | 5.1s | 58%↑ |
| Lighthouse 性能 | 89 | 100 | 12%↑ |
| 页面大小 | 145KB | 23KB | 84%↓ |
### 总结
迁移到 Astro 后,我的技术博客实现了:
- ✅ 构建速度提升 2.4 倍
- ✅ 页面性能评分全满分
- ✅ 开发体验现代化
- ✅ 扩展能力显著增强