Variables XSLT

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" :

Liste des variables et leur description

VariableDescription
$uri-prefixContexte 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/
Ex : '/cms/www', '/cms/preview/www'.
Voir AmetysXSLTHelper.siteUriPrefix()

$absolute-uri-prefixIdentique à $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-prefixIdentique à $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-pathChemin de la page courante. Le chemin est relatif au plan du site.
Ex: "rubrique/sous-rubrique/page"
Voir AmetysXSLTHelper.pagePath()
$page-idIdentifiant unique de la page courante (sous la forme page://...)
Voir AmetysXSLTHelper.pageId()
$langCode de la langue de la page en cours d'utilisation
Ex: fr, en, es, ...
Voir AmetysXSLTHelper.lang()
$siteNom du site courant.
Ex: "www", "default", "medecine", ...
Voir AmetysXSLTHelper.site()
$skin

Nom de la skin utilisé par le site courant
Ex: "demo"
Voir AmetysXSLTHelper.skin()

$templateNom 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

Voir AmetysXSLTHelper.zone('default')

$rendering-contextContexte du rendu courant :
  • "back" - si le rendu est fait dans le backoffice
  • "preview" - si le rendu est fait en mode preview ou live
  • "front" - si le rendu est fait à partir du site
 Voir AmetysXSLTHelper.renderingContext()


Exemples d'utilisation:

 

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>