Jekyll、Hugo、Astro 和 Eleventy 等静态站点生成器 (SSG) 使用 Markdown 文件来构建网站。如果您的内容团队使用 Word 编写内容,则将该内容转换为 Markdown 是关键的第一步。本指南涵盖了完整的 Word到静态站点 工作流程。
核心工作流程
Word (.docx) → Markdown (.md) → SSG build → HTML website
每个箭头都是一个变换:
- WordToMD 转换 .docx → .md
- 您的 SSG 构建系统读取 .md 并生成 HTML
- CDN 或托管平台提供 HTML 服务
添加 Frontmatter
静态站点生成器需要 YAML 前言 。转换后 WordToMD,在内容之前添加一个 frontmatter 块:
杰基尔/十一
---
layout: post
title: "Your Document Title"
date: 2026-05-25
categories: [tutorial, documentation]
tags: [word, markdown]
permalink: /blog/your-document/
---
雨果
---
title: "Your Document Title"
date: 2026-05-25
draft: false
tags: ["tutorial", "documentation"]
slug: "your-document"
---
阿斯特罗 每个 Markdown 文件顶部的
---
title: "Your Document Title"
date: 2026-05-25
description: "A brief description for SEO."
tags: ["tutorial", "documentation"]
draft: false
---
文件组织
SSG 期望特定目录中的内容文件:
| SSG | 博客文章目录 |
|---|---|
| 杰基尔 | _posts/ (文件名: YYYY-MM-DD-slug.md) |
| 雨果 | content/posts/ |
| 阿斯特罗 每个 Markdown 文件顶部的 | src/content/blog/ |
| 十一 | 您配置的任何目录 |
| Next.js | content/ or posts/ (取决于设置) |
匹配您的 SSG 的文件名约定。Jekyll是最严格的: 2026-05-25-word-to-static-site.md.
标题和内容结构
SSG 显示 # Heading 1 作为页面的主标题。自从 title frontmatter 字段已经定义了页面标题,使用 H2 (##) 作为您的顶级内容标题,并避免在正文中使用 H1。
转换之前,请检查您的 Word 文档是否仅使用标题 1 作为文档标题,并使用标题 2 作为主要部分。看 Markdown 标题指南 。
静态站点中的图像
Word 文档中的图像需要:
- 从 Word 导出(另存为→网页将图像复制到文件夹)
- 放置在您的 SSG 的静态资产目录中(例如,
public/images/对于 Astro/Next.js,assets/images/) - Markdown 中引用:

表格
字表通过以下方式转换为 GFM 语法 WordToMD. All major SSGs render GFM tables. See Markdown 表:完整指南.
代码块
对于技术文档,请使用带有语言标识符的隔离代码块进行语法突出显示:
```python
def convert_document(filepath):
with open(filepath, 'rb') as f:
return mammoth.convert_to_markdown(f).value
See [Markdown Code Blocks Guide](/blog/markdown-code-blocks-guide) for all supported languages.
## Validating Markdown Before Build
Before running your SSG build, validate your converted Markdown:
- **markdownlint** — Checks for style consistency and errors
- **Vale** — Prose linting for technical writing
- **Your SSG's dev server** — The fastest way; run `hugo serve`, `jekyll serve`, or `astro dev` and check the rendered output
## Batch Conversion for Large Content Migrations
If you're migrating an existing Word-based content library to an SSG:
1. Use [WordToMD](/#converter) for individual files
2. For dozens of files, see [Batch Convert Word to Markdown](/blog/batch-convert-word-to-markdown) for command-line tools
3. Write a script to add frontmatter and rename files to your SSG's convention
A Python or Node.js script can automate the frontmatter injection after batch conversion.
## SSG-Specific Tips
### Jekyll
- Filename must include the date: `2026-05-25-your-slug.md`
- Use `categories:` for site navigation
- Liquid template tags conflict with certain curly-brace content in Markdown — escape with `{% raw %}...{% endraw %}`
### Hugo
- Hugo has strict frontmatter validation — required fields depend on your theme
- Use `hugo new content/posts/slug.md` to create a properly templated file, then paste converted content
### Astro
- Uses Content Collections with schema validation
- Ensure frontmatter fields match the schema in `src/content/config.ts`
- Astro's MDX support allows components inside Markdown if needed
### Eleventy
- Most flexible SSG — any .md file in any directory is content
- Frontmatter format is configurable (YAML, TOML, JSON)
## FAQ
**Do I need to convert each Word file manually?**
For a few files, manual conversion with [WordToMD](/#converter) is fastest. For a whole content library, [batch conversion](/blog/batch-convert-word-to-markdown) makes more sense.
**My SSG build fails after importing converted Markdown. What's wrong?**
Check for: (1) missing required frontmatter fields, (2) unescaped special characters in frontmatter values, (3) smart quotes in frontmatter strings (replace with straight quotes).
**Can Word documents become MDX files for React-based SSGs?**
Yes. Convert to standard Markdown first, rename to .mdx, then add React component imports at the top if needed. See the basics in [What Is Markdown](/blog/what-is-markdown-guide).
**Which SSG is best for a team that writes in Word?**
If your team is non-technical and writes in Word, a headless CMS (like Contentful or Sanity) with Markdown support may be a better fit than a file-based SSG. The Word → Markdown workflow works well for developers and hybrid teams.
## Conclusion
Static site generators are an excellent home for content that starts in Word. [WordToMD](/#converter) handles the conversion step; your SSG handles the publishing step. Add frontmatter, organize your files per the SSG's conventions, and you have a content pipeline that scales.