Template:Category/Workshop admin link
Subobject display template for Category:Workshop admin link.
Called by the SemanticSchemas dispatcher when a category embeds
Workshop admin link as a subobject (currently only
Category:Workshop admin hub). The dispatcher emits one call with
category= and page= after the main display
template runs, so the links section appears below the admin hub's
status, KPI and quick-action blocks.
Renders, top to bottom:
- Already on the wiki — a short list of the links that are
already stored as properties elsewhere, resolved by chaining out from this hub. Nobody should re-enter these as rows.
- Off-wiki resources — the subobject rows, in the order they were
written, as a three-column table.
Why derived links are listed rather than entered
Three of the planning doc's Quick Links already have homes in the schema: the participant hub and the registration form on the workshop record, and the post-workshop survey and chat channel on the internal hub. Adding rows for them here would mean two copies of the same URL, kept in sync by hand, with the participant-facing page reading one of them and this table showing the other. So they are shown, not stored — this section chains out and displays whatever those properties currently hold.
The chain is: this page → Has workshop → the workshop
record → Has workshop hub → the internal hub. Same idiom,
and the same 3-hop depth, as the KPI cards in
Template:Category/Workshop admin hub. Every #show uses
link=none so URL-typed values come back as bare strings
rather than rendered links, which would otherwise nest inside the
external-link brackets and print as literal text.
A row with no URL is the useful state
Has link url is not required. A row carrying a type
and no URL renders as not yet in red — which is the whole reason
the vocabulary is a fixed list. An admin hub started from
Workshop admin:Admin hub starter arrives with every canonical row
already stubbed and empty, so the table reads as a checklist of the
links this workshop still owes rather than as a blank space that has
to be remembered.
Delete the rows that don't apply. A workshop with no certificate is better off with no certificate row than with one that says not yet forever.
Ordering
sort=Has sort order — SemanticSchemas stamps every
subobject with a counter from 1, so rows
render in the order they appear in the wikitext and there is no
numbering to maintain. Reordering the table means reordering the
wikitext, or dragging the rows in the form.
Parameters:
category— "Workshop admin link" (informational)page— the container page whose subobjects are rendered
Cross-template dependencies:
- Template:Category/Workshop admin link/row — one table row
- Template:UI/button — the add-a-link affordance when empty