Hugo — лучший генератор статических сайтов для использования

Go

Hugo — генератор статических веб-сайтов, реализованный на языке Go. Простой, удобный в использовании, эффективный, легко расширяемый и быстро развертываемый.

Почему выбирают Хьюго?

  • быстрый! Самый быстрый генератор статических сайтов в мире! 5 секунд для создания 6000 страниц!
  • Супер подробная документация, хоть и на английском
  • активное сообщество
  • Более свободный способ организации контента
  • Богатые темы, в настоящее время количество тем превысило Hexo

Установить Хьюго

1. Бинарная установка (рекомендуется: легко, быстро)

Windows

  • перейти кGitHub.com/go Hugo IO/Hu…
  • Скачать Hugo_X.XX_Windows-64bit.zip
  • Разархивируйте, чтобы получить Hugo.exe
  • Добавьте каталог, в котором находится Hugo.exe, в переменные системной среды.
  • Установка завершена!

Установите напрямую с Homebrew под Mac:

brew install hugo

2. Установка источника

Чтобы скомпилировать и установить исходный код, сначала установите зависимые инструменты:


mkdir $HOME/src
cd $HOME/src
git clone https://github.com/gohugoio/hugo.git
cd hugo
go install 

go install --tags extendedПоддержка Sass/SCSS при необходимости.

如果是Windows用户,  `$HOME` 环境变量是 `%USERPROFILE%`

Совет: мне иногда нравится это делать, откройте папку /src , щелкните правой кнопкой мыши папку и выберите здесь git bash ,git clone https://github.com/gohugoio/hugo.git,Потомcd hugo,go install

[Во время установки будет сообщено об ошибке] go get 报错"https fetch failed: Get https://golang.org/x..."

Из-за отсутствия внутренней связиgolang.org, будет сообщено об ошибке при использовании go get для установки пакета, зависящего от golang.org.Fetching https://golang.org/x, если вы не используете прокси, вам нужно скачать его вручную.

существует$GOPATH/srcСоздано по путиgolang/xПапку и загрузите нужный пакет, возьмите приведенную выше ошибку в качестве примера под Windows. Вышеупомянутая ошибка не может быть полученаhttps://golang.org/x/net text image syncТеперь давайте получим его вручную.

ОткрытымGit Bash

mkidr -p ~/go/src/golang.org/x  //注意路径
cd ~/go/src/golang.org/x
git clone https://github.com/golang/net.git
git clone https://github.com/golang/text.git
git clone https://github.com/golang/image.git
git clone https://github.com/golang/sync.git

Таким образом, когда мы пойдем снова, это будет успешным.

Убедитесь, что установка прошла успешно

hugo version

Пожалуйста, обратитесь к другим системамОфициальная документация - Установка

Создать сайт

hugo new site yannotes.cn
cd yannotes.cn

После выполнения команды Hugo New Site вы получите каталог со следующими файлами:

├── archetypes/
├── config.toml
├── content/
├── data/
├── layouts/
├── static/
├── resources/
├── public/
└── themes/
  • archetypes: хранить файлы шаблонов .md, похожие на скаффолды hexo, эта папка имеет более высокий приоритет, чем папка /archetypes в теме
  • config.toml: файл конфигурации
  • контент: хранить весь контент веб-сайта, аналогичный источнику hexo
  • data: хранить файлы данных для вызовов шаблонов, аналогично исходному файлу hexo/_data.
  • layouts: хранить шаблоны .html, эта папка имеет более высокий приоритет, чем папка /layouts в теме
  • static: Храните статические файлы, такие как изображения, css, js и т. д. Файлы в этом каталоге будут скопированы непосредственно в /public, и приоритет этой папки выше, чем у папки /static в теме.
  • темы: сохранить темы
  • public: после выполнения команды Hugo сохраните сгенерированные статические файлы

Добавить темы (скины)

прибытьсписок скиновВыберите скин, который вам нравится, например, что вы думаетеHydeСкин хороший, найдите соответствующий адрес GitHub, создайте каталогthemes,существуетthemesоболочекgit cloneвниз:

git clone https://github.com/spf13/hyde.git themes/hyde

# 编辑你的 config.toml 配置文件使用该主题
echo 'theme = "hyde"' >> config.toml

темы: даже:GitHub.com/o низкий OL O/Hu Ge…

git clone https://github.com/olOwOlo/hugo-theme-even themes/even

добавить статью

  • Создайте страницу о себе:
$ hugo new about.md

about.mdАвтоматически генерируется в content/about.md , откройтеabout.mdПосмотри:

+++
date = "2018-12-02T01:46:53+08:00"
draft = true
title = "about"

+++
正文内容

Содержимое находится в формате Markdown, а содержимое между +++TOMLформат, в соответствии с вашими предпочтениями, вы можете изменить наYAMLформат (отмеченный ---) илиJSONФормат.

  • Создайте первую статью и поместите ее в каталог сообщений., что удобно для последующего создания агрегированных страниц.
$ hugo new post/first.md

Он создаст каталог post/first.md и файл в каталоге содержимого в корне сайта.

Открыть для редактирования post/first.md :

---
date: "2018-12-02T01:46:53+08:00"
title: "first"

---
### Hello Hugo

 1. aaa
 1. bbb
 1. ccc

Локальный запуск Hugo

Выполните команду Hugo в корневом каталоге вашего сайта для отладки:

$ hugo server --theme=hyde --buildDrafts --watch

использовать--watchПараметр может автоматически обновлять браузер при изменении содержимого статьи.

Открыть в браузере:http://localhost:1313

  • Обработка каталогов навигации
[[menu.main]]
  name = "Home"
  weight = 10
  identifier = "home"
  url = "/"
[[menu.main]]
  name = "Archives"
  weight = 20
  identifier = "archives"
  url = "/archives/"
[[menu.main]]
  name = "Tags"
  weight = 30
  identifier = "tags"
  url = "/tags/"

Это управление конфигурацией навигации сайта.url = "/tags/"Указывает, что он находится в корневом каталоге сайтаcontent/tags/Справочника, других подобных, вполне достаточно корреспонденции один на один.

добавить систему комментариев

gitment

в настоящее время используетgitmentВ процессе главноеrepoПроблема в значении параметра, это имя вашего склада (а не полный путь)~ например, я здесь~

louyan.github.io

развертывать

Предположим, вам нужно развернуть вGitHub Pages, сначала создайте его на GitHubRepository, по имени:louyan.github.io(louyanзаменить на свойgithubимя пользователя).

Выполните команду Hugo в корневом каталоге сайта, чтобы сгенерировать финальную страницу:

$ hugo --theme=hyde --baseUrl="http://louyan.github.io/"

Если все пойдет хорошо, все статические страницы будут созданы дляpublicкаталог, будетpubilcВсе файлы в каталогеpushк только что созданномуRepositoryизmasterфилиал.

$ cd public
$ git init
$ git remote add origin https://github.com/louyan/louyan.github.io.git
$ git add -A
$ git commit -m "first commit"
$ git push -u origin master

Посетите в браузере:http://louyan.github.io/

этот сайтЗаметки РСЯЭто то, что я сгенерировал с помощью Hugo.


Для получения более подробной информации о Хьюго вы также можете обратиться к:Хьюго от входа до использования