Документация по 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:
Структура проекта
Типичная структура проекта Zola:
my-site/
├── config.toml # Основная конфигурация
├── content/ # Ваш контент в формате Markdown
├── static/ # Статические файлы (изображения, CSS, JS)
├── templates/ # Шаблоны Tera
├── themes/ # Тема оформления
└── sass/ # Файлы Sass (опционально)
Создание контента
Чтобы создать новую страницу, создайте файл Markdown в директории content/. Например:
Запуск сервера разработки
Чтобы запустить локальный сервер для предварительного просмотра:
Сервер будет доступен по адресу http://127.0.0.1:1111.
Сборка сайта
Чтобы собрать сайт для публикации:
Готовые файлы будут помещены в директорию public/.
Развертывание
Вы можете развернуть сайт, скопировав содержимое директории public/ на любой веб-сервер.
Конфигурация
Основной конфигурационный файл - config.toml. Вот пример базовой конфигурации:
# The URL the site will be built for
= "https://example.com"
# Whether to automatically compile all Sass files in the sass directory
= true
# Whether to build a search index to be used later on by a JavaScript library
= false
[]
# Whether to do syntax highlighting
= true
[]
# Put all your custom variables here
Шаблоны
Zola использует язык шаблонов Tera. Вот пример простого шаблона:
{{ config.title }}
{{ page.title }}
{{ page.content | safe }}
Расширенные возможности
Таксономии
Zola поддерживает таксономии для организации контента:
[]
= "tags"
= "categories"
Многоязычность
Zola поддерживает многоязычные сайты:
[]
[]
= "My Site"
= "English"
= 1
[]
= "Мой Сайт"
= "Русский"
= 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 для создания документации и статических сайтов.