-
Notifications
You must be signed in to change notification settings - Fork 0
8. The Metadata Orchestrator
metadata-orchestrator controls how an item's metadata is displayed on its own detail page — the "Title: ... / Creator: ... / Date: ..." list you see when you click into a single collection item. It's marked yellow: you're meant to edit it as you add fields to your collection, but it links several other tabs together, so mistakes here are easy to make without realizing it.
| Column | What it holds |
|---|---|
field |
The exact column name from main-metadata this row configures (e.g. creator, date, subject-in-English). Must match a real main-metadata column name exactly.
|
translate_id_metadata |
An ID linking to this field's display label on the translation tab (e.g. metadata-creator → the label "Creator" / "Creador"). Same cross-referencing pattern as nav-bar's translate_id_nav. |
lang |
Which language(s) this row applies to — en, es, or en;es for both. See below. |
browse_link |
True if this field's value(s) should be clickable, linking out to the Browse page filtered to that value. Blank otherwise. |
external_link |
True if the value should render as an external hyperlink rather than plain text. Blank otherwise. |
Not every main-metadata column has (or needs) a row here. In this template, structural fields like objectid, filename, latitude/longitude, parentid, image_thumb, and the video-embed fields are deliberately left out — they drive other parts of the page (the image, the map, the video player) rather than appearing in a text metadata list. Only add a row for a field you actually want to show up as a labeled line on the item page.
Row order here also sets the display order — the sequence in this template (title, creator, language, date, description, subject, locations, source, format, rights, rightsstatement, plus this collection's custom fields) is exactly the order those fields appear on the item page.
main-metadata handles bilingual fields two different ways, and metadata-orchestrator has to match whichever way each field uses:
-
Split fields —
main-metadataalready has separate columns per language, liketitle-in-Englishandtitle-in-Español. These need two rows here, one per language, each withlangset to justenores. -
Shared fields —
main-metadatahas a single column serving both languages, likecreatorordate(nocreator-in-English/creator-in-Españolsplit). These need only one row, withlangset toen;es— the underlying value is the same in both languages, but the label next to it (viatranslate_id_metadata) is still looked up separately for each language.
If you add a new bilingual field to main-metadata as a split column, give it two rows here. If you add it as a single shared column, give it one row with lang: en;es.
-
browse_link: Truemakes sense for tag-like, repeatable values — things worth clicking to see everything else sharing that value. In this template that'screator,language, bothsubject-in-*fields, bothlocations-in-*fields, and this collection's customgender-strategyandLND_or_LNIfields. It's left off free-text fields liketitleanddescription, and offdate,source,format, andrights— this project chose not to make those clickable, though you could turnbrowse_linkon for any field you do want browsable, as long as it's also configured onconfig-browse. -
external_link: Trueappears only onrightsstatementin this template, since those values are typically full URLs to a formal license page (a Creative Commons or RightsStatements.org link) — worth turning on for any field whose values are themselves web addresses meant to be clicked out to.
Don't set both True on the same row — the template never combines them, and doing so isn't a tested pattern.
- A typo in
fieldthat doesn't exactly match a realmain-metadatacolumn name — that field simply won't show up. - Forgetting the second row for a split bilingual field — the field will be missing entirely from the language version you forgot.
- A
translate_id_metadatawith no matching row ontranslation— same failure mode as onnav-bar: a blank or broken label instead of real text. - Adding a row for a structural field (
filename,image_thumb, coordinates, video IDs) expecting it to appear as a metadata line — these aren't meant to be listed this way and won't behave as expected. - Turning on
browse_linkfor a field without also wiring that field intoconfig-browse— the link may not lead anywhere useful.
As with every tab, changes here don't reach your live site until you run Sync content from Spreadsheet in GitHub Actions.