Files
dedinit.ru/docs/PAPERMOD_PARAMS.md
estorozhenko d426aa39ed chore(docs): уборка структуры — вся документация в docs/, краткий README, добавлен AGENTS.md
- AGENTS.md: правила проекта (структура доков, стек, статьи, деплой, git, openspec, проверки)
- README.md: сокращён до введения + указателей на docs/
- docs/: DEPLOY_INSTRUCTIONS, ROADMAP, PAPERMOD_PARAMS, QWEN, gitea-setup,
  Telegram_frontend, ssh_setup, archive/PROJECT_SUMMARY (из .qwen/)
- tools/: winscp_script.txt переехал из корня к deploy_sftp.py
- Makefile и deploy_sftp.py: ссылки на docs/DEPLOY_INSTRUCTIONS.md
2026-09-12 09:58:09 +00:00

22 KiB
Raw Permalink Blame History

📋 Полный справочник параметров темы rDedInit (PaperMod)

Описание

Этот документ содержит все параметры конфигурации темы rDedInit (форк PaperMod), которые вы можете использовать в файле hugo.toml (или hugo.yaml/config.yaml) и во frontmatter постов.


📁 Глобальные параметры (в hugo.toml)

Базовые параметры сайта

Параметр Описание Пример
baseURL Базовый URL сайта baseURL = 'https://dedinit.ru/'
languageCode Код языка сайта languageCode = 'ru-ru'
title Заголовок сайта title = 'dedinit()'
theme Используемая тема theme = 'rDedInit'
timeZone Часовой пояс для дат timeZone = 'Europe/Moscow'
preserveTaxonomyNames Сохранять имена таксономий preserveTaxonomyNames = true
metaDataFormat Формат frontmatter metaDataFormat = "yaml"

⚙️ Параметры в секции [params]

🎨 Тема и внешний вид

Параметр Описание Значения По умолчанию
defaultTheme Тема по умолчанию "light", "dark", "auto" "auto"
disableThemeToggle Отключить переключатель темы true, false false
env Окружение (влияет на SEO, аналитику) "production", "development" "development"

Пример:

[params]
  defaultTheme = "auto"
  disableThemeToggle = false
  env = "production"

📝 Информация о сайте

Параметр Описание Пример
title Заголовок сайта (альтернативный) title = "dedinit.ru"
description Описание сайта для мета-тегов description = "Блог об_ops-ах..."
keywords Ключевые слова сайта keywords = ["блог", "программирование"]
author Автор сайта (по умолчанию для всех постов) author = "Кразя"
DateFormat Формат отображения даты DateFormat = "02.01.2006 15:04"
language Код языка language = "ru"
languageAlt Альтернативный код языка languageAlt = "ru"

🏠 Главная страница (Home-Info Mode)

Параметр Описание Пример
homeInfoParams.Title Заголовок информационной секции Title = "Привет! 👋"
homeInfoParams.Content Содержимое информационной секции Content = "Добро пожаловать..."
homeInfoParams.AlignSocialIconsTo Выравнивание соц. иконок AlignSocialIconsTo = "center"

Пример:

[params.homeInfoParams]
  Title = "Привет! 👋"
  Content = "Добро пожаловать в мой блог!"
  AlignSocialIconsTo = "center"

👤 Режим профиля (Profile Mode)

Параметр Описание Значения
profileMode.enabled Включить режим профиля true, false
profileMode.title Заголовок профиля Текст
profileMode.subtitle Подзаголовок профиля Текст
profileMode.imageUrl Путь к изображению профиля Путь или URL
profileMode.imageTitle Alt-текст изображения Текст
profileMode.imageWidth Ширина изображения Число (px)
profileMode.imageHeight Высота изображения Число (px)
profileMode.buttons Кнопки действий Массив {name, url}

Пример:

[params.profileMode]
  enabled = true
  title = "Имя Фамилия"
  subtitle = "Разработчик, блогер, энтузиаст"
  imageUrl = "/images/profile.jpg"
  imageTitle = "Моё фото"
  imageWidth = 150
  imageHeight = 150

[[params.profileMode.buttons]]
  name = "Архив"
  url = "/posts/"

[[params.profileMode.buttons]]
  name = "GitHub"
  url = "https://github.com/username"

📱 Социальные иконки

Параметр Описание Пример
socialIcons Список соц. иконок Массив {name, url}

Пример:

