- 我们将在以下所有示例中使用
yml/yaml
格式,建议使用yaml
而不是toml
,因为它更易读。- 如果需要,可以在 YML to TOML 找到任何转换器。
入门 🚀
-
按照 Hugo Docs - Quick Start 指南安装 。
(确保安装 Hugo >= v0.112.4) -
创建一个新的 站点
hugo new site MyFreshWebsite --format yaml # 用你的网站名称替换 MyFreshWebsite
注意:
- 旧版本的 Hugo 可能不支持
--format yaml
- 在这里阅读有关 Hugo Docs - hugo new site 命令 的更多信息
- 旧版本的 Hugo 可能不支持
创建新站点后,按照以下步骤添加 PaperMod
安装/更新 PaperMod
- 主题位于
MyFreshWebsite/themes
目录中。 - PaperMod 将安装在
MyFreshWebsite/themes/PaperMod
展开方法 1 - Git Clone
安装:在 Hugo 站点文件夹
MyFreshWebsite
中运行:git clone https://github.com/adityatelange/hugo-PaperMod themes/PaperMod --depth=1
如果您希望保持特定版本,请在上述命令末尾使用
--branch v7.0
。更新:在 Hugo 站点文件夹
MyFreshWebsite
中运行:cd themes/PaperMod git pull
展开方法 2 - Git Submodule(推荐)
安装:
git submodule add --depth=1 https://github.com/adityatelange/hugo-PaperMod.git themes/PaperMod git submodule update --init --recursive # 当您重新克隆存储库时需要(子模块可能不会自动克隆)
如果您希望保持特定版本,请在上述命令末尾使用
--branch v7.0
。 有关 git 子模块的更多信息,请阅读此处。更新:在 Hugo 站点文件夹
MyFreshWebsite
中运行:git submodule update --remote --merge
展开方法 4 - Hugo 模块
安装:
在操作系统中安装 Go 编程语言。
初始化您自己的 hugo 模块
hugo mod init YOUR_OWN_GIT_REPOSITORY
- 在
config.yml
文件中添加 PaperMod
1 2 3
module: imports: - path: github.com/adityatelange/hugo-PaperMod
安装:在 Hugo 站点文件夹
MyFreshWebsite
中运行:hugo mod get -u
更新:
hugo mod get -u
阅读更多: Hugo文档 - HUGO MODULES
最后在您的站点配置中将主题设置为 PaperMod
在 config.yml
中添加:
|
|
接下来 - 自定义 PaperMod 以满足您的偏好。
- 在您第一次设置之后,您的站点将是空白的。
- 您可以查看本网站的源代码 - PaperMod 的 exampleSite 源代码
- 滚动到本页下方,您将找到关于每个部分的更具体的详细信息。
- 请查看下面的所有页面,了解如何配置 PaperMod。
支持 🫶
- Star 🌟 PaperMod 的 Github 仓库。
- 通过在社交媒体上分享并向朋友推荐来帮助宣传 PaperMod。 🗣️
- 您还可以在 Github 赞助者 / Ko-Fi 上赞助 🏅。
以 PaperMod 为特色的视频
您可以观看一些在 YouTube 上可用的视频,了解创作者的思想以及设置过程。
▶️ https://youtube.com/playlist?list=PLeiDFxcsdhUrzkK5Jg9IZyiTsIMvXxKZP
快速链接
示例 config.yml
示例站点结构在此处:exampleSite
适当使用
baseURL: "https://examplesite.com/"
title: ExampleSite
paginate: 5
theme: PaperMod
enableRobotsTXT: true
buildDrafts: false
buildFuture: false
buildExpired: false
googleAnalytics: UA-123-45
minify:
disableXML: true
minifyOutput: true
params:
env: production # to enable google analytics, opengraph, twitter-cards and schema.
title: ExampleSite
description: "ExampleSite description"
keywords: [Blog, Portfolio, PaperMod]
author: Me
# author: ["Me", "You"] # multiple authors
images: ["<link or path of image for opengraph, twitter-cards>"]
DateFormat: "January 2, 2006"
defaultTheme: auto # dark, light
disableThemeToggle: false
ShowReadingTime: true
ShowShareButtons: true
ShowPostNavLinks: true
ShowBreadCrumbs: true
ShowCodeCopyButtons: false
ShowWordCount: true
ShowRssButtonInSectionTermList: true
UseHugoToc: true
disableSpecial1stPost: false
disableScrollToTop: false
comments: false
hidemeta: false
hideSummary: false
showtoc: false
tocopen: false
assets:
# disableHLJS: true # to disable highlight.js
# disableFingerprinting: true
favicon: "<link / abs url>"
favicon16x16: "<link / abs url>"
favicon32x32: "<link / abs url>"
apple_touch_icon: "<link / abs url>"
safari_pinned_tab: "<link / abs url>"
label:
text: "Home"
icon: /apple-touch-icon.png
iconHeight: 35
# profile-mode
profileMode:
enabled: false # needs to be explicitly set
title: ExampleSite
subtitle: "This is subtitle"
imageUrl: "<img location>"
imageWidth: 120
imageHeight: 120
imageTitle: my image
buttons:
- name: Posts
url: posts
- name: Tags
url: tags
# home-info mode
homeInfoParams:
Title: "Hi there \U0001F44B"
Content: Welcome to my blog
socialIcons:
- name: x
url: "https://x.com/"
- name: stackoverflow
url: "https://stackoverflow.com"
- name: github
url: "https://github.com/"
analytics:
google:
SiteVerificationTag: "XYZabc"
bing:
SiteVerificationTag: "XYZabc"
yandex:
SiteVerificationTag: "XYZabc"
cover:
hidden: true # hide everywhere but not in structured data
hiddenInList: true # hide on list pages and home
hiddenInSingle: true # hide on single page
editPost:
URL: "https://github.com/<path_to_repo>/content"
Text: "Suggest Changes" # edit text
appendFilePath: true # to append file path to Edit link
# for search
# https://fusejs.io/api/options.html
fuseOpts:
isCaseSensitive: false
shouldSort: true
location: 0
distance: 1000
threshold: 0.4
minMatchCharLength: 0
limit: 10 # refer: https://www.fusejs.io/api/methods.html#search
keys: ["title", "permalink", "summary", "content"]
menu:
main:
- identifier: categories
name: categories
url: /categories/
weight: 10
- identifier: tags
name: tags
url: /tags/
weight: 20
- identifier: example
name: example.org
url: https://example.org
weight: 30
# Read: https://github.com/adityatelange/hugo-PaperMod/wiki/FAQs#using-hugos-syntax-highlighter-chroma
pygmentsUseClasses: true
markup:
highlight:
noClasses: false
# anchorLineNos: true
# codeFences: true
# guessSyntax: true
# lineNos: true
# style: monokai
示例 Page.md
---
title: "My 1st post"
date: 2020-09-15T11:30:03+00:00
# weight: 1
# aliases: ["/first"]
tags: ["first"]
author: "Me"
# author: ["Me", "You"] # multiple authors
showToc: true
TocOpen: false
draft: false
hidemeta: false
comments: false
description: "Desc Text."
canonicalURL: "https://canonical.url/to/page"
disableHLJS: true # to disable highlightjs
disableShare: false
disableHLJS: false
hideSummary: false
searchHidden: true
ShowReadingTime: true
ShowBreadCrumbs: true
ShowPostNavLinks: true
ShowWordCount: true
ShowRssButtonInSectionTermList: true
UseHugoToc: true
cover:
image: "<image path/url>" # image path/url
alt: "<alt text>" # alt text
caption: "<text>" # display caption under cover
relative: false # when using page bundles set this to true
hidden: true # only hide on current single page
editPost:
URL: "https://github.com/<path_to_repo>/content"
Text: "Suggest Changes" # edit text
appendFilePath: true # to append file path to Edit link
---
你可以通过创建 archetypes/post.md
来使用它。
hugo new --kind post <name>