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()
$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>