congo/exampleSite/content/docs/configuration.md

7.2 KiB

title date draft description slug tags showDate showAuthor
Configuration 2020-08-14 false All the configuration variables available in Congo. configuration
config
docs
false false

Congo is a highly customisable theme and uses some of the latest Hugo features to simplify how it is configured.

The theme ships with a default configuration that gets you up and running with a basic blog or static website.

Configuration files bundled with the theme are provided in TOML format as this is the default Hugo syntax. Feel free to convert your config to YAML or JSON if you wish.

The default theme configuration is documented in each file so you can freely adjust the settings to meet your needs.

{{< alert >}} As outlined in the installation instructions, you should adjust your theme configuration by modifying the files in the config/_default/ folder of your Hugo project and delete the config.toml file in your project root. {{< /alert >}}

Site Configuration

Standard Hugo configuration variables are respected throughout the theme, however there are some specific things that should be configured for the best experience.

The site configuration is managed through the config/_default/config.toml file. The table below outlines all the settings that the Congo takes advantage of.

Note that the variable names provided in this table use dot notation to simplify the TOML data structure (ie. author.name refers to [author] name).

Name Type Default Description
theme string "congo" This must be set to "congo" for the theme to function.
baseURL string Not set The URL to the root of the website.
languageCode string "en" The language of the website for site metadata purposes. It can be a top-level language (ie. "en") or a sub-variant (ie. "en-AU")."
defaultContentLanguage string "en" This value determines the language of theme components."
title string "Congo" The title of the website. This will be displayed in the site header and footer.
copyright string Not set A Markdown string containing the copyright message to be displayed in the site footer. If none is provided, Congo will automatically generate a copyright string using the site title.
enableEmoji boolean true Whether emoji strings in content should be converted to emoji symbols.
enableRobotsTXT boolean true When enabled a robots.txt file will be created in the site root that allows search engines to crawl the entire site. Set to false if you wish to provide your own file.
author.name string Not set The author's name. This will be displayed in article footers, and on the homepage when the profile layout is used.
author.image string Not set Path to the image file of the author. The image should be a 1:1 aspect ratio and placed in the site's static/ folder.
author.links array of objects Not set The links to display alongside the author's details. The config file contains example links which can simply be uncommented to enable. The order that the links are displayed is determined by the order they appear in the array. Custom links can be added by providing corresponding SVG icon assets in assets/icons/.
[permalinks] Not set Refer to the Hugo docs for permalink configuration.
[taxonomies] Not set Refer to the Hugo docs for taxonomy configuration.

Theme Parameters

Congo provides a large number of configuration parameters that control how the theme functions. The table below outlines every available parameter in the config/_default/params.toml file.

Many of the article defaults here can be overridden on a per article basis by specifying it in the front matter. Refer to the Front Matter section for further details.

Name Type Default Description
homepage.layout string "page" The layout of the homepage. Valid values are page, profile or custom. When set to custom, you must provide your own layout by creating a /layouts/partials/home/custom.html file. Refer to the Homepage Layout section for more details.
homepage.showList boolean false Whether or not recent articles are listed on the homepage beneath the page content. Refer to the Recent Articles docs for more details.
homepage.listSections array of strings ["blog"] The sections of content to include in the recent list when homepage.showList is true.
article.showDate boolean true Whether or not article dates are displayed.
article.dateFormat string "2 January 2006" How article dates are formatted. Refer to the Hugo docs for acceptable formats.
article.showAuthor boolean true Whether or not the author box is displayed in the article footer.
article.showBreadcrumbs boolean false Whether or not breadcrumbs are displayed in the article header.
article.showDraftLabel boolean true Whether or not the draft indicator is shown next to articles when site is built with --buildDrafts.
article.showHeadingAnchors boolean true Whether or not heading anchor links are displayed alongside headings within articles.
article.showPagination boolean true Whether or not the next/previous article links are displayed in the article footer.
article.showReadingTime boolean true Whether or not article reading times are displayed.
article.sharingLinks array of strings Not set Which sharing links to display at the end of each article. When not provided, or set to false no links will be displayed.
list.showBreadcrumbs boolean false Whether or not breadcrumbs are displayed in the header on list pages.
list.groupByYear boolean true Whether or not articles are grouped by year on list pages.
sitemap.excludedKinds array of strings ["taxonomy", "term"] Kinds of content that should be excluded from the generated /sitemap.xml file. Refer to the Hugo docs for acceptable values.
taxonomy.showTermCount boolean true Whether or not the number of articles within a taxonomy term is displayed on the taxonomy listing.
fathomAnalytics.site string Not set The site code generated by Fathom Analytics for the website. Refer to the Analytics docs below for more details.
fathomAnalytics.domain string Not set If using a custom domain with Fathom Analytics, provide it here to serve script.js from the custom domain.
verification.google string Not set The site verification string provided by Google to be included in the site metadata.
verification.bing string Not set The site verification string provided by Bing to be included in the site metadata.
verification.pinterest string Not set The site verification string provided by Pinterest to be included in the site metadata.
verification.yandex string Not set The site verification string provided by Yandex to be included in the site metadata.