www-from-model/content/publications
Stephan Heunis 73ae3cace6 Layout template generalization
The goal of this change is to deduplicate all custom templates that are in use for taxonomy pages.
This commit defines the entrypoint for any taxonomy list page to be the 'layouts/taxonomy.html' template,
and removes all taxonomy-specific templates (e.g. 'layouts/publications/taxonomy.html'). Per-taxonomy
page customization are now handled via new partials and with front matter configuration via 'params'.
Any given taxonomy list page can now be customized to do the following:
- show all terms vs only terms that have a metadata-generated '_index.md' page (via '.Params.title')
- list items in a grid vs list items vertically
- include vs exclude filtering functionality (inclusion assumes the vertical list layout)
- specify which filter fields to use (e.g. 'kind', 'topic', 'year'), if filtering functionality is active
- specify which fields to include in the text search functionality, if filtering functionality is active

Customization happens in the '_index.md' page of any given taxonomy content directory.
For example 'content/publications/_index.md':

---
title: Publications
params:
  list_variant: vertical # grid (default) | vertical (if filter == true, list_variant is set to vertical)
  items: generated # generated (default) | all
  filter: true # false (default) | true
  filter_fields: # no default
    - kind
    - topic
    - year
  search_fields: # default: kind, topic, year, author, title
    - kind
    - topic
    - year
    - author
    - title
---

And partials are then rendered based on this configuration.

Main configuration introduced with this commit:
- persons: grid view (default)
- objectives: grid view (default)
- projects: grid view (default)
- publications: filter view
- datasets: filter view
- instruments: filter view

The main repo README is updated with a description of this configuration and template pattern

TODO:
- add some partials for the parts that are displayed on a list item (e.g. the list of authors, the topics,
  the icon-links, etc); and perhaps also configuration variables for their inclusion/exclusion
- Improved logic for selecting depictions; the current depiction registration workflow registers files
  with names derived from the depiction kind, e.g. 'logo.png' or 'portrait.webp'. These are generally for
  different purposes, and the logic might want to prefer a specific kind for a specific taxonomy, e.g.
  'portrait' for 'persons', or 'logo' for 'instrument'.
- Update filtering-related code to make better use of hugo templating functionality; some aspects are still
  hardcoded, e.g. 'data-*' for setting the list-item data values.
