Skip to content

feat: add talks and series page types powered by a generalized archives layout - #1023

Open
nisrulz wants to merge 3 commits into
imfing:mainfrom
nisrulz:update/patch-1
Open

feat: add talks and series page types powered by a generalized archives layout#1023
nisrulz wants to merge 3 commits into
imfing:mainfrom
nisrulz:update/patch-1

Conversation

@nisrulz

@nisrulz nisrulz commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR generalizes the archives layout into a reusable grouped index and introduces two new page types on top of it: Talks and Series. It includes the layout changes, configuration, example content, and documentation across all four supported languages.

Changes

Core: generalized archives layout

  • layouts/archives.html now renders any page set as a year- or month-grouped timeline (or flat list) instead of hardcoding the blog section.
  • New group front matter options:
  • group.section — which section to archive (defaults to the page's own section, falling back to params.archives.section)
  • group.dateFormat — date format for list items
  • group.groupBy — year (default), month, or none for a flat list
  • Term pages (e.g. series) default to groupBy: none since they are already grouped by term.
  • Extracted the archive list rendering into reusable partials: archive-item.html and grouped-list.html.

New page type: Talks

  • A section such as talks is listed as a year-separated index by giving its _index.md the archives layout. No extra config needed.
  • Example content in docs/content/talks/ demonstrates single-file posts and page-bundle posts.
  • New Talks menu item added under the "More" menu.

New page type: Series

  • New series taxonomy (configured alongside existing tag and category taxonomies).
  • Posts tagged with a series term are grouped on an auto-generated /series// page.
  • New navbar dropdown (type: series) lists all series automatically.
  • Series links appear in the breadcrumb via GetTerms.
  • Series _index.md term pages can set the title and enable the archives layout.
  • Example content: two demo series (demo-series, hextra-tips) with posts.

Docs

  • Rewrote docs/content/docs/advanced/additional-pages.* (en, fa, ja, zh-cn) to document the generalized archives layout, options, Talks, and Series setup.

Misc

  • layouts/single.html now enables the breadcrumb for pages whose current section is not the site home.

Testing

Verified via the example site in docs/ — archives, /talks/, and /series/demo-series/ all render correctly in all four languages.

Screenshots

Series

Screenshot 2026-08-14 at 12 46 27 Screenshot 2026-08-14 at 12 46 33 Screenshot 2026-08-14 at 12 46 46

Talks

Screenshot 2026-08-14 at 12 46 53 Screenshot 2026-08-14 at 12 46 58

Generalize the archives layout into a grouped index that powers
archives, talks, and series pages. Add a series taxonomy dropdown
to the navbar and series links to the breadcrumb.
Explain the generalized archives layout, group options, and how to
set up talks archives and series taxonomies.
@netlify

netlify Bot commented Aug 14, 2026

Copy link
Copy Markdown

Deploy Preview for hugo-hextra ready!

Name Link
🔨 Latest commit b81e367
🔍 Latest deploy log https://app.netlify.com/projects/hugo-hextra/deploys/6a7ee7c4f69c0b0008092664
😎 Deploy Preview https://deploy-preview-1023--hugo-hextra.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@nisrulz
nisrulz deployed to accessibility August 14, 2026 10:02 — with GitHub Actions Active
Comment thread package-lock.json
Comment on lines +1095 to 1098
"version": "3.3.18",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.18.tgz",
"integrity": "sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==",
"dev": true,

@nisrulz nisrulz Aug 14, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was shown as high severity issue so I updated the dependency. I can revert it if this is useful for this PR. Please let me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant