Jump to content

Template:Topic Card: Difference between revisions

From WYOS Wiki
No edit summary
No edit summary
 
(13 intermediate revisions by the same user not shown)
Line 18: Line 18:
|-
|-
! Tags (for query)
! Tags (for query)
| {{{Queries for Tag|}}}
| {{#arraymap:{{{Queries for Tag}}}|,|x|[[x|{{#replace:x|Tag:|}}]]|, }}
{{#if:{{{Match Mode|}}}|
{{#if:{{{Match Mode|}}}|
|-
{{!}}-
! Match Mode
! Match Mode
| {{{Match Mode}}}
{{!}} {{{Match Mode}}}
}}
}}
{{#if:{{{Excludes Tag|}}}|
{{#if:{{{Excludes Tag|}}}|
|-
{{!}}-
! Excludes Tag
! Excludes Tag
| {{{Excludes Tag}}}
{{!}} {{#arraymap:{{{Excludes Tag}}}|,|y|[[y|{{#replace:y|Tag:|}}]]|, }}
}}
}}
|}
|}
 
<!-- Hidden Semantic Data (headless CMS source of truth) -->
<!-- Hidden Semantic Data (this is the critical part for your headless CMS) -->
<div style="display:none;">
<div style="display:none;">
[[Has display title::{{{Display Title|}}}]]
[[Has display title::{{{Display Title|}}}]]
[[Has card image::{{{Card Image|}}}]]
<!-- Robust image handling: add File: if missing -->
{{#if:{{{Card Image|}}}
| [[Has card image::{{#ifeq:{{lc:{{#titleparts:{{{Card Image}}}|1|1}}}}|file|{{{Card Image}}}|File:{{{Card Image}}}}}]]
}}
[[Has card description::{{{Card Description|}}}]]
[[Has card description::{{{Card Description|}}}]]
{{#if:{{{Appears in Main Category|}}}
| [[Appears in main category::{{{Appears in Main Category}}}]]
}}
{{#if:{{{Belongs to Platform Section|}}}
| [[Belongs to platform section::{{{Belongs to Platform Section}}}]]
}}
<!-- Set multi-value properties by splitting the comma-separated input from the form -->
{{#if:{{{Queries for Tag|}}}
| {{#arraymap:{{{Queries for Tag}}}|,|x|[[Queries for tag::x]]|\s}}
}}
{{#if:{{{Excludes Tag|}}}
| {{#arraymap:{{{Excludes Tag}}}|,|y|[[Excludes tag::y]]|\s}}
}}


[[Appears in main category::{{{Appears in Main Category|}}}]]
[[Belongs to platform section::{{{Belongs to Platform Section|}}}]]
<!-- Multi-value property for tags to query. #trim removes accidental spaces. -->
{{#arraymap:{{{Queries for Tag|}}}|,|x|[[Queries for tag::{{#trim:x}}]]}}
<!-- Optional: multi-value property for tags to exclude. -->
{{#if:{{{Excludes Tag|}}}|{{#arraymap:{{{Excludes Tag|}}}|,|y|[[Excludes tag::{{#trim:y}}]]}}}}
<!-- Optional: sets the query logic. Defaults to 'ANY' (OR logic). -->
[[Match mode::{{{Match Mode|ANY}}}]]
[[Match mode::{{{Match Mode|ANY}}}]]
 
<!-- Publication status (Draft by default) -->
<!-- Sets the publication status. Defaults to 'Draft'. -->
[[Has status::{{{Status|Draft}}}]]
[[Has status::{{{Status|Draft}}}]]
<!-- Assigns this page to the correct category for management. -->
[[Category:Topic Cards]]
[[Category:Topic Cards]]
</div>
</div>
</includeonly><noinclude>
</includeonly><noinclude>
This template is for creating Topic Cards, which act as curated entry points on the main hub pages.
This template creates a Topic Card (curated entry point for hub pages).
 
<templatedata>
== Parameters ==
{
; Display Title : (Text) The main title shown on the card.
"params": {
; Card Image : (File) The image file used on the card (e.g., "Topic_habits.webp").
"Display Title": {
; Card Description : (Text) The short teaser text for the card.
"label": "Display Title",
; Appears in Main Category : (Page) The Main Category page where this card should appear (e.g., "Master Yourself").
"description": "Main title shown on the card.",
; Belongs to Platform Section : (Text) Exactly "Knowledge" or "Resources".
"type": "line",
; Queries for Tag : (Comma-separated Page Titles) The Tag pages to pull content from (e.g., "Tag:Habits,Tag:Routines").
"required": true
; Excludes Tag : (Optional, Comma-separated Page Titles) Tag pages to exclude from the results.
},
; Match Mode : (Optional, Text) "ANY" or "ALL". Defaults to "ANY".
"Card Image": {
; Status : (Text) "Draft", "Published", or "Archived". Defaults to "Draft".
"label": "Card Image",
"description": "Image file for the card (e.g., \"Topic_habits.webp\").",
"type": "wiki-file-name"
},
"Card Description": {
"label": "Card Description",
"description": "Short teaser text for the card.",
"type": "string",
"required": true
},
"Appears in Main Category": {
"label": "Appears in Main Category",
"description": "Main Category page where this card appears (e.g., \"Master Yourself\").",
"type": "wiki-page-name",
"required": true
},
"Belongs to Platform Section": {
"label": "Platform Section",
"description": "Exactly \"Knowledge\" or \"Resources\".",
"type": "line",
"suggestedvalues": [
"Knowledge",
"Resources"
],
"required": true
},
"Queries for Tag": {
"label": "Tags (for query)",
"description": "Comma-separated Tag pages. Accepts either \"Tag:Habits, Tag:Routines\" or \"Habits, Routines\".",
"type": "line",
"required": true
},
"Excludes Tag": {
"label": "Excludes Tag",
"description": "Optional comma-separated Tag pages to exclude.",
"type": "line"
},
"Match Mode": {
"label": "Match Mode",
"description": "\"ANY\" (OR) or \"ALL\" (AND). Defaults to ANY.",
"type": "line",
"suggestedvalues": [
"ANY",
"ALL"
]
},
"Status": {
"label": "Status",
"description": "\"Draft\", \"Published\", or \"Archived\". Defaults to \"Draft\".",
"type": "line",
"suggestedvalues": [
"Draft",
"Published",
"Archived"
],
"default": "Draft"
}
},
"description": "Template for Topic Cards used on hub pages.",
"format": "block"
}
</templatedata>
</noinclude>
</noinclude>

Latest revision as of 19:58, 23 September 2025

This template creates a Topic Card (curated entry point for hub pages).

Template for Topic Cards used on hub pages.

Template parameters[Edit template data]

This template prefers block formatting of parameters.

ParameterDescriptionTypeStatus
Display TitleDisplay Title

Main title shown on the card.

Linerequired
Card ImageCard Image

Image file for the card (e.g., "Topic_habits.webp").

Fileoptional
Card DescriptionCard Description

Short teaser text for the card.

Stringrequired
Appears in Main CategoryAppears in Main Category

Main Category page where this card appears (e.g., "Master Yourself").

Page namerequired
Platform SectionBelongs to Platform Section

Exactly "Knowledge" or "Resources".

Suggested values
Knowledge Resources
Linerequired
Tags (for query)Queries for Tag

Comma-separated Tag pages. Accepts either "Tag:Habits, Tag:Routines" or "Habits, Routines".

Linerequired
Excludes TagExcludes Tag

Optional comma-separated Tag pages to exclude.

Lineoptional
Match ModeMatch Mode

"ANY" (OR) or "ALL" (AND). Defaults to ANY.

Suggested values
ANY ALL
Lineoptional
StatusStatus

"Draft", "Published", or "Archived". Defaults to "Draft".

Suggested values
Draft Published Archived
Default
Draft
Lineoptional