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 From 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>