Документация по 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🔗

  1. Быстрота: Написан на Rust, поэтому работает очень быстро
  2. Простота: Нет зависимостей, один бинарный файл
  3. Гибкость: Поддерживает шаблоны, таксономии, многоязычность
  4. Безопасность: Статические файлы сложнее взломать
  5. Масштабируемость: Статические файлы легко кэшируются и масштабируются

Примеры использования🔗

Zola отлично подходит для:

Ресурсы🔗

Устранение неполадок🔗

Если у вас возникли проблемы:

  1. Проверьте конфигурационный файл config.toml
  2. Убедитесь, что все пути к файлам правильные
  3. Посмотрите логи сборки
  4. Обратитесь к сообществу Zola

Этот сайт работает на Zola и служит примером того, как можно использовать Zola для создания документации и статических сайтов.