Mura CMS Mura Scope

Cuando cree sus temas, necesitará acceder a varios valores y objetos almacenados en Mura CMS para que se impriman dentro de su marca de tema o páginas de ejemplo. Mura Scope es una forma rápida y fácil de acceder a datos y objetos en Mura CMS. El Mura Scope no solo le permite acceder a datos de nivel de página, sino que también le permite acceder a objetos y funciones completos. Echemos un vistazo a algunos casos de uso clave para Mura Scope.

Alcance del contenido

En el tutorial de Extensiones de clase, agregamos algunos atributos personalizados a una página de Libro en Mura, y generamos esos valores usando un componente. Utilizamos el Ámbito de contenido de Mura para acceder al bean de contenido y recuperar el atributo que queríamos. La sintaxis básica para acceder al bean de contenido es:

$ .content ('someAttribute')

Podemos usar esta sintaxis para acceder a cualquier variable que queramos desde un nodo de contenido, incluidos los atributos personalizados que agregamos:

 $ .contenido ('título')  $. contenido ('resumen')  $ .contenido ('créditos')  $ .conten ('tipo')  $ .content ('myExtendedAttribute')

Ámbito de usuario actual

Si su sitio está diseñado para incluir funcionalidad basada en membresía, es posible que desee usar el Alcance de usuario actual para interactuar con el usuario actual en el sitio. 

Detectar si el usuario ha iniciado sesión o no.

 Hola, # $. CurrentUser ('fname') #   

Alcance de configuración del sitio

Este alcance le brinda la posibilidad de acceder a información global sobre su sitio Mura CMS, más específicamente, la mayoría de los valores que encontrará en su Configuración del sitio> Editar sitio Área en el admin. Probablemente ya hayas visto esto usado en el tema. html_head.cfm al enlazar dinámicamente a tus archivos CSS y JS:

Esto le dice a Mura que no importa cómo se llame el nombre del tema, tome su ruta y ubique el /assets/bootstrap/css/bootstrap.css expediente. Esto es útil porque evita que las rutas se rompan si el desarrollador alguna vez decidió cambiar el nombre del tema a algo diferente (por ejemplo, el nombre de la compañía del cliente) en desarrollo. Por ejemplo, si su tema es 'MuraBootstrap3' (que se envía con Mura), la ruta sería siteID / includes / themes / MuraBootstrap3 /

Y si el desarrollador alguna vez cambiara el nombre del tema a 'CompanyABC', la ruta sería: siteID / includes / themes / CompanyABC /

También puede utilizar el alcance de Site Config para acceder al Nombre del sitio, tal como se ingresa en el administrador:

$ .siteConfig ('sitio')

Esto es útil para cosas como etiquetas de título o información de pie de página para tu tema.

Exhibiendo objetos

Además de obtener las variables de página y sitio, Mura Scope también puede mostrar objetos integrados y personalizados completos en Mura. 

Mostrando un formulario

$ .dspForm ('Mi formulario')

Mostrando un componente

Mostrar un componente es muy común en el desarrollo de temas. Esto le permite tener una marca compleja en sus plantillas de diseño y solo permite que los elementos que desea que editen sus usuarios se editen a través del administrador.. 

# $. dspComponent ('Nombre del componente') #

Mostrando un feed

$ .dspFeed ('Nombre del feed')

Métodos personalizados

Como aprendimos en el tutorial de Métodos personalizados, Mura CMS le permite agregar fácilmente funciones personalizadas a sus temas. contentRenderer.cfc Y accede a ellos a través del Mura Scope. Así que dada la siguiente función en tu tema. contentRenderer.cfc:

  

Simplemente puede llamar a esa función utilizando el Mura Scope:

$ .dspMySlider ()

Mura Scope es una herramienta poderosa en Mura que puede usarse para una variedad de casos de uso durante el desarrollo de su tema. Te animo a que lo uses a menudo para crear temas robustos..