Cette partie de la documentation est assez technique et elle n'est utile que si vous voulez mettre les mains dans le cambouis. En effet, vous n'en avez pas besoin pour une utilisation normale de Kiubi.
Cette partie intéressera essentiellement les personnes désirant créer ou personnaliser elles même un thème pour Kiubi. Cela suppose de connaître quelques bases du fonctionnement de Kiubi (que nous allons aborder ici), d'être habitué à manipuler les widgets et d'avoir quelques notions d’HTML.
Découvrez Kiubi pas à pas
Liste des balises
Les balises
Qu'est-ce qu'une balise ?
Les balises Kiubi sont de petits codes que vous pouvez inclure un peu partout et qui servent à afficher toutes les informations que vous avez saisies à l'aide de votre console d’administration, dans les pages de votre site. On reconnaît facilement ces balises car elles sont composées d’un mot entouré d’accolades.
Comment ça, "un peu partout" ?
Kiubi utilise des ensembles de fichiers HTML, des templates, pour mettre en forme votre site. Ils composent le squelette du site. Les balises servent à donner vie au squelette en indiquant à Kiubi où injecter exactement le titre de la page, le contenu des billets, la date de création du dernier billet de votre blog, etc. Elles sont pour ainsi dire omniprésentes. Tous les templates ont besoin de balises pour fonctionner et vous pouvez également saisir certaines balises dans les éditeurs de texte visuels.
Nous allons lister ici toutes les balises utilisables et à quels endroits elles le sont. Ne vous laissez pas impressionner par leur nombre car ce sont souvent les mêmes qui reviennent et elles peuvent vous rendre de fiers services. Il existe trois grandes familles de balises : les balises globales sont utilisables partout (templates, éditeurs de texte visuels), les balises des modèles qui ne fonctionnent que dans les templates des modèles de mise en page et enfin les balises des widgets qui ne fonctionnent que dans leur widget.
Exemple d’utilisation dans un modèle de mise en page
Prenons un exemple de template tel qu'on pourrait en trouver dans les sous répertoires de "/fr/template/" d'un thème.
<head>On voit ici que le titre de la page, la meta description et les mots clés de l'entête du fichier HTML sont remplis automatiquement avec les valeurs configurées dans la console d'administration.
<meta name="keywords" content="{metaKeywords}" />
<meta name="description" content="{metaDescription}" />
<title>{title}</title>
Exemple d’utilisation dans un éditeur de texte visuel
Les balises dans les éditeurs de texte visuels peuvent être très utiles pour récupérer automatiquement des données de votre site. Prenons l'exemple des informations légales de votre site telles qu'elles sont pré-remplies à l'ouverture de celui-ci. Dans le billet intitulé "1.1.1 Éditeur du site", on trouve le contenu suivant :
{SOCIETE.societe_nom}
{SOCIETE.societe_adresse}
{SOCIETE.societe_cp} {SOCIETE.societe_ville}
Email : {SOCIETE.contact_email}
{SOCIETE.societe_nom} est une société au capital de {SOCIETE.societe_capital}
RCS {SOCIETE.societe_rcs} - Siret : {SOCIETE.societe_siret} - APE : {SOCIETE.societe_ape}
Toutes vos informations légales sont automatiquement récupérées ! Pas besoin de ressaisir ces informations ou de se préoccuper de les retrouver dans votre site si vos informations changeaient.
Le bloc, impossible de s'en passer
Les blocs sont des portions de HTML encadrés par des codes spécifiques qui vont pouvoir être affichés ou masqués selon le besoin, et même dupliqués. Ils se présentent toujours de cette façon :
<!-- BEGIN:bloc -->Les blocs sont pour la plupart du temps imbriqués dans d'autres blocs. La documentation ci-après précise toujours dans quel bloc placer tel autre bloc. Si rien n'est précisé c'est qu'il faut au moins placer le bloc dans le bloc "main". Voici un exemple de bloc correctement imbriqués :
<!-- END:bloc -->
<!-- BEGIN:main -->L'exemple suivant est faux et amènera à des comportements imprévisibles. Les blocs "bloc2" et "bloc3" sont mélangés l'un dans l'autre, ce qui est incorrect :
<!-- BEGIN:bloc -->
<!-- BEGIN:bloc2 -->
<!-- END:bloc2 -->
<!-- BEGIN:bloc3 -->
<!-- END:bloc3 -->
<!-- END:bloc -->
<!-- END:main -->
<!-- BEGIN:main -->Voilà, on est presque au bout de "tout-ce-que-vous-avez-toujours-voulu-savoir-sur-les-blocs". L'avant dernier point concerne le fait que certaines balises ne sont accessibles qu'à l'intérieur de blocs spécifiques. Si c'est le cas, cette documentation le précisera.
<!-- BEGIN:bloc2 -->
<!-- BEGIN:bloc3 -->
<!-- END:bloc2 -->
<!-- END:bloc3 --> // cette fermeture de bloc ne devrait pas se trouver ici !!!
<!-- END:main -->
Pour finir, il faut noter que tous les templates doivent commencer par <!-- BEGIN:main --> et se terminer par <!-- END:main -->. Oublier le bloc "main" est une erreur très courante. Alors, dès que vous créez ou modifiez un template et qu'il ne s'affiche rien du tout dans votre site, pensez à vérifier le bloc "main". De même, tout ce qui est en dehors du bloc "main" est complètement ignoré par Kiubi.
Avec ou sans filtre ?
Kiubi supporte un ensemble de filtres qui peuvent être appliqués aux balises. Ces filtres ont pour but de changer la valeur de la balise pour mieux répondre à un besoin précis.
On utilise ces filtres en ajoutant une barre verticale "|" dans la balise (ex : {balise|filtre}) . Certains filtres peuvent prendre des arguments, ils seront alors séparés par une autre barre (ex: {balise|filtre|argument}). Les filtres disponibles sont :
ucfirst : met le premier caractère en majuscule
strtoupper : met tout en majuscule
strtolower : met tout en minuscule
rawurlencode : encode pour être transmis par url
htmlentities : encode en html
left|x : affiche les x premiers caractères à partir de la gauche
stripText|x : coupe le texte à x caractères
mot|x : affiche le xième mot
Ainsi {intitule_pagecourante|strtoupper} affichera le nom de la page courante en majuscule. Tandis que {SOCIETE.societe_cp|left|2} affichera le numéro de département extrait du code postal du contact principal du site.

