Código personalizado integrado en KathWare
KathWare funciona sobre WordPress, pero una parte importante de sus herramientas, comportamientos y funciones no proviene del tema ni de plugins externos. A lo largo del tiempo fui desarrollando código propio para resolver necesidades concretas de accesibilidad, navegación, lectura, descubrimiento de contenido, difusión y administración editorial.
La mayor parte de este código está integrado mediante WPCode Lite, lo que permite ampliar el sitio sin modificar directamente el tema de WordPress. Algunas herramientas son completamente específicas de KathWare, otras pueden adaptarse a otros sitios y algunas ya comenzaron a convertirse en herramientas públicas que pueden utilizarse directamente desde la web.
Este conjunto de desarrollos forma parte de KathWare Content Manager, un sistema de herramientas creado a medida sobre WordPress para ampliar sus capacidades sin depender exclusivamente de las funcionalidades proporcionadas por el tema o por plugins de terceros.
Accesibilidad, lectura y navegación
Una parte importante del código personalizado de KathWare está dedicada a mejorar la forma en que las personas pueden acceder, recorrer, leer y adaptar el contenido del sitio.
Controles globales de accesibilidad y búsqueda
Un bloque global de accesibilidad aparece en las páginas y entradas del sitio, ubicado después de la navegación principal y antes del contenido. Permite aumentar o reducir el tamaño del texto, activar alto contraste, restablecer las preferencias y acceder al buscador del sitio.
Las preferencias de visualización se conservan localmente en el navegador y la búsqueda utiliza WordPress junto con Relevanssi para ofrecer resultados más relevantes.
Podés verlo funcionando en prácticamente cualquier página de KathWare.
Herramientas del artículo
Las entradas de KathWare incorporan automáticamente un conjunto de herramientas antes del contenido. El sistema calcula el tiempo aproximado de lectura, permite generar una versión del artículo en PDF y ofrece un reproductor accesible basado en síntesis de voz del navegador.
El reproductor permite seleccionar una de las voces disponibles, modificar la velocidad de lectura, reproducir, pausar, detener y desplazarse entre fragmentos del artículo. El contenido se divide en bloques legibles sin incluir zonas de navegación, elementos sociales, anuncios ni contenido relacionado.
El sistema está diseñado para que el lector de pantalla informe únicamente los cambios relevantes del reproductor sin competir constantemente con la voz que está leyendo el artículo.
Exportación accesible de artículos a PDF
El mismo módulo permite descargar una versión PDF del artículo directamente desde el navegador. El archivo conserva títulos, párrafos, listas, enlaces, bloques de código y descripciones alternativas de imágenes cuando están disponibles.
También incluye información de autoría, enlaces de KathWare y un código QR que permite regresar al sitio.
La generación se realiza directamente en el navegador utilizando JavaScript, PDFKit y otras bibliotecas auxiliares.
Tabla de contenidos automática
Las páginas y entradas que contienen encabezados con identificadores propios pueden generar automáticamente una tabla de contenidos navegable mediante enlaces internos.
Esto permite recorrer documentos extensos por secciones y mejora tanto la navegación con teclado como el uso con lectores de pantalla.
La misma lógica puede aprovechar los identificadores utilizados por otras herramientas y contenidos propios de KathWare, incluido el Editor Markdown.
Mejoras semánticas sobre el contenido generado por WordPress
Algunos fragmentos de código reorganizan elementos generados por WordPress o por el tema para mejorar su estructura semántica y la experiencia con tecnologías de asistencia.
Entre otras tareas, el código puede corregir la posición de categorías, encabezados, elementos de navegación, textos alternativos y otros componentes que originalmente no aparecen en el orden más conveniente.
Estas modificaciones se realizan sobre el resultado final de la página sin editar directamente los archivos del tema.
Accesibilidad multimedia
KathWare también funciona como espacio de desarrollo y prueba de herramientas destinadas a mejorar el acceso a contenidos audiovisuales desde la web.
Accessibility Player
Accessibility Player es un reproductor multimedia desarrollado para KathWare con controles propios y una interfaz pensada desde el comienzo para la navegación mediante teclado y tecnologías de asistencia.
Permite controlar la reproducción, la posición temporal, el volumen y otras funciones del contenido multimedia sin depender exclusivamente de los controles proporcionados por el reproductor original.
Además, integra tecnología de KathWare SubtitleReader para permitir la lectura de subtítulos mediante lector de pantalla o síntesis de voz, combinando en un mismo componente la reproducción multimedia y las herramientas de accesibilidad para subtítulos.
KathWare SubtitleReader integrado en el sitio
Parte de la tecnología desarrollada para KathWare SubtitleReader también puede probarse directamente dentro del sitio.
SubtitleReader investiga distintas formas de detectar, recuperar y presentar subtítulos de contenidos audiovisuales para que puedan ser enviados a un lector de pantalla o reproducidos mediante síntesis de voz.
Contenido dinámico y descubrimiento
Otros módulos reutilizan automáticamente el contenido publicado en KathWare para facilitar su descubrimiento y mantener diferentes zonas del sitio actualizadas sin tener que modificar manualmente cada bloque.
Contenido dinámico de la página de inicio
La página principal incorpora un bloque propio que reúne distintas formas de descubrir contenido de KathWare.
Actualmente incluye la última entrada publicada, una entrada seleccionada aleatoriamente y una App del día obtenida del catálogo de aplicaciones.
La entrada aleatoria puede utilizar el extracto manual de la publicación o recuperar automáticamente parte de su contenido cuando no existe uno. La App del día reutiliza las fichas disponibles en el catálogo, evitando mantener una segunda fuente de información exclusivamente para la portada.
De esta forma, una única sección de la página de inicio puede presentar contenido reciente, recuperar publicaciones anteriores y destacar herramientas disponibles en KathWare.
KathWare Dice
KathWare Dice recupera la idea de una antigua skill de Alexa de KathWare y la integra actualmente dentro del sitio web.
El sistema selecciona una frase aleatoria de la colección de Pastillas Inspiradoras y la presenta antes del encabezado principal de páginas y entradas.
Las frases se obtienen desde el repositorio del proyecto y se almacenan temporalmente en el navegador. El sistema utiliza caché y control de versión para evitar descargar innecesariamente los mismos datos en cada visita.
De esta forma, una idea que originalmente funcionaba mediante Alexa pasó a convertirse en una pequeña funcionalidad dinámica integrada directamente en KathWare.
Contenido relacionado, difusión y etiquetas
Al finalizar una entrada se agrega automáticamente un bloque de herramientas que ayuda a continuar navegando y compartir el contenido.
La sección Seguí leyendo busca hasta cuatro entradas relacionadas utilizando principalmente las etiquetas compartidas entre publicaciones y recurriendo a las categorías cuando no encuentra suficientes coincidencias.
La sección Difundir permite utilizar las funciones nativas para compartir disponibles en el dispositivo, copiar el enlace o compartir el artículo mediante servicios como WhatsApp, Telegram, Facebook, X, Reddit y LinkedIn.
Las etiquetas de la entrada también se presentan en esta zona para facilitar la exploración de contenidos relacionados dentro de KathWare.
Promoción e identidad del sitio
Parte del código personalizado permite administrar elementos promocionales y reemplazar componentes proporcionados originalmente por el tema por versiones propias de KathWare.
Sistema de anuncios, recomendaciones y servicios
KathWare utiliza un sistema propio para insertar automáticamente promociones dentro del sitio.
En lugar de mantener cada elemento promocional directamente dentro del código, el sistema utiliza como fuente los contenidos disponibles en las secciones correspondientes de KathWare, selecciona una propuesta y la presenta en páginas o entradas.
Actualmente puede utilizar tanto anuncios y recomendaciones como servicios y otras formas de apoyar KathWare, conservando el enlace hacia la sección de origen de cada elemento.
Esto permite agregar, modificar o retirar propuestas desde su fuente correspondiente sin tener que editar individualmente las páginas y entradas donde pueden aparecer.
Footer personalizado de KathWare
El sitio utiliza un bloque propio al final de sus páginas para presentar la información institucional y legal de KathWare sin depender exclusivamente del footer proporcionado por el tema.
Este bloque incluye nuestro propio mensaje de copyright y accesos a las normas y licencias aplicables al contenido, la Licencia de Accesibilidad Universal y la política de privacidad.
Al igual que otras modificaciones estructurales del sitio, esta implementación permite personalizar el resultado final de WordPress sin modificar directamente los archivos del tema Femina.
Herramientas editoriales y de creación
El código personalizado también amplía las posibilidades de creación y administración de contenidos dentro de WordPress. Algunas de estas herramientas ya trascendieron el entorno administrativo y pueden utilizarse públicamente.
Editor Markdown de KathWare
Editor Markdown de KathWare nació como una herramienta interna para escribir entradas en Markdown dentro de WordPress. Actualmente también existe como una herramienta pública que puede utilizarse directamente desde KathWare, sin necesidad de registrarse ni iniciar sesión.
El editor público permite escribir o pegar contenido en Markdown y obtener inmediatamente una vista previa convertida a HTML. Reconoce elementos habituales como encabezados, párrafos, enlaces, listas, citas, separadores, código en línea y bloques de código.
Además de utilizar la vista previa, permite copiar el Markdown original, copiar el HTML generado, descargar el contenido como archivo .md y exportarlo a PDF.
La herramienta incluye también una guía rápida de Markdown integrada, de manera que puede utilizarse tanto para escribir como para aprender o consultar su sintaxis.
El procesamiento principal se realiza directamente en el navegador y el contenido introducido en el editor público no se guarda como entrada, página o borrador de WordPress. La persona que lo utiliza conserva la autoría y los derechos sobre el contenido que introduce.
Como el resto de los desarrollos de KathWare, el editor continúa evolucionando. Puede tener errores, limitaciones o comportamientos que todavía necesiten mejoras, pero ya está disponible públicamente para usarlo y probarlo.
Editor Markdown integrado con WordPress
KathWare mantiene además la versión editorial integrada con WordPress que dio origen a esta herramienta.
Este entorno permite escribir entradas en Markdown, convertirlas a HTML, obtener una vista previa y crear o modificar borradores de WordPress conservando el Markdown original utilizado.
La versión interna permite trabajar con el contenido editorial de KathWare sin depender del editor de bloques para estas publicaciones y sirve también como espacio de desarrollo para futuras funciones de edición y colaboración.
De esta forma, actualmente existen dos usos relacionados pero diferentes: una herramienta pública para cualquier persona que quiera trabajar con Markdown y un entorno editorial integrado específicamente con WordPress para administrar contenidos de KathWare.
KathWare Content Manager
Todos estos desarrollos forman parte de una misma idea: KathWare Content Manager.
No es un CMS de propósito general ni pretende reemplazar WordPress. Es una colección de módulos desarrollados específicamente para las necesidades de KathWare sobre WordPress.
Actualmente incluye funciones relacionadas con accesibilidad, búsqueda, lectura, exportación, accesibilidad multimedia, navegación, contenido dinámico, descubrimiento, recomendaciones, difusión, promoción y automatización editorial.
Algunas de las soluciones desarrolladas dentro de este sistema pueden permanecer estrechamente vinculadas a KathWare, mientras que otras pueden evolucionar hasta convertirse en herramientas públicas, proyectos independientes o componentes reutilizables. El Editor Markdown es actualmente un ejemplo concreto de esa evolución.
Desarrollo, accesibilidad y código público
Además de resolver necesidades concretas del sitio, estos desarrollos funcionan como ejemplos de una forma de trabajar en la que la accesibilidad forma parte de la arquitectura y no de una revisión posterior.
Desarrollo con perspectiva de accesibilidad
La accesibilidad no se incorpora al final del desarrollo como una corrección adicional. Forma parte de las decisiones de diseño desde el comienzo.
Los componentes se prueban teniendo en cuenta navegación mediante teclado, lectores de pantalla, estructura semántica, estados dinámicos, atributos ARIA, foco, contraste, escalado de texto y diferentes formas de interacción.
No todo el código de KathWare puede reutilizarse directamente en otro WordPress, porque muchas funciones responden a necesidades específicas del sitio. Sin embargo, buena parte de estas soluciones demuestra cómo pueden construirse funcionalidades personalizadas sin abandonar la accesibilidad.
Estas implementaciones también funcionan como ejemplos concretos de los servicios de desarrollo y accesibilidad digital que ofrece KathWare: algunas pueden adaptarse a otros sitios y otras sirven como punto de partida para desarrollar soluciones específicas.
Código público y futuros proyectos
Algunos proyectos de KathWare ya cuentan con repositorios públicos, otros todavía forman parte del código interno del sitio y algunas herramientas pueden utilizarse públicamente aunque su desarrollo continúe.
La idea es documentar progresivamente aquellas herramientas que puedan resultar útiles para otras personas, publicar componentes reutilizables cuando tenga sentido y mostrar casos reales de desarrollo aplicado a un sitio en producción.
- Usar el Editor Markdown de KathWare
- Ver mis desarrollos en GitHub
- Conocer KathWare SubtitleReader
- Explorar el catálogo de apps y herramientas
- Conocer los servicios de accesibilidad digital de KathWare
