从雨果迁移
Hugo 是一个基于 Go 构建的开源静态站点生成器。
¥Hugo is an open-source static site generator built on Go.
Hugo 和 Astro 之间的主要相似之处
标题部分 Hugo 和 Astro 之间的主要相似之处¥Key Similarities between Hugo and Astro
Hugo 和 Astro 有一些相似之处,可以帮助你迁移项目:
¥Hugo and Astro share some similarities that will help you migrate your project:
-
Hugo 和 Astro 都是现代静态站点生成器,非常适合 内容驱动的网站 之类的博客。
-
Hugo 和 Astro 都可以让你 在 Markdown 中创作你的内容。但是,Hugo 包含几个特殊的 frontmatter 属性,并允许你用 YAML、TOML 或 JSON 编写 frontmatter。即使许多现有的 Hugo frontmatter 属性在 Astro 中不会是 “special”,你也可以继续使用现有的 Markdown 文件和 YAML frontmatter 值。
-
Hugo 和 Astro 都允许你使用各种 集成和外部包 来增强你的网站。
Hugo 和 Astro 之间的主要区别
标题部分 Hugo 和 Astro 之间的主要区别¥Key Differences between Hugo and Astro
当你在 Astro 中重建 Hugo 站点时,你会注意到一些重要的差异:
¥When you rebuild your Hugo site in Astro, you will notice some important differences:
-
Hugo 使用 Go 模板进行页面模板化。Astro 语法 是 HTML 的类似 JSX 的超集。
-
Astro 不使用短代码来表示标准 Markdown 文件中的动态内容,但 Astro 的 MDX 集成 允许你在 MDX 文件中使用 JSX 和导入组件。
-
虽然 Hugo 可以使用 “partials” 作为可重复使用的布局元素,但 Astro is entirely component-based. Any
.astro
file can be a component, a layout or an entire page, and can import and render any other Astro components. Astro components can also include other UI framework components (e.g. React, Svelte, Vue, Solid) 以及来自 项目中的其他文件 的内容或元数据(例如 Markdown 或 MDX)也可以。
从 Hugo 切换到 Astro
标题部分 从 Hugo 切换到 Astro¥Switch from Hugo to Astro
要将 Hugo 博客转换为 Astro,请从我们的博客主题入门模板开始,或者在我们的 主题展示 中探索更多社区博客主题。
¥To convert a Hugo blog to Astro, start with our blog theme starter template, or explore more community blog themes in our theme showcase.
你可以将 --template
参数传递给 create astro
命令,以使用我们的官方启动器之一启动一个新的 Astro 项目。或者,你可以 从 GitHub 上任何现有的 Astro 存储库启动一个新项目。
¥You can pass a --template
argument to the create astro
command to start a new Astro project with one of our official starters. Or, you can start a new project from any existing Astro repository on GitHub.
将你现有的 Markdown(或 MDX,带有我们的可选集成)文件作为内容添加到 创建 Markdown 或 MDX 页面。你可能需要将 frontmatter 转换为 YAML,因为 Astro 只允许在这些文件中使用 YAML frontmatter。
¥Bring your existing Markdown (or MDX, with our optional integration) files as content to create Markdown or MDX pages. You may need to convert your frontmatter to YAML, since Astro only allows YAML frontmatter in these files.
要继续在 Markdown 内容中使用动态内容,例如变量、表达式或 UI 组件,请添加 Astro 的可选 MDX 集成,并将现有 Markdown 文件转换为 MDX 页面。MDX 支持 YAML frontmatter,因此你可以保留现有的 frontmatter 属性。但是,你必须将任何短代码语法替换为 MDX 自己的语法,它允许 JSX 表达式和/或组件导入。
¥To continue to use dynamic content such as variables, expressions or UI components within your Markdown content, add Astro’s optional MDX integration and convert your existing Markdown files to MDX pages. MDX supports YAML frontmatter, so you can keep your existing frontmatter properties. But, you must replace any shortcode syntax with MDX’s own syntax, which allows JSX expressions and/or component imports.
要转换其他类型的网站,例如作品集或文档网站,请参阅 astro.new 上的更多官方入门模板。你将找到每个项目的 GitHub 存储库的链接,以及在 IDX、StackBlitz、CodeSandbox 和 Gitpod 在线开发环境中打开工作项目的一键链接。
¥To convert other types of sites, such as a portfolio or documentation site, see more official starter templates on astro.new. You’ll find a link to each project’s GitHub repository, as well as one-click links to open a working project in IDX, StackBlitz, CodeSandbox and Gitpod online development environments.
社区资源
标题部分 社区资源¥Community Resources