[[params.socialIcons]]
  name = "telegram"
  url = "https://t.me/username"

[[params.socialIcons]]
  name = "github"
  url = "https://github.com/username"

[[params.socialIcons]]
  name = "linkedin"
  url = "https://linkedin.com/in/username"

Поддерживаемые платформы: telegram, github, gitlab, twitter, x-twitter, linkedin, facebook, instagram, youtube, reddit, discord, stack-overflow, mastodon, и другие.


📄 Параметры постов (глобальные)

Параметр Описание Значения По умолчанию
ShowReadingTime Показывать время чтения true, false false
ShowWordCount Показывать количество слов true, false false
ShowShareButtons Показывать кнопки шеринга true, false false
ShareButtons Какие кнопки шеринга показывать Массив ["twitter", "facebook", "linkedin"]
ShowBreadCrumbs Показывать хлебные крошки true, false false
ShowPostNavLinks Показывать навигацию между постами true, false false
ShowCodeCopyButtons Показывать кнопки копирования кода true, false false
hideAuthor Скрывать информацию об авторе true, false false
disableSpecial1stPost Отключить специальный стиль первого поста true, false false
ShowAllPagesInArchive Показывать все страницы в архиве true, false false
mainSections Основные секции для главной Массив ["posts"]

Пример:

[params]
  ShowReadingTime = true
  ShowWordCount = true
  ShowShareButtons = true
  ShareButtons = ["telegram", "twitter", "linkedin", "reddit"]
  ShowBreadCrumbs = true
  ShowPostNavLinks = true
  ShowCodeCopyButtons = true
  mainSections = ["posts", "blog"]

🖼️ Обложки (Cover)

Параметр Описание Значения
cover.responsiveImages Генерировать адаптивные изображения true, false
cover.linkFullImages Ссылка на полное изображение true, false
cover.hidden Скрывать обложку в списках true, false
cover.hiddenInList Скрывать обложку только в списках true, false

Пример:

[params.cover]
  responsiveImages = true
  linkFullImages = true

✏️ Редактирование постов

Параметр Описание Пример
editPost.URL URL репозитория для редактирования "https://github.com/user/repo/content"
editPost.Text Текст кнопки редактирования "Редактировать"
editPost.appendFilePath Добавлять путь к файлу в URL true, false

Пример:

[params.editPost]
  URL = "https://github.com/dedinit/dedinit.ru/content"
  Text = "Предложить правки"
  appendFilePath = true

🔍 Поиск (Fuse.js)

Параметр Описание Значения
fuseOpts.isCaseSensitive Чувствительность к регистру true, false
fuseOpts.shouldSort Сортировать результаты true, false
fuseOpts.location Позиция начала поиска Число
fuseOpts.distance Расстояние для поиска Число
fuseOpts.threshold Порог соответствия (0.0–1.0) Число
fuseOpts.minMatchCharLength Мин. длина совпадения Число
fuseOpts.limit Ограничение результатов Число
fuseOpts.keys Поля для поиска Массив

Пример:

[params.fuseOpts]
  isCaseSensitive = false
  shouldSort = true
  location = 0
  distance = 1000
  threshold = 0.4
  minMatchCharLength = 2
  limit = 10
  keys = ["title", "summary", "content"]

👥 Авторы

Параметр Описание Пример
author Авторы сайта по умолчанию author = ["Кразя"]

Может быть переопределено во frontmatter поста:

---
author: ["Автор 1", "Автор 2"]
---

Параметр Описание Значения
footer.hideCopyright Скрыть информацию о копирайте true, false
footer.text Текст в подвале (до ссылки на Hugo) Текст (markdown)
hideFooter Полностью скрыть подвал true, false
disableScrollToTop Отключить кнопку "Наверх" true, false

Пример:

[params.footer]
  hideCopyright = false
  text = "Сделано с ❤️"

🔗 Label (Логотип в шапке)

Параметр Описание Пример
label.text Текст логотипа text = "dedinit()"
label.icon Путь к иконке логотипа icon = "/images/logo.png"
label.iconSVG SVG логотипа (inline) iconSVG = "<svg>..."
label.iconHeight Высота иконки iconHeight = 30

Пример:

[params.label]
  text = "dedinit()"
  icon = "/images/favicon/favicon48x48.ico"
  iconHeight = 30

📈 Аналитика и верификация

