Igual no te has dado cuenta, pero el tema Divi a veces carga Google Maps, incluso cuando no hay mapas en la página. Esto da como resultado alrededor de 5 solicitudes innecesarias en esas páginas. Evitar estas solicitudes acelerará la carga de estas páginas.
Índice de contenidos
¿Por qué y dónde carga Divi scripts de Google Maps innecesarios?
Esto pasa cuando estás viendo una página – normalmente un archivo de entradas o tipos de contenido personalizado – que muestra un extracto una publicación que, al verla al completo, contenga un módulo de mapa (o módulo de mapa de ancho completo).
Aunque el módulo de mapas no se muestra como parte del extracto generado, el acto de generar el extracto procesa completamente la publicación y hace que el módulo de mapas cargue los scripts que necesitaría, es decir, los scripts de Google Maps.
Pero como los extractos no muestran un mapa, no necesitan cargar los scripts, así que es una carga de scripts innecesaria, que ralentiza la velocidad de carga de estas páginas de listados o archivo de publicaciones.
A continuación te explico cómo evitar este comportamiento y ahorrar unas 5 peticiones en las páginas de archivos.
Evitar la carga de scripts de Google Maps en Divi cuando no son necesarios
Para evitar que Divi cargue scripts de Google Maps en páginas donde no se está mostrando realmente un mapa de Google, sino extractos de publicaciones que – luego – si lo mostrarán, solo tienes que ejecutar el siguiente código:
/* Evitar carga scripts Google Maps en listados de publicaciones */ add_action('loop_start', 'dbc_loop_start'); add_action('loop_end', 'dbc_loop_end', 100); // Impedimos la carga del script de Google Maps cargado por los modulos con mapa function dbc_loop_start($query) { if (dbc_map_modules_in_excerpts($query)) { add_filter('et_pb_enqueue_google_maps_script', 'dbc_return_false'); } } // Reactivamos el script de Google Maps cuando pasa el loop function dbc_loop_end($query) { if (dbc_map_modules_in_excerpts($query)) { remove_filter('et_pb_enqueue_google_maps_script', 'dbc_return_false'); } } function dbc_map_modules_in_excerpts($query) { // No debe afectar a la administracion if (is_admin()) { return false; } // No debe afectar al maquetador if (!function_exists('et_core_is_fb_enabled') || et_core_is_fb_enabled()) { return false; } // No debe afectar a publicaciones individuales if (is_singular()) { return false; } // No debe afectar a consultas secundarias if (!$query->is_main_query()) { return false; } // No debe afectar a Divi > Opciones del tema > General > Modo estilo blog, que muestra el contenido completo en el loop if (!function_exists('et_get_option') || et_get_option('divi_blog_style', 'false') === 'on') { return false; } return true; } function dbc_return_false() { return false; }
¿Cómo añado este código?
Puedes ejecutar este código en tu web principalmente de 2 maneras:
- Instalando y activando el plugin Divi Booster y luego activando la opción Site Speed → Stop map module excerpts from unnecessarily loading maps scripts.
- Añadiendo manualmente el código según explico en detalle en esta guía.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!