WP Manifestindependent plugin directory
manifest / performance / turboassets-core

TurboAssets Core

Plugin de WordPress para optimización de activos (WPO) que acelera la carga de CSS y JavaScript sin alterar el comportamiento del sitio ni las dependencias entre scripts.

by Loreana Mavares · github.com/webcoredev/turboassets-core

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/webcoredev/turboassets-core/archive/refs/heads/main.zip

Plugin de WordPress para optimización de activos (WPO) que acelera la carga de CSS y JavaScript sin alterar el comportamiento del sitio ni las dependencias entre scripts.

Autor: Loreana Mavares
Versión: 1.0.0
Requisitos: WordPress 5.6+, PHP 7.4+


Características principales

  • CSS: mover estilos al footer (opcional), preload de los primeros estilos críticos y minificación con PHP (regex: espacios y comentarios), sirviendo desde caché.
  • JS: añadir defer o async a los scripts y opción para moverlos al footer; jQuery y dependencias excluidos por defecto para no romper plugins ni temas.
  • Caché: los CSS minificados se guardan en wp-content/uploads/turboassets-cache/; botón en el panel para limpiar la caché cuando cambies temas o estilos.
  • Interfaz: página de ajustes con estilo "Future Pop Dark" e interruptores (toggles) por función.

Instalación

  1. Copia la carpeta del plugin en wp-content/plugins/ (por ejemplo turboassets-core).
  2. Activa TurboAssets Core en Plugins.
  3. Configura las opciones en Ajustes → TurboAssets Core y guarda. Usa Limpiar Caché después de cambiar de tema o de estilos para regenerar los minificados.

Por qué este enfoque es más seguro que plugins de caché agresivos

Muchos plugins de caché de página o de “optimización total” hacen cosas como:

  • Combinar y minificar todo el CSS/JS en uno o pocos archivos, alterando el orden de carga y las dependencias. Eso puede romper temas y plugins que asumen un orden concreto o que inyectan estilos/scripts de forma condicional.
  • Retrasar o diferir la ejecución de todo el JavaScript sin distinguir qué scripts deben cargarse primero (por ejemplo jQuery), lo que provoca errores del tipo “jQuery is not defined” y fallos en sliders, formularios o scripts inline.
  • Modificar el HTML de la página (eliminar atributos, mover bloques) de forma automática, lo que a veces invalida diseños o comportamientos que dependen de ese HTML.

TurboAssets Core evita esos riesgos de forma deliberada:

  1. No combina archivos. Cada recurso sigue siendo un archivo independiente; solo se minifica el CSS y se sirve desde caché. El orden de encolado de WordPress se respeta.
  2. Exclusión explícita de jQuery. Por defecto no se aplica defer/async ni movimiento al footer a jquery-core, jquery-migrate y jquery, de modo que todo lo que depende de jQuery sigue funcionando. Puedes ampliar la lista de handles excluidos en la misma pantalla de ajustes.
  3. Opciones desactivadas por defecto. Cada optimización (mover CSS al footer, preload, minificación, mover JS al footer, atributo defer/async) es un interruptor que puedes activar de forma gradual y comprobar que el sitio no se rompe.
  4. Uso de APIs nativas de WordPress. Se usan wp_enqueue_scripts, style_loader_tag, script_loader_tag y la cola de estilos/scripts tal como WordPress la gestiona, sin reescribir el HTML de la página ni tocar el DOM de forma agresiva.
  5. Caché solo de activos minificados. La caché es únicamente para el contenido CSS minificado; no se cachea la página completa ni se modifica el flujo de renderizado. Un “Limpiar Caché” devuelve el estado de los activos al original sin afectar al resto del sitio.

Así se consigue mejorar tiempos de carga y métricas de rendimiento sin el coste típico de los plugins de caché agresivos: menos roturas, menos conflictos y un control claro sobre qué se optimiza y qué se deja intacto.


Estructura del proyecto

turboassets-core/
├── turboassets-core.php    # Entrada, constantes y activación
├── core/                   # Lógica de optimización
│   ├── class-plugin.php         # Orquestador
│   ├── class-asset-cache.php    # Caché de CSS minificado y servicio
│   ├── class-css-optimizer.php  # Footer, preload, minificación (regex)
│   └── class-js-optimizer.php   # defer/async, footer, exclusiones
├── admin/
│   ├── class-admin.php          # Página de ajustes y limpieza de caché
│   └── class-settings.php       # Registro y sanitización de opciones
├── assets/
│   └── css/admin.css            # Estilos Future Pop Dark
└── README.md

Licencia

GPL v2 o posterior.