• ¡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
Sentencias condicionales de XenForo

Tutorial Sentencias condicionales de XenForo

lms

Administrador
Mensajes
7.741
Puntuación de reacciones
2.163
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
  • Sólo visible a miembros:
PHP:
<xen:if is="{$visitor.user_id}"> .......</xen:if>
  • Sólo visible a visitantes:
PHP:
<xen:if is="!{$visitor.user_id}"> .......</xen:if>
  • Sólo visible por administradores:
PHP:
<xen:if is="{$visitor.is_admin}">.......</xen:if>
  • Sólo visible a moderadores:
PHP:
<xen:if is="{$visitor.is_moderator}"></xen:if>
  • Sólo visible a miembros con al menos 5 Mensajes:
PHP:
<xen:if is="{$visitor.message_count} < 5">.......</xen:if>
  • Sólo visible al grupo 2:
PHP:
<xen:if is="{$visitor.user_group_id} == '2'"> .......</xen:if>
  • Sólo visible a los grupos X, Y, Z:
PHP:
<xen:if is="{$visitor.user_group_id} == X OR {$visitor.user_group_id} == Y OR {$visitor.user_group_id} == Z">.......</xen:if>
  • Sólo visible en el listado de foros (index,también, pero sólo en la plantilla PAGE_CONTAINER):
PHP:
<xen:if is="{$contentTemplate} != 'forum_list'"> .......</xen:if>
  • Sólo visible en un (id de) foro:
PHP:
<xen:if is="{$forum.node_id}==x">.......</xen:if>
  • Sólo visible en una discusión detallada:
PHP:
<xen:if is="{$thread.thread_id}==x">.......</xen:if>
  • Aplicable a todos los miembros del grupo 1, primario o secundario
PHP:
<xen:if is="{xen:helper ismemberof, $user, 1}"></xen:if>

Salud2
 

DL Gushh_

Miembro
Mensajes
64
Puntuación de reacciones
49
Puntos
18
Sitio web
desload.net
<xen:if is="{$forum.node_id}==x">.......</xen:if>

Sabran como condicionar las conversaciones??

Es decir, Si estoy viendo los mensajes de una conversación entonces hacer algo...
 

xavimtz

XenForoUser
Mensajes
218
Puntuación de reacciones
89
Puntos
28
muchas gracias lms, no conocía esas condicionales....
 

lms

Administrador
Mensajes
7.741
Puntuación de reacciones
2.163
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
<xen:if is="{$forum.node_id}==x">.......</xen:if>

Sabran como condicionar las conversaciones??

Es decir, Si estoy viendo los mensajes de una conversación entonces hacer algo...
Veo por donde vas y me parece muy interesante. Te lo miro.

Salud2
 

lms

Administrador
Mensajes
7.741
Puntuación de reacciones
2.163
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
Esto es lo que he encontrado en las plantillas conversation_list y conversation_list_item
PHP:
<xen:if is="{$conversations}">
    <xen:foreach loop="$conversations" value="$conversation">
        $conversation.conversation_id
        $conversation.isNew
        $conversation.lastPageNumbers
        $conversation.title
        $conversation.start_date
        $conversation.username
        $conversation.reply_count
        $conversation.last_message
        $conversation.recipient_count
        $conversation.last_message_id
        $conversation.last_message_date
    </xen:foreach>
<xen:else />
...
</xen:if>
Te pongo la condicional inicial de la página de conversaciones, el bucle para las diferentes conversaciones y las variables que he encontrado.

Espero que te valga.

Salud2
 

lms

Administrador
Mensajes
7.741
Puntuación de reacciones
2.163
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
lms ha publicado un nuevo recurso:

Sentencias condicionales de XenForo (versión 1) - Guía de sentencias condicionales que usan la sintáxis de XenForo

Las siguientes sentencias condicionales solo funcionan en plantillas que soporten los argumentos y tengan los parámetros.

Las sentencias pueden ampliarse usando AND, OR, xen:else y xen:elseif.

Reemplazar == con != en los siguientes ejemplos cambiará la condición de verdadera a falsa.
Por ejemplo, <xen:if is="{$visitor.user_id} == x"> para verdadero, <xen:if...

Leer más sobre este recurso...
 
Última edición:

lms

Administrador
Mensajes
7.741
Puntuación de reacciones
2.163
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
lms ha actualizado el recurso Sentencias condicionales de XenForo:

XenForo 2

lms dijo:
Declaraciones condicionales de XenForo 2

Las declaraciones condicionales pueden expandirse usando los operadores condicionales AND y OR y usando xf:if, xf:else, xf:elseif.

Si quieres que se agregue alguna declaración, publica tu petición para que se haga.

1. Mostrar contenido a administradores
Insertar CODE, HTML o PHP:
<xf:if is="$xf.visitor.is_admin">
   Show content...
</xf:if>
2. Mostrar contenido a Moderadores
Insertar CODE, HTML o PHP:
<xf:if is="$xf.visitor.is_moderator">...

Leer el resto de la descripción de la actualización...
 

HenryRocket

XenForoUser
Mensajes
38
Puntuación de reacciones
10
Puntos
8
País
USA
Versión de XenForo
1.5.14
Página web
Web
Disculpe que reviva el post, pero queria saber por ejemplo, si quiero poner un banner que solo lo vea 2 grupos de usuarios y que se vea en todos los nodos menos en 1? como seria la condicional? @lms
 

lms

Administrador
Mensajes
7.741
Puntuación de reacciones
2.163
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
<xen:if is="{!$forum.node_id}==x">// Esto es para no verlo en el foro x
<xen:if is="{$visitor.user_group_id} == X OR $visitor.user_group_id} == Y">Sólo los grupos X e Y verán esto</xen:if>
</xen:if>
Pero ten en cuenta que esto solo es válido para xenforo 1.

Salud2
 
Última edición:
Arriba