• ¡Bienvenido a XenFácil!

    Estás viendo el sitio como Invitado. Para poder participar en este sitio

    y obtendrás privilegios adicionales, acceso a otras áreas y mucho mas.

    ¡Es gratis!


    ¿Ya eres miembro? Inicia sesión
Icono de recurso

Tutorial Sintáxis de plantillas: Etiquetas de XenForo

La etiqueta xen:untreated se usa para apagar el analizador de lo existente en su interior, haciendo que no se compilen xen:etiquetas, propiedades o auxiliares de plantilla en el HTML y se mostrarán tal cual. Desde 1.2 RC2, no se usa esta etiqueta en el código base de XenForo.

Atributos
La etiqueta xen:untreated no tiene atributos.

Ejemplo
Insertar CODE, HTML o PHP:
<xen:untreated><script>
var ejemplo = '<xen:if is="1">true<xen:else />false</xen:if>';
alert(ejemplo);
</script></xen:untreated>
<script>
var ejemplo = '<xen:if is="1">true<xen:else />false</xen:if>';
alert(ejemplo);
</script>

El ejemplo de arriba contiene dos scripts en el que cada uno de ellos alerta al usuario con un texto. Para el script que está envuelto en untreated, la alerta contendrá:
<xen:if is="1">true<xen:else />false</xen:if>
Para el script tratado (treated) (el segundo), la salida será "true" ya que 1 es un valor verdadero.

Nota para desarrolladores: Esta etiqueta no se corresponde con ninguna clase, como las otras etiquetas. Se maneja a través del analizador directamente.
La etiqueta xen:comment se usa para crear comentarios en la plantilla, similar a como funciona el comentario de HTML. Sin embargo, a diferencia del HTML equivalente. La etiqueta xen:comment y cualquier otra en su interior no se analizarán por la compilación.

Atributos
La etiqueta xen:comment no tiene atributos.

Ejemplo
HTML:
<xen:comment>Este pequeño código se usa para decir hi.</xen:comment>
<!-- HI! -->
La salida de lo de arriba será:
HTML:
<!-- HI! -->
Nota para desarrolladores: Esta etiqueta no tiene una clase que le corresponda, como tienen otras etiquetas. Esto se maneja a través del analizador directamente.
La etiqueta xen:avatar es la más simple y fácil manera de leer la versión de {xen:helper avatar, ...} (próxima su documentación).

Atribut0s
  • user (obligatorio)
    • El atributo user es obligatorio y precisa una matríz con la información del usuario que se usa para buscar y construir el HTML del avatar.
  • size
    • El atributo size especifica cual de los tres tamaños predefinidos se usará en el HTML. Los valores permisibles para para el atributosize son s, m, l para 48px, 96x y 192px tamaños de avatar, respectivamente. Si no se especifica el atributo size, o se provee un valor no válido, el sistema predeterminará m.
  • img
    • Si el atributo img se configura a verdadero el HTML retornado será una etiqueta img, de otro modo, será una etiqueta span en la que la imagen de fondo será el avatar del usuario.
  • class
    • El atributo class permite especificar la(s) clase(s) que se aplicará al enlace que la envuelve. Nota: se debe incluir un espacio en la clase.
  • href
    • El atributo href permite especificar un enlace que se devuelva en el HTML.
Ejempl0
Insertar CODE, HTML o PHP:
                           <xen:avatar user="$visitor" size="m" class="OverlayTrigger" href="{xen:link account/avatar}" />

Nota
  • En la mayorçía de los casos, xen:avatar como etiqueta de auto-cierre. Sin embargo, puede usarse con la etique de fin adecuada y su contenido se incluirá después del avatar en el HTML y en el interior del enlace que lo envuelve.
OBSOLETO
La etiqueta xen:hook ha quedado obsoleta en XenForo 1.2 y superiores, esta documentación limitada existe sólo para explicar el propósito de la etiqueta.

Esta estiqueta está diseñada para trabajar en conjunción con detectores y complementos, aunque no proveen traslado directo de HTML. Se usaban para permitir a los complementos interceptar la compilación de una plantilla e inyectarle el código de su complemento a fin de evitar al usuario final ediciones de plantillas. Este sistema se ha reemplazado con el sistema de Modificaciones de Plantilla. Si quieres leer más acerca de las modificaciones de plantilla, te recomiendo que leas lo siguiente:
Desde XenForo 1.2 RC3, el sistema de modificaciones de plantilla está oculto salvo que trabajes en modo de depuración (debug), al igual que con todas las otras herramientas de desarrollo de complementos.
La etiqueta xen:edithint se usa para informar al software de plantillas la inclusión en la ventana de edición de plantillas de pestañas extra. Estas plantillas son útiles en la edición de la plantilla, pero sin ser directamente incluidas en la propia plantilla. Es una etiqueta con auto-cierre.

