evoYTAccess: referencia de reglas y propiedades
Dónde aparece la pestaña
En los tipos del Builder que tienen pestañas, incluida Advanced: elementos, ítems, sección, fila y columna. La pestaña Acceso se inserta justo antes de Advanced. Un tipo sin pestañas o sin Advanced no se toca.
Las etiquetas de la pestaña están en castellano con cualquier idioma del panel. YOOtheme no usa los ficheros de idioma de Joomla dentro del Builder.
Campos generales
| Campo | Qué hace |
|---|---|
| Condiciones: «Activar condiciones de acceso» | Activa las condiciones del nodo. Sin marcar, el nodo se comporta como siempre. |
| Acción | «Mostrar solo si se cumplen» (por defecto) o «Ocultar si se cumplen». |
| Lógica | «Deben cumplirse todas (Y)» (por defecto) o «Basta con una (O)». |
Si activas las condiciones y no rellenas ninguna regla, el nodo se renderiza.
Reglas
Dentro de cada regla, los campos se combinan como indica la última columna.
| Regla | Campos del Builder | Dentro de la regla |
|---|---|---|
| Usuario | Estado (Cualquiera, Solo invitados, Solo usuarios con sesión); Grupos de usuario; Niveles de acceso; Usuarios concretos | Todos los campos rellenados deben cumplirse. Dentro de Grupos o Niveles basta uno de los marcados. |
| Idioma | Idiomas | Basta uno. |
| Fecha y hora | Desde; Hasta; Días de la semana; Hora desde; Hora hasta | Todos los campos rellenados deben cumplirse. |
| Dispositivo | Dispositivos (Escritorio, Tablet, Móvil) | Basta uno. |
| Categoría | Categorías de artículos; Categorías DJ-Catalog2 (solo si el componente está instalado); Incluir subcategorías | Basta una. |
| Menú | Elementos de menú; Incluir también sus elementos hijos | Basta uno. |
Usuario
- Usuarios concretos: IDs o nombres de usuario separados por comas, espacios,
;o saltos de línea (ejemplo:42, jperez). La comparación del nombre no distingue mayúsculas. Un invitado nunca coincide. - Grupos de usuario: depende del ajuste Coincidencia de grupos.
- Niveles de acceso: el visitante tiene alguno de los niveles marcados.
Idioma
Se compara el idioma activo del sitio con los marcados. La lista ofrece los idiomas de contenido; si no hay ninguno, los idiomas del sitio instalados.
Fecha y hora
- Las fechas y horas se interpretan en la zona horaria del sitio (la de la configuración global de Joomla).
- «Desde» y «Hasta» definen un rango abierto: puedes dejar uno vacío. «Hasta» es inclusivo; si lleva solo la fecha, cuenta el día completo.
- Días de la semana: de lunes a domingo.
- Franja horaria en formato
HH:MMde 24 horas. Si «Hora desde» es mayor que «Hora hasta», la franja cruza la medianoche (por ejemplo, 22:00 a 06:00). Si solo rellenas uno, el otro se toma como 00:00 o 23:59. Un valor que no se pueda leer se ignora.
Dispositivo
Se detecta en el servidor por el user-agent. Un user-agent vacío cuenta como escritorio. Los iPad con iPadOS reciente se identifican como Mac y cuentan como escritorio. Para ocultar solo por ancho de pantalla usa la opción «Visibility» de YOOtheme.
Categoría
La regla mira la página, no cada ítem de un listado. Se reconocen:
| Página | Categoría que se usa |
|---|---|
| Artículo de Joomla | La del artículo. |
| Blog o lista de categoría de Joomla | La categoría mostrada. |
| Producto de DJ-Catalog2 | La principal y las adicionales. |
| Listado de DJ-Catalog2 con categoría | La categoría del listado. |
| Cualquier otra página | Ninguna: la regla no se cumple. |
Con «Incluir subcategorías», marcar una categoría padre vale también para las páginas de sus descendientes.
Menú
Se compara el elemento de menú activo con los marcados. Con «Incluir también sus elementos hijos», marcar un elemento vale también para las páginas de sus descendientes. Si no hay elemento activo, la regla no se cumple.
Cómo se decide
- Si el nodo no tiene activadas las condiciones, se renderiza.
- En la vista previa del Builder, si «Evaluar en la vista previa del Builder» está en No, se renderiza.
- Se evalúa cada regla rellenada. Las vacías se descartan.
- Con «Y», se cumple si lo hacen todas; con «O», si lo hace alguna.
- Con «Mostrar solo si se cumplen», se renderiza si se cumplen. Con «Ocultar si se cumplen», se renderiza si no se cumplen.
Un nodo descartado se elimina antes de procesar sus hijos y antes de resolver su contenido dinámico. Las filas, columnas y secciones que se quedan sin contenido colapsan como con «Disable element».
Propiedades que guarda cada nodo
Van en el layout del Builder, junto al resto de propiedades del nodo, con el prefijo ytaccess_. El prefijo no cambió al renombrar el plugin.
| Propiedad | Tipo | Valores |
|---|---|---|
ytaccess_enabled |
booleano | |
ytaccess_action |
texto | show (por defecto), hide |
ytaccess_logic |
texto | all (por defecto), any |
ytaccess_user_state |
texto | vacío, guest, registered |
ytaccess_groups, ytaccess_levels |
lista | IDs |
ytaccess_users |
texto | IDs o nombres de usuario |
ytaccess_languages |
lista | códigos en minúsculas, como es-es |
ytaccess_date_from, ytaccess_date_to |
texto | fecha y hora |
ytaccess_weekdays |
lista | 1 (lunes) a 7 (domingo) |
ytaccess_time_from, ytaccess_time_to |
texto | HH:MM |
ytaccess_devices |
lista | desktop, tablet, mobile |
ytaccess_categories |
lista | IDs de categorías de artículos |
ytaccess_djc2_categories |
lista | IDs de categorías de DJ-Catalog2 |
ytaccess_category_children |
booleano | |
ytaccess_menus |
lista | IDs de elementos de menú |
ytaccess_menu_children |
booleano |
Herramientas para evoMCP
Solo existen si evoMCP está instalado. Las registra el propio plugin; no hay un plugin aparte.
| Herramienta | Permiso | Qué hace |
|---|---|---|
evoytaccess_get_settings |
lectura | Devuelve evaluate_in_builder y group_match. |
evoytaccess_set_settings |
escritura, con aprobación | Cambia evaluate_in_builder (booleano) y group_match (direct o inherited). Admite dry_run. |
Ambas exigen que el usuario pueda gestionar plugins; cambiar ajustes exige además poder editarlos. Son las únicas herramientas propias de evoYTAccess; las condiciones de cada nodo no tienen herramientas específicas.