Skip to content
Hextra v0.12 is here! 🎉 Discover what’s new
Additional Pages

Additional Pages

Hextra includes additional pages that you can enable explicitly: glossary and archives.

Glossary

For more information about Hugo’s built-in glossary support, see the Hugo Glossary Quick Reference.

Source Data File

Term definitions are centrally stored in a termbase.yaml data file for each supported language.

      • termbase.yaml
      • termbase.yaml
      • termbase.yaml

Each YAML data file contains a list of glossary entries. Every entry includes:

  • term: The full name of the concept or phrase.
  • definition: A brief explanation or description of the term.
  • abbr (optional): A commonly used abbreviation or acronym for the term.
data/en/termbase.yaml
- term: seo
  abbr: SEO
  definition: "Search engine optimization – improving the visibility of a web page in search engines"
- term: static site generator
  definition: "Software engines processing text input to generate static web pages"

Glossary Page

To render the glossary index page (listing all defined terms along with their descriptions and abbreviations), a language-specific glossary content file must be defined for each supported language. Use the language code suffix in the filename, for example content/glossary/_index.en.md.

content/glossary/_index.en.md
---
title: Glossary
layout: glossary
---

An example glossary page is available at Glossary.

Archives

You can create an archive timeline page (grouped by year) for posts in a section.

  1. Create the archive page:
    content/archives/_index.md
    ---
    title: Archives
    layout: archives
    toc: false
    ---
  2. (Optional) Add it to the top menu:
    hugo.yaml
    menu:
      main:
        - identifier: archives
          name: Archives
          pageRef: /archives
  3. (Optional, multilingual) Add translated archive index pages with the same layout, for example:
    • content/archives/_index.fa.md
    • content/archives/_index.ja.md
    • content/archives/_index.zh-cn.md
  4. (Optional) Change the content section used for archives. The default is blog.
    hugo.yaml
    params:
      archives:
        section: blog
  5. (Optional) Change the archive item date format. The default is Jan 02.
    hugo.yaml
    params:
      archives:
        dateFormat: "Jan 02"

The empty-state message uses the noResultsFound i18n key.

An example archive page is available at Archives.

Last updated on