Information

01 Jan 2024

Usage guide

1 minute reading time

Updated 01 Feb 2024

#Features

Halve-Z is a retro two-column theme for Zola. It features search, taxonomies, automatic color schemes, media shortcodes, project cards, and a comment system (Cactus/Giscus).

#Front matter

Available (extra) options:

h1 headers are reserved for page title (left/top block) and subtitle (optional, right/bottom block).

In addition to default variables, a page can have an image, a subtitle, a category, a song, CSP strings, and multiple tags.

+++
title = "Example"
date = 2009-09-09
[taxonomies]
categories = ["general"]
tags = ["tag"]
[extra]
subtitle = "Example subtitle"
disable_comments = true
disable_toc = true
image = "https://example.com/image.png"
csp_img = ["example.com/", "foo.org/example"]
music = ["Michael Pitt", "Death to Birth"]
+++

music variable takes an array that includes an artist and a track name. If LASTFM_KEY environment variable is present, names are autocorrected and linked to the Last.fm website.

#Configuration

Set theme to halve-z in your project's config.toml and adjust options according to the example below:

###
base_url = "https://halve-z.netlify.app"
title = "Halve-Z Zola theme"
description = "Two-column retro theme for Zola"
default_language = "en"
author = "charlesrocket"
#theme = "halve-z"

compile_sass = true
minify_html = true
generate_feeds = true
build_search_index = true
generate_sitemap = true

taxonomies = [
    { name = "categories", feed = true },
    { name = "tags", feed = true },
]

[search]
include_title = true
include_description = true
include_path = false
include_content = true
index_format = "elasticlunr_json"

[markdown]
highlight_code = true
highlight_theme = "css"
highlight_themes_css = [
    { theme = "OneHalfDark", filename = "syntax-theme-dark.css" },
    { theme = "OneHalfLight", filename = "syntax-theme-light.css" },
]
render_emoji = false
external_links_target_blank = true

[slugify]
paths = "safe"
taxonomies = "safe"
anchors = "safe"

[extra]
locale = "en_US"
logo = "icon-192x192.png"
manifest = "manifest.json"
read_time = true
toc = true
csp = true

[extra.placeholders]
tags = false
subtitle = false

[extra.home]
title = "Halve-Z"
subtitle = "Zola theme"
glitch = false
logo = { enabled = false, height = "100", width = "100" }
footer = true

[extra.images]
home = "c1tyh4ll.png" #https://failsafe.monster/c1tyh4ll.png
post_list = "bk-prk.png" #https://failsafe.monster/bk-prk.jpg
default_post = "bk-prk.png" #https://failsafe.monster/bk-prk.jpg
categories = [
    { name = "media", image = "https://raw.githubusercontent.com/bearcott/8bit-art/master/cities/urban.gif" },
]

[extra.menu]
posts = true
posts_label = "Posts"
links = [
    { name = "Code", url = "/projects/" },
]

[extra.footer]
enabled = true
author = true
copyright = true
hash = true
stack = true
links = [
    { name = "posts", url = "/posts/" },
]

[extra.social]
email = "user_email"
mastodon = "server/@user_name"
twitter = "user_name"
facebook = "user_name"
codeberg = "username"
github = "user_name"
gitlab = "user_name"
bitbucket = "user_name"
stackoverflow = "12345/user_name"
linkedin = "user_name"
instagram = "user_name"
lastfm = "user_name"
twitch = "user_name"
reddit = "user_name"
#flickr = "user_name"
keybase = "user_name"
hackernews = "user_name"

[extra.comments]
system = "none"

[extra.comments.cactus]
site = "site_name"
page_size = 10
guest_posting = true
update_interval = 0

[extra.comments.giscus]
repo = "user_name/repo"
repo_id = ""
category = "Comments"
category_id = ""
mapping = "pathname"
strict = "1"
reactions = "1"
lang = "en"



