Skip to content

9. Further Metadata Tailoring

Euge Stumm edited this page Aug 16, 2026 · 1 revision

Further Metadata Tailoring

metadata-orchestrator controls how a field shows up on a single item's own page. The five tabs on this page go further: they control how fields behave on every other view of your collection — the sortable data table, the map, site search, the faceted browse page, and the overall look and feel of the site. Four of them (config-table, config-map, config-search, config-browse) are marked orange — discouraged unless you know what you're doing. The fifth, config-theme, is marked red — the most discouraged tab in the workbook. None of them are places to experiment casually; treat this page as reference for when you deliberately want to change one specific behavior.

A theme running through four of these tabs: config-table, config-map, and config-browse all reuse the same translate_id values already defined for metadata-orchestrator (metadata-title, metadata-date, metadata-subject, and so on). You only need to write a label once on the translation tab, and every view that shows that field reuses it — you don't translate "Subject" four separate times for four separate pages.

Tab: config-table 🟠

Controls which fields become columns in the sortable data table (the /data.html page — a spreadsheet-style view of your whole collection).

Column What it holds
field The exact main-metadata column this table column pulls from.
translate_id_table The column header label, looked up on translation — reuses the same IDs as metadata-orchestrator.
lang en, es, or en;es — same split-vs-shared logic as metadata-orchestrator.

In this template, the table shows title, date, description, subject, and the collection's custom gender-strategy field — a deliberately shorter list than the full item-page metadata, since a wide table with every field becomes unreadable. Add a row here for any field you want as its own table column; leave a field off if it's better suited to the item page or a facet than a spreadsheet column.

Tab: config-map 🟠

Controls what appears in the popup when someone clicks a map marker, and which of those fields can be used to filter markers.

Column What it holds
field The main-metadata column to show in the popup.
translate_id_map The field's label, looked up on translation.
lang en, es, or en;es.
search True if this field should also be usable to filter/search which markers are shown on the map.

This template keeps the map popup intentionally minimal — just date and subject, both searchable. Map popups are small, so resist the urge to list every field here; pick the two or three most useful for orienting someone looking at a pin on a map.

Tab: config-search 🟠

Controls the site search index — what's searchable, and what shows up in a result.

Column What it holds
field The main-metadata column being indexed.
lang en, es, or en;es.
index True to include this field's text in the search index (so typing matching words finds it).
display True to show this field's content in the search results list.

Notice there's no translate_id_search column here — search results are shown as a snippet rather than a labeled field list, so individual field labels aren't needed the way they are on the table, map, or browse page.

index and display are independent: a field can be searchable without being shown, which is exactly what this template does with location — index: True but display: False means you can search by place name, but the result snippet won't visibly repeat it.

A real inconsistency worth knowing about: this template's rows are named location-in-English / location-in-Español (singular), but the actual main-metadata columns are locations-in-English / locations-in-Español (plural, with an "s"). If your copy still has this typo, that field likely isn't indexing the way it's meant to — worth fixing to match main-metadata exactly. It's a good example of why field values need to be checked character-for-character against the real column name.

Tab: config-browse 🟠

Controls the facets and filters on the Browse page — the checkboxes/buttons visitors use to narrow down the collection by subject, location, creator, and so on.

Column What it holds
field The main-metadata column to turn into a facet.
translate_id_browse The facet's label, looked up on translation — same IDs as metadata-orchestrator again.
lang en, es, or en;es.
btn True to render this facet's values as clickable filter buttons/tags rather than a plain list.
hidden True to keep this facet defined but hidden from the default browse view.
translate_id_sort_name Only needed if you want this field offered as a sort option (not just a filter) — points to the label for that sort control.

In this template, date is the only field with translate_id_sort_name set — meaning it's the only field visitors can sort the collection by, in addition to the others being filterable. Everything else (subject, locations, language, creator, gender-strategy) is filter-only, rendered as buttons (btn: True).

Tab: config-theme 🔴

The largest and most sensitive tab — around three dozen settings covering site-wide behavior and appearance, all on a plain category/content structure like config. Because a single typo here can silently break a page (a mismatched field list, an invalid color) rather than throw a visible error, this tab earns its red rating. Below are the settings grouped by what they affect — use this as a reference, not a checklist to work through.

