Lors de la création de vos thèmes, vous souhaiterez importer du contenu dynamique de votre site Mura pour afficher des méta-informations, des titres, des corps, etc. Pour les variables de niveau page, vous devez accéder à la contenu
portée pour cette page. Ceci est fait en utilisant $ .content ('nomVariable')
. Par exemple, si vous voulez la méta description de la page, vous y accéderez comme suit:
# $. content ('metaDesc') #
La balise complète dans votre html_head.cfm ressemblerait à ceci:
Pour plus d'informations sur l'ensemble du site, tel que le nom du site, utilisez le siteConfig
portée:
# $. siteConfig ('nomVariable') #
Par exemple, si vous souhaitez afficher le titre de votre page ainsi que le nom du site dans la balise de titre de votre modèle, procédez comme suit:
#HTMLEditFormat ($. Content ('HTMLTitle') # # - #HTMLEditFormat ($. SiteConfig ('site')) #
Pointe: HTMLEditFormat ()
remplace les caractères spéciaux (<
, >
, Et
, "
) dans une chaîne avec leurs équivalents échappés en HTML. Par exemple, il remplacerait <
avec <
Si vous voulez voir toutes les valeurs disponibles pour le contenu et votre site, placez le code suivant dans l'un de vos modèles de page et exécutez la page:
Chaque élément de la colonne de gauche peut être passé dans leur champ respectif. Par exemple:
# $. content ('metaKeywords') #
et
# $. siteConfig ('domaine') #
Parfois, vous voudrez peut-être ne générer une balise que si une valeur a été entrée dans le champ. Par exemple, si vous voulez sortir l'auteur de la page, vous pouvez faire quelque chose comme ceci:
Écrit par: # $. contenu ('crédits') #
Toutefois, si aucun auteur n’a été inscrit sur cette page en particulier dans le champ "Crédits", votre page restituera simplement le résultat. Écrit par:
Pour éviter cela, nous pouvons utiliser un peu de logique CFML:
Écrit par: # $. contenu ('crédits') #
le len
(abrégé pour 'longueur') la fonction dans CFML détermine la longueur d'une variable. Si vrai
(c’est-à-dire qu’il y a effectivement une valeur dans le champ), il va aller de l'avant et afficher votre balisage. Sinon, il sera simplement ignoré et ne produira rien.
Mura a une fonction intégrée qui prend automatiquement toutes les pages de haut niveau de votre gestionnaire de site et les affiche dans une liste de navigation:
# $. dspPrimaryNav () #
le $ .dspPrimaryNav ()
La fonction s’affiche dans l’ordre que vous avez configuré dans votre gestionnaire de site. Éléments dont l'affichage est défini sur Non ou le jeu de navigation à Non ne sera pas affiché dans votre navigateur principal.
Vous pouvez passer plusieurs arguments dans cette fonction pour contrôler divers aspects de votre sortie de navigation:
#Nly, = ", aCurrentAttributes =", ulNestedClass = ", ulNestedAttributes =", aNotCurrentClass = ", siteid = $. event (" siteid ')) #
Une liste complète de ces arguments et leurs descriptions sont disponibles dans la documentation Mura.
La sortie par défaut de la navigation principale est une simple liste non ordonnée (
):
Cependant, en ajoutant des balises supplémentaires autour du nav et en ajustant certains des arguments, vous pouvez rapidement les attribuer à n'importe quel thème CSS:
Il est recommandé d’envelopper votre code de navigation principal dans le
tag pour augmenter les performances sur votre site. le cf_CacheOMatic
tag peut être utilisé pour mettre en cache des éléments moins fréquemment mis à jour qui ont une surcharge de serveur d’application. Il est utilisé conjointement avec le Caching option sous Configuration du site> Modifier le site. le cf_CacheOMatic
La balise ne cache rien, sauf si la mise en cache du site est activée. Le préfixe de l'attribut "key" (dans ce cas, dspPrimaryNav
) peut être utilisé pour donner du contexte à la variable unique, # $. content ('contentid') #
, créé pour l'élément mis en cache.
Votre Primay Nav complet ressemblerait à ceci:
# $. dspPrimaryNav (…) #
Pour sortir le titre de la page, le corps et l’image associée, vous voudrez utiliser le $ .dspBody ()
tag, et spécifiez ces éléments:
# $. dspBody (body = $. content ('body'), pageTitle = $. content ('title'), showMetaImage = 1) #
Cela va automatiquement sortir ces éléments ensemble sur la page rendue. Si vous devez séparer le titre de la page ou le supprimer complètement, vous pouvez également le faire:
#HTMLEditFormat ($. Content ('title')) #
# $. dspBody (body = $. content ('body'), pageTitle = ", showMetaImage = 1) #
$ .dspBody ()
est une fonction spéciale dans Mura qui alimente d’autres fonctionnalités telles que les pages protégées par mot de passe, la sortie de dossiers, etc. Il est recommandé d’utiliser $ .dspBody ()
pour afficher le corps dans vos modèles afin de vous assurer que ces types de fonctionnalités continueront à fonctionner correctement.
Enfin, vous pouvez utiliser la fonction intégrée de Mura pour sortir le fil d'Ariane de la page comme ceci:
# $. dspCrumbListLinks () #
Comme vous pouvez le constater, l’utilisation de variables de modèle est un excellent moyen d’inclure rapidement du contenu dynamique dans vos modèles de thème..