FrankZamora
e01605ec37
feat(critical-css): implementar TIPO 4 y TIPO 5 - CSS Below-the-fold y Lazy Loading
## TIPO 4: CSS Below-the-fold (Critical Variables + Responsive)
- Inyecta variables CSS críticas inline en wp_head P:-1
- Inyecta media queries críticas inline en wp_head P:2 (corregido de P:1)
- Auto-regeneración cuando archivos fuente cambian (filemtime check)
- Cache en Assets/CriticalCSS/ para evitar lecturas repetidas
- Comando WP-CLI: wp roi-theme generate-critical-css
Archivos TIPO 4:
- Public/CriticalCSS/Domain/Contracts/ - Interfaces (DIP)
- Public/CriticalCSS/Application/UseCases/GetCriticalCSSUseCase.php
- Public/CriticalCSS/Infrastructure/Cache/CriticalCSSFileCache.php
- Public/CriticalCSS/Infrastructure/Services/CriticalCSSExtractor.php
- Public/CriticalCSS/Infrastructure/Services/CriticalCSSInjector.php
- bin/generate-critical-css.php
## TIPO 5: CSS No Crítico (Lazy Loading)
- Animaciones CSS: carga 2s después de page load via requestIdleCallback
- Print CSS: carga solo al imprimir via beforeprint event
- Fallback <noscript> para usuarios sin JavaScript
- Safari fallback: setTimeout cuando requestIdleCallback no disponible
Archivos TIPO 5:
- Assets/Js/lazy-css-loader.js
- Public/LazyCSSLoader/Infrastructure/Contracts/LazyCSSRegistrarInterface.php
- Public/LazyCSSLoader/Infrastructure/Services/LazyCSSRegistrar.php
## Fix: Colisión de prioridades wp_head
Antes: TIPO 1 (P:1), TIPO 4 responsive (P:1), TIPO 3 (P:2) - CONFLICTO
Después: TIPO 1 (P:1), TIPO 4 responsive (P:2), TIPO 3 (P:3) - OK
Nuevo orden de prioridades:
P:-1 roi-critical-variables (TIPO 4)
P:0 roi-critical-bootstrap (TIPO 2)
P:1 roi-critical-css (TIPO 1)
P:2 roi-critical-responsive (TIPO 4)
P:3 roi-custom-critical-css (TIPO 3)
P:5 roi-theme-layout-css (ThemeSettings)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:06:12 -06:00
..
2025-11-27 20:07:09 -06:00
2025-11-29 13:23:20 -06:00
2025-12-01 11:12:34 -06:00
2025-11-26 22:55:31 -06:00
2025-11-26 22:55:31 -06:00
2025-12-01 23:06:12 -06:00
2025-11-26 22:55:31 -06:00
2025-11-26 22:55:31 -06:00
2025-11-26 23:46:38 -06:00
2025-12-01 12:06:28 -06:00
2025-12-01 12:06:28 -06:00
2025-11-26 22:55:31 -06:00
2025-11-26 22:55:31 -06:00
2025-11-26 22:55:31 -06:00
2025-11-26 22:55:31 -06:00
2025-11-26 22:55:31 -06:00
2025-11-26 22:55:31 -06:00