/sw-load.js?v=e5ae5a1ed170f4499ac6292e7164b68528c51f6d6518cd75a49e6a6b737831d5728da21fc14dcbc7a91328e53858c6ff7195cc3fc8b25f0feeaef2af151d6686 /fireball.gif?v=569e393374f2af74d6c575090904aaf51e641e5eb5ea89ae7c7de01f7293abc165b3a7e8685690a8b951c778603fec98ae6822ff2f7ea86a536776966cb65d5d /favicon.ico?v=1a6495bbd14c74c75aa77e28420ce82a63372b28cd38c952b98403d8d112a9f76589bea299982ca27048215e661245f9d07294bddee7da377aaee76eee70c622 /favicon-16x16.png?v=7267c6f502a03c1e4df9d8136dcc6cd9e67e0b9644941d22ed34e4fe747580f95a65f77a183bb967c1ec60eecd0c298b2670d89a67a647391fb7d1501bcf0982 /favicon-32x32.png?v=5e23bffe691055b88067cbc8d11b96ce2a8dc5e25e49367803766a3cadbcfc7f05a62079bfa558d5e234c6a7455d21fc2960b196bda5cbd591bd4c2dbe67920d /icon-192x192.png?v=3820c1b1e6d755d2b7c2a04a65f0f1feef793b297f7ee995947137ccd8f73ec304457f6ce1df987a9a0a13ed7dacd203225505b832ccd2318b530ae53a55cebc /icon-512x512.png?v=de62ae905479fd813300d286ed1d2fe6bb6f6292623a5d918691642f6dd09a68943c69ed2a95a1820076919e69ff4fda668bb79e610ebc1d3200fedd7f634443 /apple-touch-icon.png?v=4718a090c66653794b3622234784e821a504ee526b6518f20cd10f6b27907566690892339830ede2ef9cb5fedb8a9796f02fb2610de868500c0720c1083013b7 /main.css?v=8ab3ba2ea49a89d1cee56b62a947c88597785d0842586199965b60438f9430279525aef9d01320077a32656df3e7435d48ccd7228cfc9bcd6a97ff0a4cc79358 /nerd-fonts.css?v=4213ecfcacca379b433c0fd135281c627c074e42d243cca41777df5738649704db63d448a19b13f80dfc9337485d8a1eb1a4b77cf2fa9d1fe2d3b6768c66e7bb /unstyle.css?v=b14bd48a2efbd463d973763aa3184c69aa02164c0891acacc9eab49ddd275f98f0050b4c31d2093e4671e7abe04f9459a041f0064384a90d97b8ff21b6824825 /langs.css?v=12474958ee314a9fde4704e1f5a032dc632d41f9461faca326ac284297766c4ceb07b45fec7fbc09fa72b0f21dcc64f0c31e64fc2e5e838b1d30f5fe540afd78 /syntax-theme-light.css?v=ccdddc2d2d88953c6d7d0376777b8409028ef625a7321dfa41619547b4f5eddbe89aa95ff5e7e2620da0ea13fbabebe2fd544620bc7e81e3294776b3425df48a /syntax-theme-dark.css?v=dfede4879841e4a58e5fc71115aa5f5b82e206d85eb771ff4e5a40a1d82621570aad2458f637365ae4370d9a1cf5070edc9765f7c2d4506e12e2ba3c6081ffd5 /sw-style.css?v=352cab856807e725351d62a9cae9dc445a675ab7e0bb0d3b12440b08dd574526c62827a5f4af706f7ad74df996a7f71f2c2a306fc1b188e1560007f0d4eda4fc /categories/ /categories/media/ /categories/usage/ /tags/ /tags/cactus/ /tags/configuration/ /tags/content/ /tags/csp/ /tags/feature/ /tags/giscus/ /tags/github/ /tags/html/ /tags/shortcode/ /tags/style/ /posts/information/ /posts/markup/ /posts/comments/ /posts/pwa/ /posts/audio/ /posts/audio/over9000.mp3?v=696e6c7cab3638572cb92077610e5fad9aae1b9dcf659fc5c6d3d21bae0444d0207ae51fe33b1c61a04f347b54312c42eda4c0da7cb511371023ddd204af2edf /posts/audio/over9000.ogg?v=1c06112e9211b10fc4f64fe25f9121b3d938ab0726f1ab95ea75dc72d9bfff2df617e1da166a753c31693577037aa46e641366a25194a2097341fd02e932a886 /posts/video/ /posts/video/over9000.mp4?v=14901c9ff1b7ed2de1fc3110dbf76eb3fb1f07338b57eca03524248062806b33cf2ae89164d97ec005393027c27d97b9e33f5bb38879a5cb32ad2f420985acde /posts/video/over9000.webm?v=6c41618a856aaa7ef5895eed705e7519f05d31dde3fc6bc3f70e1c15cb430edeb24fff56dd1d48151cd26f45fab4bfeb520ea4249ac90ebf4c44a855bdf25eb6 /posts/image/ /posts/image/yawn.gif?v=fc35cb63ddbc00ff34411448bfe5100240b9a4691f45c0c2b245359fcbbd4f1d7c11617cd9cd3e8b7a03d5151cd590f421a1de41690f1d1d040c26738037afc1 /posts/project/ /posts/data/ /projects/ /posts/ c1tyh4ll.png?v=e6bb8cdead47e48c0deba1e0a3016070984b5f7271166a72638f9ec5a6ef2d2eb8012e8e4cb64f4f3b6574c6d708bf2ae660d04b8b59a6de675ce4d4d62dd4c3 bk-prk.png?v=b00246fb5faeab35a588f347224b00d53083a9d5f4ae8cd87c0c2e0432bf7f348c6a6ab6f4e4edaf5ddbf13ee34b24946dd0af4cd7db6f4f334599f38917ac9e bk-prk.png?v=b00246fb5faeab35a588f347224b00d53083a9d5f4ae8cd87c0c2e0432bf7f348c6a6ab6f4e4edaf5ddbf13ee34b24946dd0af4cd7db6f4f334599f38917ac9e /icon-192x192.png?v=3820c1b1e6d755d2b7c2a04a65f0f1feef793b297f7ee995947137ccd8f73ec304457f6ce1df987a9a0a13ed7dacd203225505b832ccd2318b530ae53a55cebc /sitemap.xml /search_index.en.json /search.js /elasticlunr.min.js?v=d106ab529e29f6be48a948124723fcf411e06b8e4ea4477b551f256d190991fe3ca7f121714ef8d9f594a4aa680f2bbd37a5d8004abfbf3ea6eb3d4ea259ec0f">