(Note: featured-image originally lived on this tab in the stock template, but if you've already moved it to config, it won't appear here in your copy.)

Home page layout

  • home-title-y-padding — vertical spacing around the homepage title (e.g. 10em).
  • home-banner-image-position — CSS background-position value for the homepage banner image (e.g. center).

Browse page

  • browse-buttons — True/False, toggles button-style filters on the Browse page globally.

Word-cloud tabs (subjects & locations)

  • subjects-fields / locations-fields — semicolon-separated list of the exact main-metadata columns feeding each word cloud (e.g. subject-in-English;subject-in-Español). Must match real column names exactly, the same caution as config-search's field-name mismatch above.
  • subjects-min / locations-min — minimum number of occurrences before a term appears in the cloud.
  • subjects-stopwords / locations-stopwords — terms to exclude from the cloud, if any.

Map defaults

  • auto-center-map — True/False, whether the map centers itself automatically based on your data.
  • latitude / longitude / zoom-level — the map's default center point and zoom, used when auto-center-map is off (or as a fallback).
  • map-base — which base map tile style to use (e.g. Esri_WorldStreetMap).
  • map-search / map-search-fuzziness — whether the map has its own search box, and how forgiving its text matching is (0.35 = fairly forgiving).
  • map-cluster / map-cluster-radius — whether nearby markers group into clusters when zoomed out, and how large that grouping radius is.

Timeline

  • year-navigation — optional timeline navigation setting.
  • year-nav-increment — step size for timeline navigation controls (e.g. 5 years at a time).

Data export & facets

  • metadata-export-fields — the full comma-separated list of main-metadata columns included when someone exports/downloads the collection's metadata. This template's list is long and deliberately comprehensive — it's essentially every non-secret column.
  • metadata-facets-fields — which fields are available as facets in general (works alongside config-browse).

Child-object visibility — six True/False toggles (map-child-objects, timeline-child-objects, data-child-objects, carousel-child-objects, browse-child-objects, search-child-objects) controlling whether "child" items (ones with a parentid set on main-metadata) appear on each of these views. In this template, child objects show up on the map, timeline, and in search, but are hidden from the data table, carousel, and browse page — a common pattern so that a compound object's parent represents the group without every child cluttering list-style views.

Site look & feel

  • navbar-color / navbar-background — Bootstrap-style classes controlling the navbar's color scheme (e.g. navbar-dark / bg-dark).
  • bootswatch — an optional Bootswatch theme name, if you want a pre-built visual theme instead of custom colors.
  • base-font-size, text-color, link-color — core typography and color settings, as plain CSS values (1.2em, #191919, #0d6efd).
  • base-font-family / font-cdn — optional custom font settings, left blank in this template (meaning it uses the site's default font).

What's relatively safe to experiment with here

Even on a red tab, some settings are lower-risk than others: colors (text-color, link-color), navbar-color/navbar-background, base-font-size, and the map's latitude/longitude/zoom-level are cosmetic or self-contained — get them wrong and you'll see it immediately, with nothing else breaking. The higher-risk settings are the field-name lists (subjects-fields, locations-fields, metadata-export-fields, metadata-facets-fields) and the child-object toggles, since those depend on exactly matching other tabs and can fail silently rather than obviously.

Common mistakes across all five tabs

  • A field value that doesn't exactly match a real main-metadata column name (including the locations vs location typo noted above) — the feature quietly doesn't work rather than erroring.
  • A translate_id_* with no matching row on translation — a blank or broken label.
  • Listing every possible field on config-table or config-map, making the table unreadable or the map popup too crowded — both are meant to be curated, shorter lists than the full item-page metadata.
  • Editing a field-name list on config-theme (subjects-fields, locations-fields, metadata-export-fields, metadata-facets-fields) without updating it to match a change you made elsewhere, like renaming a main-metadata column.

As with every tab, changes here don't reach your live site until you run Sync content from Spreadsheet in GitHub Actions.

Clone this wiki locally