Quitar strategy defer para que wp_localize_script funcione - Issue #110

PROBLEMA:
- wp_localize_script no genera variable apusTheme en HTML
- WordPress no puede inyectar scripts inline cuando se usa strategy => 'defer'
- Resultado: JavaScript no tiene acceso a apusTheme.themeUrl
- fetch() usa ruta incorrecta y carga página 404 en modalContainer

SOLUCIÓN:
- Quitar strategy => 'defer' de wp_enqueue_script
- Usar solo 'true' (in_footer => true) como 5to parámetro
- Incrementar versión a 1.0.2 para cache busting
- Ahora wp_localize_script SÍ inyecta apusTheme correctamente

REFERENCIA:
- https://developer.wordpress.org/reference/functions/wp_localize_script/
- wp_localize_script requiere que script NO use defer/async

ARCHIVO:
- wp-content/themes/apus-theme/inc/enqueue-scripts.php:193-199

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
FrankZamora
2025-11-06 22:46:03 -06:00
parent 1facbfe2bb
commit 93f55e8952

View File

@@ -194,11 +194,8 @@ function apus_enqueue_custom_assets() {
'apus-main-js',
get_template_directory_uri() . '/assets/js/main.js',
array('apus-bootstrap-js'),
'1.0.1', // Cache bust: fix modal URL
array(
'in_footer' => true,
'strategy' => 'defer',
)
'1.0.2', // Cache bust: remove defer for wp_localize_script compatibility
true // Load in footer (defer removed for wp_localize_script to work)
);
// Localize script to pass theme URL to JavaScript