Arquitectura técnica de NewsLetter
Referencia de la distribución local 1.2.1 para administradores y desarrolladores. Describe responsabilidades del código, sin repetir la configuración operativa.
Carga y módulos
El archivo principal carga EmbeddedCore, ChannelLock, Runtime, Scheduler, Package, Updater y Admin. EmbeddedCore se ejecuta en plugins_loaded con prioridad 0; reusa una clase Newsletter ya cargada o inicia el núcleo incluido. Runtime carga los módulos al recibir newsletter_loaded y verifica conflictos con complementos originales.
Generación y programación
Scheduler reconcilia los canales en init y en naa_reconcile. Los eventos naa_automated y naa_automated_retry ejecutan operaciones por canal; naa_log_cleanup limita la conservación de registros. Cambiar timezone_string o gmt_offset marca el calendario para reconciliación. ChannelLock evita operaciones concurrentes sobre un canal y protege reservas vigentes.
Administración y validación
Admin registra las opciones en admin_init y el panel en admin_menu. Los ajustes incluyen naa_ai_consent, naa_wp_ai_consent, naa_late_policy, naa_late_hours, naa_log_retention_days y naa_update_public_key. Los controles administrativos verifican capacidad y nonce.
Datos y servicios externos
El núcleo administra contactos, listas y envío. Los módulos conservan claves de almacenamiento compatibles con sus componentes de origen. Fluent Forms aporta datos cuando su integración se usa; la IA Newsletter consulta api.thenewsletterplugin.com con autorización. Updater valida manifiesto, firma y paquete antes de ofrecer una actualización.
Theme y funciones del sitio
El theme presenta documentación, marca, demo y descarga publicada. newsletter-site-core es opcional para funciones del sitio y no es un requisito del motor de boletines. El contador mide respuestas completas del servidor, no instalaciones ni personas únicas.
