Summary #
Hugo offers the flexibility to override global configuration variables and to manage them via multiple files and in various environments. By moving configuration from a single file to a folder, we can choose options based on numerous conditions.
We can organize web pages in Hugo into sections by placing the corresponding markup content into folders. These sections can be nested and typically match the URL scheme for the website.
We can make the content accessible using index pages for various sections and add those pages to menus.
To enable the portability of content across websites, Hugo offers the capability to have self-contained and isolated data. We can achieve this isolation by placing the menu entries in the front matter and by using page bundles.
With leaf and branch bundles, we keep all assets closer to the content. We can bundle page-specific images and files in the same folder as the markup content for the page.
Hugo offers the ability to logically organize the content in any way desired via taxonomies. Each taxonomy consists of terms, and a page can be present in multiple taxonomies and have numerous terms.
Taxonomies create list pages and provide support for many-to-many mappings between pages and taxonomy terms. We can define as many taxonomies as needed.
Shortcodes are a means to provide snippets that we can use to extend Markdown with new features. Hugo comes bundled with shortcodes for various use cases, from YouTube videos to syntax highlighting.
We can define custom shortcodes in both markup and HTML formats and in line with the content to prevent the need to copy and paste rendering logic.