Resuelve issue #21 (parte 3) - Agotamiento de memoria (14GB)
PROBLEMA:
- PHP Fatal error: Allowed memory size of 14680064000 bytes exhausted
- El tema intentaba usar 14 GB de memoria antes de fallar
- Timeout de 15+ segundos antes del crash
- Error en wp-includes/option.php línea 615
CAUSA RAÍZ:
La combinación de apus_add_dns_prefetch() y apus_remove_dns_prefetch()
creaba un loop infinito:
1. apus_add_dns_prefetch() agrega hints en wp_head con prioridad 0
2. apus_remove_dns_prefetch() filtra wp_resource_hints
3. Esto causa que WordPress recalcule hints infinitamente
4. Cada recalculo consume memoria hasta agotar 14GB
SOLUCIÓN:
Deshabilitar temporalmente apus_add_dns_prefetch() comentando el
add_action en línea 448. Los DNS prefetch no son críticos y se pueden
agregar de forma más segura después.
ARCHIVOS MODIFICADOS:
- inc/performance.php (línea 447-448)
VERIFICACIÓN:
✅ Sitio funciona con HTTP 200
✅ Sin agotamiento de memoria
✅ Sin timeouts
✅ Performance.php funcional
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Resuelve issue #21 (parte 2) - HTTP 500 / Timeout
PROBLEMA:
- La función apus_remove_dns_prefetch() causaba un loop infinito
- Usaba wp_dependencies_unique_hosts() de manera incorrecta
- Causaba timeout de 36 segundos y HTTP 500 en staging
- El tema no podía activarse sin causar error
CAUSA RAÍZ:
La función llamaba a wp_dependencies_unique_hosts() dentro del filtro
'wp_resource_hints', lo cual podía disparar más dependencias que volvían
a llamar el mismo filtro, creando un loop infinito.
Código problemático (línea 309):
return array_diff( wp_dependencies_unique_hosts(), $hints );
SOLUCIÓN:
Reescribir la función para filtrar hints directamente sin llamar a
wp_dependencies_unique_hosts(), usando un loop simple para eliminar
solo las referencias a s.w.org.
ARCHIVOS MODIFICADOS:
- inc/performance.php (líneas 307-321)
VERIFICACIÓN EN STAGING:
✅ Sitio funciona con tema APUS activado
✅ No hay timeouts
✅ HTTP 200 en lugar de HTTP 500
✅ Performance.php funciona correctamente
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Se implementa tema WordPress personalizado para Análisis de Precios Unitarios con funcionalidades avanzadas:
- Sistema de templates (front-page, single, archive, page, 404, search)
- Integración de Bootstrap 5.3.8 con estructura modular de assets
- Panel de opciones del tema con Customizer API
- Optimizaciones de rendimiento (Critical CSS, Image Optimization, Performance)
- Funcionalidades SEO y compatibilidad con Rank Math
- Sistema de posts relacionados y tabla de contenidos
- Badge de categorías y manejo de AdSense diferido
- Tipografías Google Fonts configurables
- Documentación completa del tema y guías de uso
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Documentación técnica completa de tareas realizadas
- Verificaciones detalladas de cada requisito
- Estructura de archivos creados
- Beneficios implementados
- Matriz de compatibilidad
- Próximos pasos recomendados
- Testing checklist
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
- Verificado: add_theme_support('title-tag') está activo en functions.php (línea 30)
- Verificado: header.php está limpio sin meta tags duplicados (solo charset, viewport, X-UA-Compatible)
- Creado: inc/seo.php con optimizaciones SEO no conflictivas con Rank Math
- Función apus_remove_generator() para eliminar versión de WordPress
- Eliminación de headers innecesarios (RSD, WLW Manifest, REST API link)
- Prefetch hints para Google Fonts
- Fallback schema.org que se desactiva si Rank Math está activo
- Security headers (X-Content-Type-Options, X-Frame-Options, X-XSS-Protection)
- Optimización de robots.txt cache headers
- Actualizado: functions.php para incluir inc/seo.php en el flujo de carga
- Creado: SEO-COMPATIBILITY.md con documentación completa
- Explicación de features SEO del tema
- Qué hace Rank Math
- Cómo trabajan juntos sin conflictos
- Configuración recomendada de Rank Math
- Checklist de verificación
- Troubleshooting
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
- WordPress core y plugins
- Tema Twenty Twenty-Four configurado
- Plugin allow-unfiltered-html.php simplificado
- .gitignore configurado para excluir wp-config.php y uploads
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>