I am a sloperator. I use LLMs where I think appropriate. The trigger for this post is that I’d always been mildly irked that whilst the pages of the blog had tags, they weren’t clickable and were thus a little useless. So I fired up Gemini in the editor and gave it this instruction
Each page has categories tags. I want these to be clickable in the browser that leads to a page listing all the posts with that tag
And off it chuntered
Responding with gemini-3-pro-preview
✦ I will investigate how categories are currently implemented in the theme by listing the layout files.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ ReadFolder themes/bootstrap/layouts │
│ │
│ Listed 6 item(s). │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I will now list the contents of the partials directory to locate the file responsible for rendering categories.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ ReadFolder themes/bootstrap/layouts/partials │
│ │
│ Listed 6 item(s). │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I will read the categories.html partial and the single.html post layout to understand the current implementation and usage of categories.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ ReadFile themes/.../partials/categories.html │
│ │
│ │
│ ✓ ReadFile themes/.../posts/single.html │
│ │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I will examine themes/bootstrap/layouts/partials/meta.html to see if it includes the categories.html partial, as the single.html layout calls meta.html but not categories.html directly.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ ReadFile themes/.../partials/meta.html │
│ │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I will verify the taxonomy configuration in config.toml to ensure the standard /categories/<term>/ path is correct. Then, I will modify meta.html to add clickable links to the categories, preserving the
existing visual style and / separator.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ ReadFile config.toml │
│ │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I will modify themes/bootstrap/layouts/partials/meta.html to wrap the category names in <a> tags, creating clickable links. I will use the /categories/ path prefix, consistent with the existing
categories.html partial and the site's configuration.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ Edit themes/.../partials/meta.html: {{ range $index, $category := ... => {{ range $index, $category := ... │
│ │
│ 11 <span class="meta-tags"> │
│ 12 <span class="fa fa-tags"></span> │
│ 13 <span> │
│ 14 - {{ range $index, $category := .Params.categories }}{{ if (gt $index 0) }} / {{ end }}{{.}}{{ end }} │
│ 14 + {{ range $index, $category := .Params.categories }}{{ if (gt $index 0) }} / {{ end }}<a href="/categories/{{ . | urlize }}">{{ . }}</a>{{ end }} │
│ 15 </span></span> │
│ 16 {{ end }} │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I've updated meta.html to link categories. I'll now examine themes/bootstrap/layouts/_default/terms.html to ensure the category listing page, which these links will point to, is properly formatted.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ ReadFile themes/.../_default/terms.html │
│ │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I've confirmed terms.html correctly lists all categories. Now, I need to check themes/bootstrap/layouts/_default/list.html to ensure the page for a specific category (e.g., /categories/car) displays its
posts correctly.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ ReadFile themes/.../_default/list.html │
│ │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I will examine themes/bootstrap/layouts/posts/archive.html to understand how the list.html template renders the individual post summaries, as it uses {{ .Render "archive" }}.
╭─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ ✓ ReadFile themes/.../posts/archive.html │
│ │
╰─────────────────────────────────────────────────────────────────────────────────────────────────╯
Responding with gemini-3-pro-preview
✦ I have verified the chain of templates: meta.html now includes links, pointing to /categories/<term>, which uses list.html. list.html renders posts via archive.html, which also uses meta.html, ensuring
consistent linking. The main categories page uses terms.html, also linking correctly. The solution is consistent and complete.
I realise I could have invested some time in learning more about how the templating system of Hugo works, but there are some things that I just don’t want to learn as my mental capacity is limited. I see LLMs as useful here as a better search engine that I allow some write access to my files.
LLMs are a tool. A tool is not inherently good or evil. That comes from how they are used.