Los FID de Prontus está conformados por dos grandes áreas, el menú
y los paneles
. Ambas partes pueden ser fácilmente identificables tanto en la interfaz gráfica como en su codificación.
Ejemplo de interfaz de FID, creado desde marcas de menú y panel:
<!DOCTYPE html>
<html lang="es">
<head>
%%macro(_head.html)%%
</head>
%%macro(_open_body.html)%%
%%menu%%
%%item(Cabecera, body1)%%%%/item%%
%%item(Adjuntos, body2)%%%%/item%%
%%item(Cuerpo, body3)%%%%/item%%
%%item(Fotos, body4)%%%%/item%%
%%item(Galería de fotos, body5)%%%%/item%%
%%item(Multimedia)%%
%%subitem(Video1, body6)%%%%/subitem%%
%%subitem(Video2, body7)%%%%/subitem%%
%%subitem(Audio, body8)%%%%/subitem%%
%%/item%%
%%/menu%%
<div class="main-fid" id="fid">
%%macro(_titulo_principal.html)%%
<div class="content">
%%macro(_publicacion_directa.html)%%
<div class="panel-group">
%%panel(Cabecera, body1, noticia_cabecera.html)%%
%%panel(Adjuntos, body2, common_adjuntos.html)%%
%%panel(Cuerpo, body3, _vtxt.html)%%
%%panel(Fotos, body4, noticia_fotos.html)%%
%%panel(Galería de Fotos, body5, _galeria_prontus.html, 1:fotofija_galeria@@_low:65x65|2:fotofija_galeria@@_high:800x600)%%
%%panel(Video 1, body6, _video_xcode.html, 1)%%
%%panel(Video 2, body7, _video_xcode.html, 2)%%
%%panel(Audio, body8, _audio.html, 1)%%
</div>
</div>
</div>
%%macro(_close_body.html)%%
</html>
En los FID existe un marca de apertura y de cierre que define la creación de los menúes, de esta manera:
%%menu%% %%/menu%%
Entre el inicio y el cierre de %%menu%%
debes ubicar las marcas que definirán los botones del menú, definidas como bloques %%item%%
.
Ejemplo:
%%menu%%
%%item(parametro_1, parametro_2)%%%%/item%%
%%/menu%%
Las marcas %%item%%
contienen dos parámetros:
1) El primero le da el nombre al botón y título a la marca y se verá reflejado en el front del formulario.
2) El segundo parámetro le da un identificador a la pestaña para poder asociarla al panel que mostrará el contenido de dicho botón. Es importante tener en consideración que este nombre es único e irrepetible dentro de las marcas %%item%% y que puede llevar cualquier nombre, en el caso del ejemplo se utiliza la palabra “body” más un número entero, ejemplo: body1, body3, body10…
Una característica al momento de crear los elementos de menú de un FID es que se simplifica la creación de submenúes, ampliando las propiedades de la marca %%item%%
.
Este ejemplo te muestra cómo construir menúes con submenúes.
%%menu%%
%%item(Multimedia)%%
%%subitem(Video1, body6)%%%%/subitem%%
%%subitem(Video2, body7)%%%%/subitem%%
%%subitem(Audio, body8)%%%%/subitem%%
%%/item%%
%%/menu%%
Los paneles muestran el contenido de cada pestaña. Estos se relacionan por medio de un parámetro que los identifica.
Las marcas %%panel%%
de los paneles deben estar contenidas bajo la siguiente estructura:
<div class="main-fid" id="fid">
%%macro(_titulo_principal.html)%%
<div class="content">
%%macro(_publicacion_directa.html)%%
<div class="panel-group">
%%panel(Cabecera, body1, noticia_cabecera.html)%%
</div>
</div>
</div>
La macros generales utilizan la marca %%panel%%
y por lo general tiene 3 parámetros:
- El primero contiene el nombre del panel, que se ve reflejado también en la interfaz del FID.
- El segundo es el “id” o identificador, que debe ser el mismo que tiene el botón al que está asociado ese panel.
- Y el tercero contiene el nombre de la macro que almacena el contenido del panel.
Ejemplo:
%%asocfile_1(Archivo asociado 1)%%
<div class="form-group mar-bot25">
<label class="monreg">Bajada</label>
<input type="text" value="%%tit_descarga%%" size="5" name="tit_descarga" class="form-control">
</div>
%%/asocfile_1%%
Las macros reservadas utilizan la marca %%panel%%
y estas pueden llegar a utilizar hasta 4 parámetros:
- El primero contiene el nombre del panel, que se ve reflejado también en la interfaz del FID.
- El segundo es el “id” o identificador, que debe ser el mismo que tiene el botón al que está asociado ese panel.
- Y el tercero contiene el nombre de la macro que almacena el contenido del panel.
- El cuarto parámetro corresponde a un dato que será requerido por la macro según su configuración. En algunas ocasiones puede ser un número entero o un texto.
Ejemplo:
<div class="main-fid" id="fid">
%%macro(_titulo_principal.html)
%%<div class="content">
%%macro(_publicacion_directa.html)%%
<div class="panel-group">
%%panel(Audio, body8, _audio.html, 1)%%
%%panel(Video 1, body6, _video_xcode.html, 1)%%
%%panel(Video 2, body7, _video_xcode.html, 2)%%
</div>
</div>
</div>
Este caso especial sirve para implementar la carga de galerías de imágenes en un FID. Puedes aprender más en el artículo Galería de imágenes.
<div class="main-fid" id="fid">
%%macro(_titulo_principal.html)%%
<div class="content">
%%macro(_publicacion_directa.html)%%
<div class="panel-group">
%%panel(Galería de Fotos, body5, _galeria_prontus.html, 1:fotofija_galeria@@_low:65x65|2:fotofija_galeria@@_high:800x600)%%
</div>
</div>
</div>
Los parámetros de esta macro, en orden, son:
- Nombre del panel
- Atributo ID del panel
- Macro a cargar
- Parámetros a pasar a la macro
Conceptos Básicos
¿Qué es Prontus?
Estructura de directorios
Glosario
Navegadores soportados
Tutoriales
Instalación de Prontus CMS
Implementar un nuevo sitio en Prontus
Cómo crear un FID
Cómo crear una plantilla de artículo
Cómo crear una plantilla de portada
Cómo crear plantillas de formulario
Cómo implementar un formulario
Cómo implementar un buscador
Cómo implementar un buscador Elasticsearch
Cómo crear una plantilla de taxonomía
Cómo crear plantillas de tags
Cómo crear una plantilla de listado
Cómo crear una plantilla de tags jerárquicos
Implementar carga de videos en Prontus
Integración de Redes Sociales
Instalación y Configuración
Requerimientos
Configuración del servidor
Base de datos
Asegurar la plataforma
Instalación con Wizard Prontus
Ajustes post-instalación
Archivos de configuración de Prontus
Friendly URLs
Friendly URLs para imágenes
SSI en Prontus
Logs de Eventos
Ejecutar procesos periódicamente con cron
Debugging
Plantillas
Plantillas de FID
Plantillas de artículo
Plantillas de portada
Plantillas de taxonomía
Plantillas de artículos relacionados
Plantillas de tags
Plantillas de listado
Plantillas de tags jerárquicos
Plantillas de mapa de taxonomía
Plantillas de mapa de tags
Marcas
Tipos de marcas
Diccionario de marcas
Marcas para texto
Marcas de lógica
Marcas de despliegue
Marca Menú y Panel
Parsing de marcas en formularios Prontus
Funcionalidades
Funcionalidades SEO en Prontus CMS
Multivistas
Galería de Imágenes
Buscador Multivista
Buscador
Buscador Elasticsearch
Calendarios
Imprimir artículos
Posting de contenidos
Plugins
Post-procesos
Prontus functions
Implementar copias de seguridad automáticas con Dropbox
Implementar múltiples ediciones
Regeneración masiva de artículos via línea de comandos