Every setting in site.yaml, what it does, and its default.
Only name and url are required. Everything else has a sensible default. A setting HotDog doesn't know stops the build, with the line it's on, so a typo can't go unnoticed.
The site
| Setting |
What it is |
name |
The site's name. Required. |
url |
Its address, such as https://example.org. Required. |
language |
The language it's written in, such as en. |
description |
One sentence about the site, for pages without a summary. |
author |
Who writes it. |
timezone |
Where its events and scheduled pages happen, such as America/Chicago (UTC if unset). |
copyright, copyright_url |
The name in the footer's © line (default: the site's name), and a link for it. |
credit |
true shows "Built with HotDog CMS" in the footer. |
fediverse |
Your fediverse handle, "@you@your.instance", which Mastodon credits in link previews. |
params |
Anything your own templates read, as .Site.Config.Params. |
Pages and lists
| Setting |
What it is |
collections |
Settings per collection (folder in content/); see below. |
taxonomies |
Front matter keys that get browsable pages, such as [tags]. |
paginate |
Split long lists into pages of this many (0: one page). |
term_index_min |
Tag pages with fewer pages than this are hidden from search engines. |
menus |
main, footer and any others: lists of { name, url }, with optional external: true and note. |
redirects |
Old addresses and where they go now: { from: /old/, to: /new/ }. |
Each collection
collections:
articles:
layout: article
feed: true
| Key |
What it is |
layout |
The layout for its pages. |
list_layout |
The layout for its own list page. |
sort |
date (newest first, the default), title, weight or start (events). |
feed |
true writes a news feed. feed_path, feed_size (default 20), feed_format, feed_title, feed_image, feed_description adjust it. |
paginate |
Its own page size. |
calendar, calendar_name |
Write a calendar feed of its events (see Events). |
search |
Write a search index for it. |
Markdown
markdown:
email_off: true
| Key |
What it is |
email_off |
Keep email addresses readable behind Cloudflare's proxy. |
autolink |
Turn bare web addresses into links (on unless false). |
external_links |
new_tab opens links to other sites in a new tab. |
unsafe_html |
Let HTML written in pages through, after cleaning out scripts. Off by default. |
trust_html |
Let HTML through without cleaning. Only for a site whose every author you trust with scripts. |
image_sizes |
The sizes hint for pictures from media/, if your text column isn't the usual width. |
Look and pictures
| Setting |
What it is |
look |
Your choices from look.yaml: colors, font, corners, logo (see Look). |
cards |
true draws a link-preview picture for every page without one. Or set font, font_small, background, text, accent, logo. |
Privacy and statistics
| Setting |
What it is |
analytics |
{ provider: plausible, domain: … }, { provider: matomo, url: …, site_id: … } or { provider: ga4, id: … }; gated: false to count without asking. See Visit statistics. |
privacy |
controller, contact, updated, and extra entries (what, who, why, basis). See The privacy page. |
Search engines
| Setting |
What it is |
verify |
google, bing, yandex: verification codes for their webmaster tools. |
indexnow |
{ key: … }: tell search engines what changed. See Search engines. |
outputs |
sitemap and robots (on by default), llms (off unless true). |
Checks
check:
ignore: [img-alt]
forbid: ["intranet\\.example\\.org"]
| Key |
What it is |
ignore |
Rules to switch off, by name. |
forbid |
Patterns that must never be published. |
allow_third_party |
Other websites your pages may load things from. |
cloudflare |
true if the site is served through Cloudflare's proxy. |
csp |
strict makes inline scripts and styles errors. |
privacy_page |
Where your privacy page is, if not /privacy/. |
Written by HotDog
| Setting |
What it is |
packs |
The packs you've added, written by hotdog-cms pack. Don't edit by hand. |