Параметр Описание Пример
analytics.google.SiteVerificationTag Тег верификации Google SiteVerificationTag = "XXXXXXXXXX"
analytics.yandex.SiteVerificationTag Тег верификации Яндекс SiteVerificationTag = "YYYYYYYYYY"
analytics.bing.SiteVerificationTag Тег верификации Bing SiteVerificationTag = "ZZZZZZZZZZ"
analytics.naver.SiteVerificationTag Тег верификации Naver SiteVerificationTag = "AAAAAAAAAA"

Пример:

[params.analytics.google]
  SiteVerificationTag = "XXXXXXXXXX"

[params.analytics.yandex]
  SiteVerificationTag = "YYYYYYYYYY"

Google Analytics (в секции services):

[services.googleAnalytics]
  ID = "G-XXXXXXXXXX"

🎯 Прочие параметры

Параметр Описание Значения
CanonicalLinkText Текст для canonical ссылки "Originally published at"
displayFullLangName Показывать полное название языка true, false
ShowPageNums Показывать номера страниц в пагинации true, false
ShowRssButtonInSectionTermList Показывать RSS кнопку в разделах true, false

🔧 Assets (Ресурсы)

Параметр Описание Значения
assets.favicon Путь к favicon.ico Путь
assets.favicon16x16 Путь к favicon 16x16 Путь
assets.favicon32x32 Путь к favicon 32x32 Путь
assets.apple_touch_icon Путь к Apple touch icon Путь
assets.safari_pinned_tab Путь к Safari pinned tab Путь
assets.theme_color Цвет темы для браузера HEX цвет
assets.msapplication_TileColor Цвет плитки MS HEX цвет
assets.disableScrollBarStyle Отключить стили скроллбара true, false
assets.disableFingerprinting Отключить fingerprinting true, false

Пример:

[params.assets]
  favicon = "images/favicon/favicon48x48.ico"
  favicon16x16 = "images/favicon/favicon-16x16.png"
  favicon32x32 = "images/favicon/favicon-32x32.png"
  apple_touch_icon = "images/favicon/apple-touch-icon.png"
  theme_color = "#2e2e33"

📑 Schema.org разметка

Параметр Описание Пример
schema.publisherType Тип издателя "Organization", "Person"
schema.sameAs Ссылки на соц. профили Массив URL

Пример:

[params.schema]
  publisherType = "Person"
  sameAs = ["https://t.me/username", "https://github.com/username"]

📝 Frontmatter параметры (в постах)

Эти параметры указываются в начале каждого поста (в YAML/TOML):

Параметр Описание Пример
title Заголовок поста title = "Мой пост"
description Описание поста description = "Краткое описание"
date Дата публикации date = 2026-03-06T19:30:00+03:00
lastmod Дата последнего изменения lastmod = 2026-03-07T10:00:00+03:00
publishDate Дата публикации (альтернативная) publishDate = 2026-03-06
draft Черновик (не публиковать) draft = true
tags Теги поста tags = ["hugo", "blog"]
categories Категории поста categories = ["технологии"]
keywords Ключевые слова поста keywords = ["hugo", "golang"]
author Автор поста (переопределение) author = ["Имя"]
canonicalURL Canonical URL canonicalURL = "https://..."
CanonicalLinkText Текст canonical ссылки CanonicalLinkText = "Оригинал"

Параметры отображения поста

Параметр Описание Значения
ShowReadingTime Показывать время чтения true, false
ShowWordCount Показывать количество слов true, false
ShowBreadCrumbs Показывать хлебные крошки true, false
ShowPostNavLinks Показывать навигацию true, false
ShowShareButtons Показывать кнопки шеринга true, false
ShowCodeCopyButtons Показывать кнопки копирования true, false
ShowToc Показывать оглавление true, false
TocOpen Оглавление открыто по умолчанию true, false
UseHugoToc Использовать встроенный Hugo TOC true, false
disableAnchoredHeadings Отключить якорные заголовки true, false
hideSummary Скрыть саммари в списке true, false
hideMeta Скрыть мета-информацию true, false
hideAuthor Скрыть автора true, false
hideFooter Скрыть подвал на странице true, false
searchHidden Скрыть из поиска true, false
hiddenInHomeList Скрыть с главной страницы true, false
robotsNoIndex Запретить индексацию true, false

Обложка поста

cover:
  image: "/images/cover.jpg"
  alt: "Описание изображения"
  caption: "Подпись к изображению"
  relative: false
  hidden: false
  hiddenInList: false

