Mura CMS Variables de plantilla

Al crear sus temas, querrá traer contenido dinámico desde su sitio de Mura para mostrar información de metadatos, títulos, cuerpo, etc. Para las variables de nivel de página, necesita acceder a la contenido alcance para esa página. Esto se hace usando $ .content ('variableName'). Por ejemplo, si desea la meta descripción de la página, se accederá de esta forma:

# $. contenido ('metaDesc') #

La etiqueta completa en tu html_head.cfm se vería así:

Para obtener información sobre todo el sitio, como el nombre del sitio, debe utilizar el siteConfig alcance:

# $. siteConfig ('variableName') #

Por ejemplo, si desea mostrar el título de su página, así como el nombre del sitio en la etiqueta del título de su plantilla, debería hacer lo siguiente:

#HTMLEditFormat ($. Content ('HTMLTitle') # - #HTMLEditFormat ($. SiteConfig ('site')) #

Propina: HTMLEditFormat () reemplaza caracteres especiales (<, >, Y, ") en una cadena con sus equivalentes escapados de HTML. Por ejemplo, reemplazaría < con <

Dumping Variables Disponibles

Si desea ver todos los valores disponibles tanto para el contenido como para su sitio, coloque el siguiente código en cualquiera de sus plantillas de página y ejecute la página:

Variables de contenido

Variables del sitio

Cada elemento de la columna izquierda se puede pasar a su ámbito respectivo. Por ejemplo:

# $. contenido ('metaKeywords') #

y

# $. siteConfig ('dominio') #

Visualización de valores condicionalmente

En ocasiones, es posible que desee generar algún tipo de marca solo si se ha ingresado un valor en el campo. Por ejemplo, si desea mostrar el autor de la página, puede hacer algo como esto:

Escrito por: # $. contenido ('créditos') #

Sin embargo, si esa página en particular no tuviera un autor ingresado en el campo "créditos", su página simplemente mostrará el Escrito por:

Para evitar esto, podemos usar un poco de lógica CFML:

 Escrito por: # $. contenido ('créditos') # 

los len La función (abreviatura de 'longitud') en CFML determina la longitud de una variable. Si cierto (es decir, en realidad hay un valor en el campo), seguirá adelante y generará su marca. De lo contrario, solo lo saltará por completo y no generará nada..

Navegación primaria

Mura tiene una función incorporada para tomar automáticamente todas las páginas de nivel superior en el administrador de su sitio y mostrarlas en una lista de navegación:

# $. dspPrimaryNav () #

los $ .dspPrimaryNav () La función se mostrará en el orden que haya configurado en el administrador de su sitio. Elementos que tienen la pantalla configurada en No o el conjunto de navegación para No no saldrá en tu navegador principal. 

Puede pasar varios argumentos a esta función para controlar varios aspectos de su salida de navegación:

# $. dspPrimaryNav (viewDepth = 1,, nunca ", closeFolders = false, showCastsChildrenOnly = false, liHasKidsClass =", liHasKidsAltaCasas de los frutos de la familia). = ", aCurrentAttributes =", ulNestedClass = ", ulNestedAttributes =", aNotCurrentClass = ", siteid = $. event (" siteid ')) #

Puede encontrar una lista completa de estos argumentos y sus descripciones en los documentos de Mura..

La salida predeterminada de la navegación principal es una simple lista desordenada (

    ):

    Sin embargo, al agregar un marcado adicional alrededor de la navegación y al ajustar algunos de los argumentos, puedes aplicar rápidamente este estilo en cualquier tema de CSS:

    Caché y rendimiento

    Se recomienda que ajuste su código de navegación principal en el etiqueta para aumentar el rendimiento en su sitio. los cf_CacheOMatic La etiqueta se puede usar para almacenar en caché los elementos actualizados con mayor frecuencia que tienen una mayor sobrecarga del servidor de aplicaciones. Se utiliza junto con el Almacenamiento en caché opción bajo Configuración del sitio> Editar sitio. los cf_CacheOMatic la etiqueta no almacenará en caché nada a menos que el almacenamiento en caché del sitio esté activado. El prefijo del atributo "clave" (en este caso, dspPrimaryNav) se puede utilizar para dar contexto a la variable única, # $. contenido ('contentid') #, creado para el elemento en caché.

    Tu completa Primay Nav se vería así:

     # $. dspPrimaryNav (…) # 

    Título de la página, cuerpo e imagen primaria

    Para generar el título de la página, el cuerpo y la imagen asociada, querrá usar el $ .dspBody () etiqueta, y especifique estos elementos:

    # $. dspBody (body = $. content ('body'), pageTitle = $. content ('title'), showMetaImage = 1) #

    Esto generará automáticamente estos elementos juntos en la página renderizada. Si necesita separar el título de la página o eliminarlo por completo, también puede hacerlo:

    #HTMLEditFormat ($. Content ('title')) #

    # $. dspBody (body = $. content ('body'), pageTitle = ", showMetaImage = 1) #

    $ .dspBody () es una función especial en Mura que potencia otras funciones, como páginas protegidas con contraseña, salida de carpeta, etc. Se recomienda que use $ .dspBody () para mostrar el cuerpo en sus plantillas para garantizar que estos tipos de funcionalidades continuarán funcionando correctamente. 

    Migas de pan

    Por último, puede usar la función incorporada de Mura para generar las rutas de navegación de la página de esta manera:

    # $. dspCrumbListLinks () #

    Como puede ver, la utilización de variables de plantilla es una excelente manera de incluir contenido dinámico rápidamente en sus plantillas de temas.