Что и зачем
Hugo - это генератор статических сайтов, написанный на языке Go.
Я нашел его чрезвычайно удобным для ведения собственного блога.
Для меня преимущества перед устаревшими системами вроде Wordpress очевидны:
- Низкие требования к хостингу (не нужен ни php, ни mysql)
- Безопасность
- Для написания постов не обязательно быть online
- Скорость работы
- Написание постов в разметке Markdown, а не html
Преимущества перед другими генераторами статических сайтов вроде Jekyll:
- Не нужно настраивать дополнительное окружение
- Реально высокая скорость генерации сайта
Итак, поехали.
Установка
Для установки Hugo следует пройти на страницу релизов и скачать оттуда дистрибутив для своей ОС. Так как у меня установлен Linux Ubuntu, то я беру deb-пакет.
Генерация сайта
После установки в консоли пишем:
$ cd ~\Workspace\hugo\my_new_blog
$ hugo new site .
Вторая команда как раз генерирует нужный шаблон сайта в текущей папке.
Создаем первый пост:
$ hugo new blog/first_post.md
Редактируем файл с постом:
$ nano blog/first_post.md
После открытия видим примерно такое содержимое:
+++
date = "2017-02-24T13:32:16+05:00"
title = "first_post"
draft = true
+++
Удаляем строку draft = true
. Она сигнализрует Hugo не добавлять данную запись в список постов при генерации финальной версии. После символов +++
, начиная со следующей строки, можно добавить текст по вкусу, а так же отредактировать title
.
В итоге получится что-то вроде:
+++
date = "2017-02-24T13:32:16+05:00"
title = "Мой первый пост в блоге"
+++
# Заголовок
Очень *полезный* **текст**
Устанавливаем тему оформления для блога:
$ git clone https://github.com/hbpasti/heather-hugo.git themes/heather-hugo
Теперь следует отредактировать главный файл с настройками сайта:
$ nano config.toml
В конец файла добавляем строку theme="heather-hugo"
. Сохраняем.
Тестовый пуск
Выполняем команду:
$ hugo server -w
Открываем браузер и переходим по адресу localhost:1313
. Видим, что наш сайт работает. Можно кликнуть на заголовок поста и увидеть его содержимое, а так же вернуться назад. Так же теперь в режиме реального времени можно редактировать файлы и сразу же видеть результаты в окне браузера.
Заключение
Пока наш блог далек от идеала. Нужно подключить систему комментирования, счетчики аналитики, перевести на русский язык надписи и добавить контакты, а так же страницы с информацией об авторе и его проектах.
На такой случай разработчики подготовили отличную документацию и богатый выбор тем оформления.
Здесь можно прочесть о том, как добавить теги к постам.