Marcas Externas

Descripción del implementación y uso de esta funcionalidad

Las marcas externas son una manera de procesar contenido externo en Prontus. La idea de esta funcionalidad es que un sistema externo pueda proveer datos a embeber en los artículos de una instancia de Prontus. Estos datos vuelven a leerse cuando se guarda una portada, cuando se guarda un artículo, y durante la regeneración de portadas y artículos.

Implementación

Si existe la estructura de directorios /<nombre_prontus>/xdata/sistema/Prontus hará un procesamiento extra al editar artículos, e intentará encontrar dentro de esa estructura los directorios correspondientes a los artículos guardados o regenerados/<nombre_prontus>/xdata/sistema/<fechac>/<timestamp>/
/<nombre_prontus>/xdata/sistema/
y dentro de ellos, archivos con extensión ".txt" correspondientes a las marcas usadas. Con esto, Prontus intentará reemplazar, allí donde se usen, las marcas externas por los contenidos de los archivos, y mapeando los timestamps de los artículos de Prontus a los directorios de marcas externas.

Por ejemplo, si dentro de un artículo uso una marca "%%marca_externa%%", y existe un artículo llamado "marca_externa.txt" dentro de las siguientes estructuras de directorio

/<nombre_prontus>/xdata/sistema/<fechac>/<timestamp>/marca_externa.txt
/<nombre_prontus>/xdata/sistema/marca_externa.txt

al evaluar la marca se reemplazará con el contenido del artículo, notando que la marca específica a un timestamp tiene preferencia sobre la marca común, por lo que si ambos archivos existen, se usará el que está dentro de

sistema/<fechac>/<timestamp>/marca_externa.txt

En particular, si el archivo de marca externa se encuentra en

/<nombre_prontus>/xdata/sistema/<marca_externa>.txt

se procesará para todos los artículos que la contengan, siendo un contenido común a todos.

Casos de uso

Hemos implementado soluciones que usan marcas externas para distintos usos. Un propósito simple fue mostrar en portadas el conteo de comentarios hechos a los artículos que esas portadas contienen.

Un proyecto un poco más complejo contiene un postproceso que genera thumbnails para videos y guarda también las rutas a las thumbnails creadas con marcas externas.

Consideraciones
  • Las marcas externas se evalúan sin procesamiento. Esto implica por un lado que el contenido debe estar listo para embeberse en los artículos donde se use, pero además que la eventual implementación debe considerar las implicaciones de seguridad por embeber contenido de terceros.
  • Las marcas externas se evalúan con preferencia sobre las marcas normales. Si tengo en un fid una marca externa con el mismo nombre que una marca prontus, se usará el contenido del archivo externo.
  • Las marcas externas no usan necesariamente un prefijo estándar (e.g. "me_"), aunque puede usarse si ayuda a la organización del sitio.
  • Las marcas externas no deben tener como prefijo "_".