Masify

Manual de integración de templates

Integración

Secciones (Listado de Artículos / Notas)


El tipo de contenido listArticles, corresponde al listado de notas / artículos (de aquí en más se utilizará el nombre 'artículo') de una sección determinada del portal.
Los artículos también pueden ser filtrados por tags.
Para ello existe el tipo de contenido Tag, que funciona de forma similar a listArticles.

Los datos XML de ambos listados se ofrecen paginados.
Las Secciones permiten relacionar contenidos de tipo Article, para crear zonas de artículos destacados.

Los archivos listarticles.xsl y tag.xsl


Los listados de artículos se representan a través de un archivo llamado listarticles.xsl , o de un archivo llamado tag.xsl (si se los están filtrando por tag), ubicados en la carpeta xsl del directorio correspondiente al template en desarrollo.

Para descargar los archivos xslt de ejemplo para estos tipos de contenido haga click aquí.

Descargar archivo listarticles.xsl

Descargar archivo tag.xsl

Si la descarga provoca un error, haga click con el botón derecho y seleccione la opción "guardar enlace como...".

Datos de la Sección o del Tag buscado


Datos de la Sección


En caso de acceder a un contenido del tipo listArticles, se puede obtener el nombre de la sección, y su ID de ser necesario, desde el nodo xml/SelectedSection.
Este nodo posee los siguientes elementos:

@Id: Valor numérico, es el id de la sección en Base de Datos.
@Url: Url completa de la sección.
Name: Nombre de la sección.
Portal: Nodo con información del portal al que pertenece la sección. Este dato es útil cuando se implementan desarrollos CrossMedia, en el que varios optales comparten sus contenidos.
Este nodo posee los siguientes elementos:
@Id: Valor numérico, es el id del portal en Base de Datos.
@Url: URL del portal al que pertenece la sección.
@UrlType: Tipo de URL principal del portal (1 para URLs genéricas, 2 para URLs móviles).
@Tenant_Logo_Code: Código de imágen del logo del portal al que pertenece la sección.
Name: Nombre del portal en el sistema Masify. En caso de no utilizar un dominio propio, este nombre es igual al subdominio del portal.
UrlName: No se utiliza.
Layout: Nodo con información acerca del diseño que utiliza la sección.
Este nodo posee los siguientes elementos:
@Id: Valor numérico, es el id del layout en Base de Datos.
@Name: Nombre del layout, definido en el esquema XML del template.
Description: Descripción del layout, definida en el esquema XML del template.


Ejemplo de integración de los datos básicos de la sección

Datos XML (fragmento)
Implementación XSLT (en listarticles.xsl / tag.xsl)

Listar Artículos (Notas)


Todos los artículos de un listado, ya sea de una Sección o de una búsqueda por Tag, tienen el mismo formato y presentación.
Se encuentran dentro de un nodo Results ubicado dentro de un nodo Page, que contiene los datos de paginado del listado.

Cada artículo (Article) está encerrado en un nodo Section con información de la sección a la cual pertenece.
Esto sucede porque las secciones permiten listar los artículos que estén creados en sus subsecciones (secciones dependientes de la sección actual), y en ese caso, la sección del artículo será diferente a la sección que se está representando.

Los artículos de un listado poseen los siguientes elementos (*):

