Pour faciliter l'intégration d'une charte graphique, un certain nombre de variable XSLT sont disponibles à partir des fichiers XSLT.
Ces variables sont définies dans le fichier variables.xsl du workspace "web" :
Variable | Description |
---|---|
$uri-prefix | Contexte de l'application en fonction du contexte de rendu. Ex: '/cms', '/cms/preview'. Voir AmetysXSLTHelper.uriPrefix() |
$site-uri-prefix |
Contexte du site courant en fonction du contexte de rendu/ |
$absolute-uri-prefix | Identique à $uriPrefix mais avec l'url absolue. Ex: 'http://www.ametys.org/cms/' ou 'http://www.ametys.org/cms/preview/ Voir AmetysXSLTHelper.absoluteUriPrefix() |
$absolute-site-uri-prefix | Identique à $siteUriPrefix mais avec l'url absolue. Ex: 'http://www.ametys.org' ou 'http://www.ametys.org/cms/www' ou 'http://www.ametys.org/cms/preview/www' Voir AmetysXSLTHelper.absoluteSiteUriPrefix()) |
$page-path | Chemin de la page courante. Le chemin est relatif au plan du site. Ex: "rubrique/sous-rubrique/page" Voir AmetysXSLTHelper.pagePath() |
$page-id | Identifiant unique de la page courante (sous la forme page://...) Voir AmetysXSLTHelper.pageId() |
$lang | Code de la langue de la page en cours d'utilisation Ex: fr, en, es, ... Voir AmetysXSLTHelper.lang() |
$site | Nom du site courant. Ex: "www", "default", "medecine", ... Voir AmetysXSLTHelper.site() |
$skin |
Nom de la skin utilisé par le site courant |
$template | Nom du gabarit (template) en cours d'utilisation, c'est à dire de la page courante Ex: "page", "index", ... Voir AmetysXSLTHelper.template() |
$zone |
Nom de la zone qui est en train d'être rendue (contenu ou service) avec la valeur 'default' comme valeur par défaut si le rendu n'est pas dans une zone A partir de Ametys 4.2 |
$rendering-context | Contexte du rendu courant :
|
Lien vers la page d'accueil (page index)
<a href="{$site-uri-prefix}/{$lang}/index.html">Accueil</a>
Désactivation d'une fonctionnalité dans le back-office
<xsl:choose> <xsl:when test="$rendering-context = 'back'"> <xsl:text>javascript:alert("Cette fonctionnalité ne peut pas être utilisée dans le back-office. Ouvrez la prévisualisation pour l'utiliser.");</xsl:text> </xsl:when test> <xsl:otherwise> ... </xsl:otherwise> </xsl:choose>
Traduction d'une clé i18n du catalogue de la skin
<head> <title><i18n:text i18n:key="SKIN_TITLE" i18n:catalogue="skin.{$skin}"/></title> ... </head>