Редактирование поста

editPost:
  URL: "https://github.com/user/repo/content/post.md"
  Text: "Предложить правки"
  appendFilePath: true

🗂️ Структура [outputs]

Настройка форматов вывода для разных типов страниц:

[outputs]
  home = ["HTML", "RSS", "JSON"]  # JSON нужен для поиска
  page = ["HTML"]
  section = ["HTML", "RSS"]
  taxonomy = ["HTML", "RSS"]
  term = ["HTML", "RSS"]

🏷️ Таксономии

[taxonomies]
  category = "categories"
  tag = "tags"

🎨 Подсветка синтаксиса (Chroma)

[markup.highlight]
  style = "github-dark"
  lineNos = true
  tabWidth = 4

Доступные стили: github, github-dark, monokai, dracula, one-dark, и другие.


🌐 Многоязычность

[languages]
  [languages.ru]
    languageName = "Русский"
    languageCode = "ru-ru"
    weight = 1
    title = "dedinit()"
    [languages.ru.params]
      languageAltTitle = "Russian"

  [languages.en]
    languageName = "English"
    languageCode = "en-us"
    weight = 2
    title = "dedinit()"

📜 Меню

[[menu.main]]
  name = "Главная"
  url = "/"
  weight = 10

[[menu.main]]
  name = "Архив"
  url = "/posts/"
  weight = 20

[[menu.main]]
  name = "Категории"
  url = "/categories/"
  weight = 30

🔑 Горячие клавиши (AccessKeys)

Клавиша Действие
Alt + H Перейти на главную
Alt + T Переключить тему
Alt + C Открыть/закрыть оглавление
Alt + G Перейти к началу страницы
Alt + / Перейти к поиску (если в меню)

📌 Пример полной конфигурации

baseURL = 'https://dedinit.ru/'
languageCode = 'ru-ru'
title = 'dedinit()'
theme = 'rDedInit'
timeZone = 'Europe/Moscow'
preserveTaxonomyNames = true
metaDataFormat = "yaml"

[params]
  env = "production"
  title = "dedinit.ru"
  description = "Блог об_ops-ах"
  keywords = ["блог", "программирование", "mlops", "devops"]
  author = "Кразя"
  DateFormat = "02.01.2006 15:04"
  language = "ru"
  languageAlt = "ru"

  # Тема
  defaultTheme = "auto"
  disableThemeToggle = false

  # Посты
  ShowReadingTime = true
  ShowWordCount = true
  ShowShareButtons = false
  ShareButtons = ["telegram", "twitter", "linkedin"]
  ShowPostNavLinks = true
  ShowBreadCrumbs = true
  ShowCodeCopyButtons = true
  disableSpecial1stPost = true

  # Главная
  mainSections = ["posts"]

  # Footer
  disableScrollToTop = false

[params.assets]
  favicon = "images/favicon/favicon48x48.ico"
  favicon16x16 = "images/favicon/favicon-16x16.png"
  favicon32x32 = "images/favicon/favicon-32x32.png"

[params.label]
  text = "dedinit()"
  icon = "images/favicon/favicon48x48.ico"
  iconHeight = 30

[outputs]
  home = ["HTML", "RSS"]
  page = ["HTML"]
  section = ["HTML", "RSS"]

[taxonomies]
  category = "categories"
  tag = "tags"

[markup.highlight]
  style = "github-dark"
  lineNos = true
  tabWidth = 4

[menu]
  [[menu.main]]
    name = "Главная"
    url = "/"
    weight = 10
  [[menu.main]]
    name = "Архив"
    url = "/posts/"
    weight = 20

[languages]
  [languages.ru]
    languageName = "Русский"
    languageCode = "ru-ru"
    weight = 1
    title = "dedinit()"

[services.googleAnalytics]
  ID = ""

📚 Источники


💡 Советы

  1. Минимальная конфигурация: Для начала достаточно указать title, description, author, defaultTheme
  2. SEO: Включите env = "production" для активации мета-тегов
  3. Производительность: ShowCodeCopyButtons и ShowReadingTime не влияют на скорость
  4. Кастомизация: Используйте assets/css/extended/blank.css для своих стилей
  5. Frontmatter: Параметры во frontmatter переопределяют глобальные настройки

Документ актуален для версии темы rDedInit на базе PaperMod v9.x