Section: Nodo de base de cada artículo, posee los siguientes elementos:
@Id: Valor numérico, es el id de la Sección en Base de Datos.
@Url: URL completa de la sección.
Name: Nombre de la Sección.
Layout: Diseño (layout) utilizado en la sección a la que pertenece el artículo. Posee los siguientes elementos:
@Id: Valor numérico, es el id del layout en Base de Datos.
@Name: Nombre del layout, definido en el esquema XML del template.
Description: Descripción del layout, definida en el esquema XML del template.
Article: Datos del artículo. Posee los siguientes elementos:
@Id: Valor numérico, es el id del Artículo en Base de Datos.
@Url: URL de acceso al artículo.
DateUpdate: Fecha de última actualización del artículo, en formato DD/MM/YYYY HH:MM:SS.
Title: Título del artículo.
Lead: Resumen del artículo, en formato HTML.
Author: Nodo con información del autor de la nota. Posee los siguientes elementos:
@Id: Valor numérico, es el id del autor en Base de Datos.
Name: Nombre del autor del artículo.
Image: Serie de nodos que reperesentan las imágenes asociadas al artículo. Puede haber más de uno, y puede no haber ninguno.
Cada nodo Image Posee los siguientes elementos:
@Id: Valor numérico, es el id de la imagen en Base de Datos.
Epigraphy: Comentario asociado a la imagen para este artículo.
FileImage: Nodo con información del archivo. Posee los siguientes elementos: @Code: Código de la imagen. (ver cómo instanciar imágenes a partir de su código)
@UploadDate: Fecha de subida de la imagen al servidor.
@TakenDate: Fecha de captura de la imagen (si es agregado el dato al ser cargada la imagen).
@Credit: Crédito (autor / propietario) de la imagen (si es agregado el dato al ser cargada la imagen).
Tags: Listado de los tags asociados al artículo. Cada tag está representado por un nodo Tag que posee los siguientes elementos:
@Id: Valor numérico, es el id del tag en Base de Datos.
@Url: URL de acceso al listado de artículos filtrados por éste tag.
Description: Nombre del tag.
Layout: Diseño (layout) utilizado en el artículo. Posee los siguientes elementos:
@Id: Valor numérico, es el id del layout en Base de Datos.
@Name: Nombre del layout, definido en el esquema XML del template.
Description: Descripción del layout, definida en el esquema XML del template.


(*) existen otros datos ya discontunuados que no es deben tenerse en cuenta y por lo tanto no se incluyen en esta documentación.

Ejemplo de integración de listado de artículos


Datos XML (fragmento)
Implementación XSLT (en category.xsl)

Paginado


La información acerca de las páginas que posee un listado se encuentra dentro del nodo xml/Pages.
Cada página disponible está representada por un nodo Page con el número de página.

También existe un nodo xml/Page dentro del cual está contenida toda la información del listado, y que provee una información resumida acerca del paginado.
De dicho nodo es últil al atributo PageNumber que indica el número de la página actual
También los nodos HasPreviousPage y HasNextPage, que indican si la página actual posee páginas previas o posteriores.

El nodo Page contiene los siguientes elementos:

@PageNumber: página actual del listado. Inicialmente el valor es 1.
@PageSize: Cantidad de registros por página, definidos en el esquema XML del template.
@TotalSize: Total de productos (Ítems) en el listado, sin tener en cuenta el paginado.
@PageCount: Cantidad de páginas del listado, valor obtenido de dividir el valor de TotalSize (total de productor) sobre el valor de PageSize (productos por página).
@HasPreviousPage: Si la página actual posee una página previa, es decir si los resultados no son los primeros del listado, este valor será True. De lo contrario, es False.
@HasNextPage: Si la página actual posee una página posterior, es decir si los resultados continúan, este valor será True. De lo contrario, es False.


Ejemplo de integración de paginado en una sección


Datos XML (fragmento)
Implementación XSLT (en listarticles.xsl / tag.xsl)

Banners


Los banners cargados desde el panel de control pueden ser asociados al tipo de contenido listArticles.
La integración de banners se realiza de forma similar en todos los tipos de contenidos.
Para acceder a la sección correspondiente, haga click aquí:

INTEGRAR BANNERS


Contenidos Relacionados


El tipo de contenido listArticles admite contenidos relacionados del tipo: Article.
Es decir, es posible incluir notas destacadas/relacionadas en las secciones (pertenecientes a la misma sección y a otras).
La cantidad de sectores de contenidos relacionados es ilimitada.
Pueden definirse varios sectores de artículos relacionados (articleForSections), si el diseño así lo requiere.

Para ver cómo definir los sectores de contenidos relacionados haga click aquí.

La integración de contenidos relacionados se realiza de forma similar en todos los tipos de contenidos que lo admiten.
Para acceder a la sección correspondiente, haga click aquí:

INTEGRAR CONTENIDOS RELACIONADOS