Exemples JSON de Studio
Ces documents complets vont dans l'éditeur Source de Studio. Choisissez le document nommé avant de coller. Le remplacement retire ses sections actuelles; ajoutez plutôt les objets aux tableaux existants pour les conserver.
Remplacez les comptes fictifs et le texte anglais avant de publier. Consultez Insérer un composant pour la sauvegarde et l'aperçu.
Un accueil avec les renseignements actuels du club
Choisissez landing.json. Cet exemple active l'accueil géré et affiche une
présentation bilingue, les événements à venir, les matchs en cours et les
commanditaires admissibles. Les sections dynamiques utilisent les fiches du club;
une section vide peut ne rien afficher.
{
"enabled": true,
"components": [
{
"type": "cio-hero",
"version": 1,
"heading": {"en": "Welcome to our club", "fr": "Bienvenue au club"},
"body": {"en": "Ask us how to get started.", "fr": "Demandez-nous comment commencer."},
"media": null,
"actions": [{"label": {"en": "Contact us", "fr": "Nous joindre"}, "href": "/contact"}]
},
{"type": "cio-recent-events", "version": 1},
{"type": "cio-current-games", "version": 1},
{"type": "cio-sponsors", "version": 1}
]
}
Une inscription à l'infolettre et un profil Instagram
Choisissez page.json pour ajouter ces éléments sous toutes les pages. Pour cibler
le corps d'une seule page, utilisez son éditeur Markdown. Copiez les identifiants
Mailchimp du formulaire de votre audience et l'URL du profil Instagram public du
club. Le visiteur active chaque fournisseur avant le chargement du contenu distant.
{
"top": [],
"bottom": [
{
"type": "cio-mailchimp-signup",
"version": 1,
"account": "example.us1",
"userId": "0123456789abcdef0123456789abcdef",
"audienceId": "0123456789",
"emailFieldName": "EMAIL",
"nameFields": [{"name": "FNAME", "label": "First name", "required": false}],
"formId": null
},
{
"type": "cio-instagram-profile",
"version": 1,
"profileUrl": "https://www.instagram.com/example.club/"
}
]
}
Une présentation des résultats
Choisissez results.json. Ce texte apparaît au-dessus des résultats normaux,
qui restent gérés par Curling IO.
{
"top": [
{
"type": "cio-text",
"version": 1,
"heading": "Club results",
"body": "Choose a competition to see its published results."
}
],
"bottom": []
}
Les disponibilités de location sur l'accueil
Choisissez landing.json. Les filtres vides incluent toutes les locations
admissibles. Pour limiter la sélection, fournissez vos identifiants positifs,
uniques et en ordre croissant, au plus 50 par tableau. Ce composant utilise les
mêmes disponibilités que la page publique des locations.
{
"enabled": true,
"components": [
{"type": "cio-rentals", "version": 1, "productIds": [], "resourceIds": []}
]
}
Un menu avec un groupe et des collections dynamiques
Choisissez navigation.json. Les id identifient les entrées pour les modifications
futures; gardez-les uniques dans tout le menu. Utilisez de 1 à 64 lettres minuscules,
chiffres, traits de soulignement ou traits d'union. L'ordre du tableau donne l'ordre
du menu. Les groupes contiennent des entrées simples, jamais d'autres groupes.
label: null utilise le titre traduit habituel.
[
{"type": "route", "id": "home", "route": "home", "label": null},
{
"type": "group",
"id": "club",
"label": {"en": "The club", "fr": "Le club"},
"children": [
{"type": "collection", "id": "pages", "collection": "pages", "label": null},
{"type": "route", "id": "contact", "route": "contact", "label": null}
]
},
{"type": "collection", "id": "news", "collection": "articles", "label": null, "recentLimit": 3},
{"type": "route", "id": "rentals", "route": "rentals", "label": null}
]
Les routes acceptent home, contact, calendar ou rentals. Les collections
acceptent pages, articles ou product_types. Seule articles exige
recentLimit, de 1 à 8. Le tableau facultatif exclude retire des entrées :
utilisez les slugs de types de produits, comme bonspiels, ou le segment d'URL
d'une page ou d'un article, comme 3-ice-rental. Utilisez ceux de vos fiches,
au plus 24 entrées uniques.
Une entrée record utilise recordType (page, article, product_type ou
product_results), un recordId positif, un id unique et un label facultatif.
Une entrée external utilise une URL HTTPS complète dans href et un label
obligatoire. Le menu accepte au plus 24 entrées racines, 24 entrées par groupe et
64 entrées au total, groupes compris. Les liens vers les fiches respectent leurs
règles d'accès et de publication.
Activer le calendrier public
Choisissez calendar.json. Les réglages d'affichage de l'horaire se font
séparément dans Calendrier.
{"enabled": true}
Choisir un thème de plateforme
Choisissez layout.json. kind accepte platform ou organization; slug
identifie un thème disponible. Utilisez le sélecteur de thème
pour choisir un thème valide. Le thème par défaut est :
{"kind": "platform", "slug": "io-default"}