10 Apr 2024

WMotor v1.0

Timeline

Iré actualizando este listado con todo lo que voy implementando

Version 1.0 // Abril 2024

Incluir un archivo site.ini a nivel root para configurar el sitio: Titulo / Directorio sata / Tema / Estructura del Menú.
Cargar y analizar un directorio local /data/ donde se alojan todas las entradas.
Cada directorio dentro de /data/ corresponde a una entrada y dentro de ese directorio se alojan todos los recursos que se usen en la entrada: imágenes y videos y recursos para descargar.
Cada directorio tiene que tener un archivo index.md y opcionalmente un archivo description.md, en estos archivos va el contenido del post y la descripción breve para la pagina Home.
Dentro de cada directorio se puede incluir un archivo opcional metadata.ini desde donde se podrán personalizar algunos aspectos del post como son el titulo del post, incluir tags, indicar si el post es visible o se encuentra en estado beta.
Generar una estructura de menú para poder acceder a los últimos posts, y poder navegar el historial de posts organizados por años o por tags.
Añadir al menú elementos estáticos que se definen en el archivo site.ini para tener botones directos del estilo twitter/mail me

Themes

Soporte de Temas: Aunque de momento solo hay un tema basado en bootstrap, pero el contenido y el layout se genera dentro del tema por lo que será posible implementar varios temas.

Plugins

Se incluyen de serie 3 plugins necesarios para generar el contenido blocks markdown y enlighter
Blocks: Este plugin nos permite crear bloques propios HTML directamente en el archivo y se traducen a bloques HTML para generar <Links / Iconos / Images / Videos / Downloads>
Blocks: Image y Video son responsives y generan bloques con distinta resolución según la vista
Blocks: Image y Video se integran con getID3 para mostrar en pantalla información detallada del recurso resolución de los videos, framerate, codec ...
Blocks: Download incluye información del tamaño del archivo y un contador de descargas.
Markdown: el sistema se integra con markdown-it-php para generar el contenido HTML de cada pagina
enlighter: el sistema se integra con EnlighterJS para formatear el tag code que genera markdown.

Tareas pendientes

Implementar Cache
Implementar pagina home de pages por año y todo el historial
Implementar pagina home por tags
Implementar entradas con varias paginas
Implementar TOC

Version 1.1 // Mayo 2024

Añadido modo de administración, se activará mediante la URL /admin/ que nos pedirá una contraseña para acceder, una vez que se accede a esta opción y nos logeamos correctamente se establece una cookie con el hash del password para permanecer logeado.
En modo ADMIN se renderizan todas las entradas, incluso las marcadas en estado BETA o con una fecha de publicación.
En modo ADMIN aparecerá una entrada nueva en el menú con distintas tareas de administración, estas opciones podrán contener scripts de sistema operativo para realizar algunas tareas

Admin

Opción Borrar Cache esta tarea permitirá borrar todo el contenido de la carpeta /cache/
Opción SVN Update /data/ esta tarea ejecuta un "SVN Update" en la carpeta /data/ actualizando todo el contenido desde el respositorio configurado. con esto nos ahorramos tener que recurrir al ftp cada vez que necesitamos actualizar el contenido de la web.
Opción SVN Update /Engine/ esta tarea ejecuta un "SVN Update" en las carpetas de sistema de la web, es decir todo el motor PHP incluidos /Plugins/ /Themas y reglas .htaccess