- Apply similar improvements to the 'term.html' template as done above for 'taxonomy.html'
2026-05-28 12:23:50 +02:00
..
0cac730a-7fa1-429d-82ca-0a98ba32f156 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
00d0a237-1e0b-44b9-a236-dd0cf41566a3 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
0e5bd333-db9c-41c4-b9bd-a4bbdab167b5 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
0f4abbf1-099b-48b2-a1a1-79438c188aef chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
1e14ae9a-a54a-467a-8a27-e89da1c612b1 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
2b1783b9-efff-4e6a-9a55-18617e970f07 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
2d7aabae-01e5-4268-a28d-79cd8804be9d chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
3d36ec1a-b677-429b-8485-d8047fea11a0 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
3e67bc48-6ca2-472f-b007-31237865b33f chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
3ee38a6f-7fa0-4847-b486-288fd171cc5e chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
3ee366a1-99b6-4913-8c56-5de57d1ba56b chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
3f35c4d3-168f-4ff4-9e74-05c6d0974914 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
4a42292a-ab19-447a-9ac8-57e5daf5614f chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
4d692cf1-2a19-406c-9066-e0c85de46e4a chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
4dee8e5d-b124-4e60-90e3-748ff8090c2b chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
4ea5c19f-d116-470f-a31c-dff14912c7b2 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
4ee145a0-e000-4c8d-8696-dc7e64c684fe chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
5b97b3a3-25f7-453c-bc87-beabc2848c22 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
6ab9f41d-bc91-47a1-97d7-44b52282d6b7 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
6c58f6e3-1443-4e37-92db-f87a6f9830d8 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
7a8f5c76-b891-4d99-a460-de928523f093 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
7bbb3f5c-66ab-4818-8134-ed869d7e1a64 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
7de16586-c19a-4334-b84c-33da571debf4 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
7f75bf68-9f8f-4aa6-81b6-5d843666440c chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
7ff79006-70a1-4bf9-97f2-d5ae7a024da7 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
8cd76c6f-d34a-4125-a7d5-b74632b1046b chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
8d618838-29d3-48d2-ba87-ca1cf0835b96 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
8f4249c5-92c9-43aa-84c7-294aa464d6d2 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
9bbeb960-f3b3-4120-a3b6-101aabdc8fe4 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
9e81065c-28e2-4218-ac0c-24b01c106179 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
9fa8db8b-d278-45bf-a449-2a7d56a9d47e chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
15a94498-814e-4314-9ff7-b032a94d1f8c chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
15f6113f-8ef6-403c-9618-0b35dc436866 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
19f0a9d1-a477-425b-a77c-55e7aa065bfc chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
31f308e9-6173-4adb-a902-6af3ec2cd327 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
42b8ce9d-795c-483a-a61a-d8ca8b7e606b chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
046a581f-9715-4b00-880a-5027b37f0f6b chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
50f24bfa-4371-4f74-a57f-d62d71553ecb chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
56d2708c-f5a4-42e8-b25b-bac91f0e1a95 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
59b3c4a2-8ee5-4162-8d95-83a8338cd6f9 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
59d214f8-29a8-4df6-a563-450e46d329cc chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
62a1b9d2-6b1d-4bca-b616-82210f855cf1 chore: auto-generate content from metadata 2026-05-21 04:56:38 +00:00
62d15fe4-3f70-42ce-afbf-7849dc16d23a chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
064e5ccb-fc55-4266-9cc5-cb62d3dd410d chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
65e8093f-259a-4aff-a2b2-b1010a4a0445 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
81dfd027-e1e2-4af0-841f-5ccb6bcbeb9b chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
86c8f0a2-14c7-4bfe-b4b3-cd1125ce35f7 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
86d5576c-8707-4850-91b4-ae4829506383 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
212e3bce-22fa-4cf6-bd1d-fedd33428d65 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
339d13d0-87a9-4924-b6c1-247b570d0dc9 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
388e69f6-2cd3-4446-8bc6-4316018ee640 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
421e9534-e3d7-4d0a-b74b-f624eeaeb86b chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
496be9bd-b68f-4dbd-a9fb-53cf7e7b77bd chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
589eb76e-3aa3-428c-a3ed-30fe547bd042 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
590c9f52-b078-421d-8106-086e2e51bb35 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
596baa90-ea06-46aa-8809-a2d06f85d6ff chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
739a02ab-313d-48b1-8d8e-fdc35f0e2314 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
757d8769-97a4-4f6b-bcc7-45b4d1360db2 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
787d9a99-90ef-4fa3-b42a-09c3cc48b658 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
977f1da5-5c38-46f4-a3c3-6b23c5102096 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
2341c433-0628-40f0-856a-06fe4e2a9f8e chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
4538da47-6995-4a52-a399-e20e36c440bb chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
4611b86b-e0dc-40f3-9eaa-ede2c047e7a1 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
8194b25f-d731-4083-911d-c23b25be9504 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
9103ab93-a2ae-45c2-b2b0-e922bbb4e94a chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
63212c2d-7d2a-4415-80f0-b1c9dd6a0488 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
06688308-2c40-49a6-88e3-ba7bfca73a1e chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
37413838-b11d-4448-a83a-f00e284c19e5 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
a2c0e912-ae8e-48b4-aac5-d023afb4a048 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
a2de1888-b547-4587-938c-ef9e7ecc8c67 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
a38a3e42-7141-4e7e-90f8-caa6149d3059 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
a050d2d2-bbe8-4fe1-baff-f6d53e5642f0 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
a87ab2c3-3c74-4ea5-8691-de743f3f7d34 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
a858bc3e-fc02-4c08-89b6-7f716c236795 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
aa376542-5a33-4dc6-85c3-a880b4e521e9 chore: auto-generate content from metadata 2026-05-21 04:56:38 +00:00
b2f6fb79-0988-43ab-8787-35dcfa9e3fa2 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
b46c17cb-6471-4b21-947e-1e175ff66fb7 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
b55d66d6-23f0-4c36-855c-714dd467a757 chore: auto-generate content from metadata 2026-05-21 04:56:38 +00:00
b868e194-0d17-4b91-a386-dd7342588780 chore: auto-generate content from metadata 2026-05-21 04:56:38 +00:00
bde8a483-e87d-4425-b517-369322d049e7 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
be1cccaa-2de2-4e0f-baa0-d2d201f43f47 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
bfc4c1b2-f2ed-475f-9bce-e3a5cc101421 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
c5ca68cb-ba35-4df5-8788-d51beb266fd9 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
c6aa11d9-caf4-48db-8f7c-27d511ae9e67 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
c6d96776-4be0-43a5-862f-1cc6d8b16385 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
c456d465-8f51-41e8-b5c5-a03a46bde8a3 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
c650d00f-816d-4b12-af63-9ce812c2c09c chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
c891e979-2fd4-48b3-8327-466aed21fdfb chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
c96801de-5f95-46be-98d4-98a5a9b8c609 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
cde72ffc-9086-4b83-85e7-0c05afb73394 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
ce6400c7-51eb-4656-82ff-836ebef0c445 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
cfe671ce-314c-4d86-a306-92e2e593e6dd chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
d0e424e2-bc1e-4a84-bdc8-a1e75039bed2 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
d2ed3524-c8a6-425d-ac00-769fdd54de02 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
d64a3468-434b-4f95-953f-533bb0942974 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
d3399cd6-b993-4b75-b386-0edb776b83e7 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
dc5d3f5f-0d0d-498c-84dd-cd4fba222bd4 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
dc355ca9-3375-486c-801e-b478f7ac013d chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
e2d68640-4f13-4706-afec-174b07f8a4f8 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
e3acf3af-3b8b-40ea-87dc-18d29446ced8 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
e5a9fe37-e438-4ebb-a777-aeeb2b2425fe chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
e6b31cf9-30e9-455e-b28d-f08af8617014 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
e87a7122-9b1c-4ec8-9857-cbcebd79f80b chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
e304fb15-57a3-4550-87b5-79268bc251a4 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
e62958e2-a3ce-4a67-8059-97075812f712 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
e64719cc-2064-4914-8fa4-e18224d55619 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
e7274698-f460-4a7b-8b07-01a5d54374bc chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
f5f330bb-f99c-4f82-adee-5713f093f7ee chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
f9a11f66-f71c-4dcb-964e-8a2954cef094 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
f15570ef-4b82-4fc7-9780-715b99cfa388 chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
fc5d60eb-7f01-4fe6-80fa-7ff404c236f3 chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
fd7f3b66-e9f2-49ab-8a9f-3e3a9abc891a chore: auto-generate content from metadata 2026-05-18 16:55:35 +00:00
fd921cee-1ee2-4194-85f4-6ae0227bd6fb chore: auto-generate content from metadata 2026-05-22 01:01:15 +00:00
_index.md Layout template generalization 2026-05-28 12:23:50 +02:00