Документация по Zola
Документация по статическому генератору сайтов Zola
Документация по Zola
Zola - это статический генератор сайтов, написанный на языке Rust. Он простой, быстрый и не требует зависимостей для работы.
Основные термины
Статический генератор сайтов
Статический генератор сайтов (SSG) - это программа, которая берет контент (обычно в формате Markdown), шаблоны и конфигурацию, и генерирует готовые HTML-файлы. Эти файлы можно разместить на любом веб-сервере.
Markdown
Markdown - это легкий язык разметки, который позволяет форматировать текст простым и читаемым способом. Zola использует Markdown для создания контента.
TOML
TOML (Tom's Obvious, Minimal Language) - это формат конфигурационных файлов. Zola использует TOML для своего основного конфигурационного файла config.toml.
Шаблоны (Templates)
Шаблоны определяют, как ваш контент будет отображаться. Zola использует язык шаблонов Tera, который похож на Jinja2.
Контент (Content)
Контент - это ваши статьи, страницы и другие материалы, обычно написанные в формате Markdown и хранящиеся в директории content/.
Как работать с Zola
Установка
Zola уже установлен на этом сервере. Вы можете проверить версию:
zola --version
Создание нового сайта
Чтобы создать новый сайт Zola:
zola init my-site
cd my-site
Структура проекта
Типичная структура проекта Zola:
my-site/
├── config.toml # Основная конфигурация
├── content/ # Ваш контент в формате Markdown
├── static/ # Статические файлы (изображения, CSS, JS)
├── templates/ # Шаблоны Tera
├── themes/ # Тема оформления
└── sass/ # Файлы Sass (опционально)
Создание контента
Чтобы создать новую страницу, создайте файл Markdown в директории content/. Например:
+++
title = "Моя первая статья"
date = 2023-01-01
draft = false
+++
# Заголовок статьи
Это содержимое моей первой статьи, написанное в формате Markdown.
Запуск сервера разработки
Чтобы запустить локальный сервер для предварительного просмотра:
zola serve
Сервер будет доступен по адресу http://127.0.0.1:1111.
Сборка сайта
Чтобы собрать сайт для публикации:
zola build
Готовые файлы будут помещены в директорию public/.
Развертывание
Вы можете развернуть сайт, скопировав содержимое директории public/ на любой веб-сервер.
Конфигурация
Основной конфигурационный файл - config.toml. Вот пример базовой конфигурации:
# The URL the site will be built for
base_url = "https://example.com"
# Whether to automatically compile all Sass files in the sass directory
compile_sass = true
# Whether to build a search index to be used later on by a JavaScript library
build_search_index = false
[markdown]
# Whether to do syntax highlighting
highlight_code = true
[extra]
# Put all your custom variables here
Шаблоны
Zola использует язык шаблонов Tera. Вот пример простого шаблона:
<!DOCTYPE html>
<html>
<head>
<title>{{ config.title }}</title>
</head>
<body>
<h1>{{ page.title }}</h1>
<div class="content">
{{ page.content | safe }}
</div>
</body>
</html>
Расширенные возможности
Таксономии
Zola поддерживает таксономии для организации контента:
[taxonomies]
tags = "tags"
categories = "categories"
Многоязычность
Zola поддерживает многоязычные сайты:
[languages]
[languages.en]
title = "My Site"
languageName = "English"
weight = 1
[languages.ru]
title = "Мой Сайт"
languageName = "Русский"
weight = 2
Короткие коды (Shortcodes)
Zola поддерживает короткие коды для повторного использования компонентов:
{% shortcode(name) %}
<!-- HTML content -->
{% endshortcode(name) %}
Команды Zola
| Команда | Описание |
|---|---|
zola init | Создать новый сайт |
zola build | Собрать сайт |
zola serve | Запустить сервер разработки |
zola check | Проверить внутренние ссылки |
zola version | Показать версию Zola |
Преимущества Zola
- Быстрота: Написан на Rust, поэтому работает очень быстро
- Простота: Нет зависимостей, один бинарный файл
- Гибкость: Поддерживает шаблоны, таксономии, многоязычность
- Безопасность: Статические файлы сложнее взломать
- Масштабируемость: Статические файлы легко кэшируются и масштабируются
Примеры использования
Zola отлично подходит для:
- Блогов
- Документации
- Портфолио
- Корпоративных сайтов
- Лендингов
Ресурсы
Устранение неполадок
Если у вас возникли проблемы:
- Проверьте конфигурационный файл
config.toml - Убедитесь, что все пути к файлам правильные
- Посмотрите логи сборки
- Обратитесь к сообществу Zola
Этот сайт работает на Zola и служит примером того, как можно использовать Zola для создания документации и статических сайтов.