Atributos
  • template (obligatorio)
    • Nombre de la plantilla que podría ayudar al intentar editar la plantilla. Esto debe ser una plantilla válida de XenForo.
Ejemplo
[code}<xen:edithint template="xenforo_alert.css" />[/code]
La etiqueta xen:map se usa conjuntamente con la etiqueta xen:include. Su uso es copiar una variable en otra. Esto es útil cuando al usar xen:include la plantilla que se está incluyendo usa diferentes nombres de variable para los mismos datos.

Atributos
  • from (obligatorio)
    • El atributo from se usa para definir la fuente de la variable.
  • to (obligatorio)
    • El atributo to se usa para definir la variable destino.
Ejemplo
Insertar CODE, HTML o PHP:
                   <xen:include template="helper_birthday_input">
                        <xen:map from="$visitor" to="$user" />
                    </xen:include>
Nota para desarrolladores: Esto se maneja a través de la clase xen:include sin que exista una clae para sí misma.
la etiqueta xen:include se usa para incluir otra plantilla en el lugar de la inclusión. Esto es muy útil cuando se tienen varias plantillas que pueden usarse de nuevo o que es necesario para la plantilla. Al editar una plantilla, cualquier plantilla incluida estará disponible como pestaña lo que te permite una fácil edicion de todas las plantillas usadas.

Atributos
La etiqueta xen:include tiene los siguientes atributos:
  • template (obligatorio)
    • El atributo template se usa para instruir a XenForo sobre qué plantilla se incluirá. Debe contener un nombre válido de plantilla.
Notas
  • La etiqueta xen:include puede cerrarse de modo automático, y en la mayoría de casos, se usa esta vía dentro de XenForo. No puede existir un auto-cierre si se quiere asignar valores a una variable (se usa xen:map) o configurar una variable (se usa xen:set) para uso en el interior de la plantilla que se incluye. Véase la documentación de estas etiquetas para mayor información de su uso.
  • Cualquier dato o variable incluido en la plantilla estará disponible para su uso.
Ejemplo
Ejemplo del auto-cierre:
Insertar CODE, HTML o PHP:
<xen:include template="navigation_sidebar.css" />

Ejemplo del uso de xen:map:
Insertar CODE, HTML o PHP:
                   <xen:include template="helper_birthday_input">
                        <xen:map from="$visitor" to="$user" />
                    </xen:include>

Ejemplo del uso de xen:set:
Insertar CODE, HTML o PHP:
                   <xen:include template="helper_birthday_input">
                        <xen:set var="$bool">1</xen:set>
                    </xen:include>
La etiqueta xen:require se usa para incluir fuentes JavaScript externas que no existen en las plantillas así como para incluir plantillas CSS.

Atributos
  • css
    • El atributo css se usa para incluir en lapágina CSS necesario antes de cargar la página. Diferente a xen:include, xen:require añade su salida en la cabecera de la página. En caso de ser CSS, también lo compila además en una sola llamada para redudir solicitudes HTTP por página.
  • js
    • El atributo js se usa para añadir a tu página un archivo JavaScript desde tu servidor.
Ejemplo
Insertar CODE, HTML o PHP:
<xen:require css="account.css" />
<xen:require js="js/xenforo/personal_details_editor.js" />
Notes
  • xen:require es una etiqueta de auto-cierre.
  • Debe definirse bien el atributo css o el js.
  • Todo el css precisa a incluir terminar en .css.
La etiqueta xen:container se usa para configurar variables de datos en el contenedor.

Atributos
  • var (obligatorio)
    • El atributo var se usa para definir la variable que recibirá el HTML.
Ejemplo

Para un amplio ejemplo de cómo utilizar la etiqueta xen:container, puedes visitar la guía de Brogan aquí: [url='https://xenforo.com/community/resources/using-variables-in-templates.5034/update?update=18416']Using variables in templates[/URL]

Lo que sigue es un ejemplo rápido que te permite agraegar HTML al contenedor sin requerir un editor o tu propio código (además del HTMLque pasas):
HTML:
<xen:container var="$head.robots">
   <meta name="robots" content="noindex" />
</xen:container>

La salida incluirá el contenido HTML adecuado antes del final de la etiqueta head en el código HTML.

La etiqueta xen:topctrl te permite definir HTML que se colocará al lado del contenedor de la navegación superior.

Atributos
La etiqueta topctrl no tiene atributos y su funcionalidad depende del HTML provisto en su interior.

Ejemplo
HTML:
<xen:topctrl><a href="{xen:link 'reports/closed'}" class="callToAction"><span>{xen:phrase closed_reports}</span></a></xen:topctrl>

Esto creará la siguiente vista (en el centro de informes):
index.png
Arriba