Tutoriales de WordPress de Confianza, cuando más los necesitas.
Guía para Principiantes de WordPress
Copa WPB
25 Millones+
Sitios web que usan nuestros plugins
16+
Años de experiencia en WordPress
3000+
Tutoriales de WordPress de expertos

Cómo limitar la API de Heartbeat en WordPress (métodos fáciles para principiantes)

¿Buscas pequeños ajustes para mejorar la velocidad de tu sitio web de WordPress? Bueno, ¿alguna vez has pensado en limitar la API Heartbeat de WordPress? Puede sonar un poco técnico, ¡pero quédate con nosotros!

La API Heartbeat de WordPress es un sistema útil que funciona en segundo plano. Se encarga de tareas como el autoguardado de publicaciones mientras escribes y el envío de notificaciones del panel.

Por defecto, comprueba constantemente las actualizaciones cada 15 segundos cuando estás editando una publicación y cada minuto cuando solo navegas por tu panel. Esta actividad frecuente puede sobrecargar la CPU de tu servidor y ralentizar tu sitio. 

La buena noticia es que algunos de nuestros lectores han descubierto que ajustar la frecuencia de la API Heartbeat ha mejorado significativamente el rendimiento de su WordPress.

En este artículo, te mostraremos cómo administrar la API Heartbeat en WordPress para optimizar la velocidad de tu sitio. No te preocupes, es más simple de lo que parece y puedes hacerlo sin estropear ninguna de las funciones importantes en las que confías.

Cómo limitar la API de Heartbeat en WordPress

¿Qué es la API Heartbeat?

La API Heartbeat es una de las principales interfaces de programación de aplicaciones (API) que WordPress proporciona para ayudar a los desarrolladores a interactuar con la plataforma y agregar nuevas funciones.

Se introdujo en WordPress 3.6 para permitir la comunicación en tiempo real entre el navegador y el servidor mientras un usuario ha iniciado sesión en el panel de WordPress. En términos técnicos, esta comunicación se maneja mediante llamadas AJAX.

En pocas palabras, las llamadas AJAX son como mensajes entre tu navegador y el servidor. En lugar de recargar la página, tu navegador le pide al servidor solo la información que necesita. El servidor envía la actualización sin refrescar toda la página, haciendo que las cosas se sientan más rápidas.

La API Heartbeat hace posibles varias funciones importantes de WordPress, tales como:

  • Actualizaciones en tiempo real: Permite actualizaciones casi en tiempo real sin necesidad de refrescar la página. Por ejemplo, si alguien más está editando una publicación, se te notificará y la publicación se bloqueará para que no cambies accidentalmente su trabajo.
  • Autoguardado del trabajo: Cuando estás escribiendo una publicación de blog o una página, la API Heartbeat ayuda a guardar tu trabajo automáticamente cada 60 segundos. De esta manera, si algo sale mal, no perderás tus cambios recientes.
  • Sesiones de usuario: Ayuda a WordPress a llevar un registro de quién está usando el sitio actualmente y cuánto tiempo ha estado conectado. Esto funciona junto con el sistema de seguridad de WordPress para ayudar a administrar los inicios de sesión de los usuarios de forma segura.
  • Plugins de WordPress: Muchos plugins de WordPress también usan la API Heartbeat para agregar funciones en tiempo real. Estos incluyen procesamiento avanzado de formularios, control de versiones para contenido, notificaciones en vivo, administración de sesiones de usuario, monitoreo de seguridad y mucho más. Los plugins pueden usar Heartbeat para crear experiencias de usuario más interactivas y dinámicas.

Estas funciones son increíblemente útiles. El problema es que si tienes demasiadas solicitudes, tu servidor se ralentizará.

Pero no te preocupes, es fácil de administrar. Simplemente puedes establecer un intervalo de tiempo más largo para la API Heartbeat. Al hacer que revise cada, digamos, dos minutos en lugar de cada pocos segundos, puedes ayudar a acelerar tu sitio web.

Cuando haces que se revise con menos frecuencia, las actualizaciones instantáneas seguirán ocurriendo, solo que no tan rápido. Se trata de encontrar el equilibrio perfecto para tu sitio web, asegurándote de que sea rápido y aún tenga todas esas útiles funciones en tiempo real.

¿Es mejor limitar o deshabilitar la API Heartbeat?

Ahora, podrías verte tentado a desactivar completamente la API Heartbeat para obtener un rendimiento de WordPress aún mejor. ¡Desaconsejamos firmemente deshabilitarla por completo en la mayoría de los casos!

Deshabilitar completamente la API Heartbeat puede generar problemas inesperados, incluso si trabajas solo y no necesitas actualizaciones súper rápidas. Corres el riesgo de perder trabajo no guardado, omitir actualizaciones de seguridad importantes y causar problemas de inicio de sesión. Piénsalo dos veces antes de desactivarla.

En lugar de deshabilitarla por completo, simplemente ajustar su frecuencia suele ser una forma mucho más segura y efectiva de optimizar el rendimiento de tu sitio.

Dicho esto, veamos cómo limitar (e incluso deshabilitar) la API Heartbeat de WordPress. Estos son los temas que cubriremos en este tutorial:

  1. Limitar la API Heartbeat con un plugin (rápido y fácil)
  2. Limitar la API Heartbeat con código
  3. Deshabilitar la API Heartbeat sin un plugin

Limitar la API Heartbeat con un plugin (rápido y fácil)

Lo primero que debes hacer es instalar y activar el plugin gratuito Dynamic Front-End Heartbeat Control. Para obtener instrucciones detalladas, puedes consultar nuestra guía paso a paso sobre cómo instalar un plugin de WordPress.

Tras la activación, este plugin comenzará automáticamente a mejorar el rendimiento de tu sitio web sin ninguna configuración adicional. Ajusta el intervalo de Heartbeat en tiempo real, adaptándose a las demandas cambiantes de tu sitio web.

Para muchos sitios web, esta configuración automática es perfecta. Sin embargo, si deseas tener más control, también puedes cambiar la configuración de Heartbeat tú mismo utilizando las opciones del plugin.

Consejo: Muchos plugins de rendimiento de WordPress, como WP Rocket y Perfmatters, también pueden limitar la API Heartbeat. Para evitar conflictos, debes asegurarte de usar solo un plugin para este propósito.

Opcional: Limitar o deshabilitar manualmente la API Heartbeat

Para controlar manualmente la API Heartbeat, debes navegar a Ajustes » DFEHC en tu panel de WordPress.

En esta página de configuración, verás una casilla de verificación que dice ‘Deshabilitar Heartbeat’. Si realmente deseas desactivar la API Heartbeat por completo, puedes marcar esta casilla.

Desactivar la API Heartbeat con un plugin

Sin embargo, recuerda que esto detendrá las funciones en tiempo real de las que hablamos anteriormente. Por lo general, es mejor limitar el Heartbeat, no deshabilitarlo por completo.

Puedes cambiar la frecuencia con la que la API Heartbeat busca tareas cuando trabajas en tu panel de WordPress, lo que también se llama backend.

Para hacer esto, busca la opción ‘Backend Heartbeat Control’ y marca la casilla junto a ella.

Limitar el intervalo de Heartbeat del backend con un plugin

Luego, puedes ingresar un número en el cuadro para establecer el nuevo intervalo en segundos. Recuerda, el valor predeterminado es 60 segundos (una vez por minuto). Si deseas que el Heartbeat verifique con menos frecuencia, puedes ingresar un número mayor, como 90 o 120 segundos.

De manera similar, puedes cambiar el intervalo de Heartbeat específicamente para cuando estés escribiendo publicaciones o páginas en el editor de contenido. Busca el cuadro ‘Editor Heartbeat Control’ y márcalo.

Limitar el intervalo del editor de la API Heartbeat con un plugin

Luego, ingresa el intervalo deseado en segundos. El valor predeterminado aquí es de 15 segundos, lo cual es bastante frecuente.

Si deseas reducir la frecuencia con la que verifica mientras escribes, puedes aumentar este número. Puedes escribir el número directamente en el cuadro o usar las pequeñas flechas hacia arriba y hacia abajo para cambiar el número un segundo a la vez.

El plugin también incluye un control deslizante de ‘Priority Settings’ que te permite equilibrar el rendimiento del servidor y las necesidades del visitante.

Deslizar hacia ‘Increase server priority’ reduce la carga del servidor al disminuir la frecuencia de las actualizaciones. Deslizar hacia ‘Increase visitor priority’ permite actualizaciones más frecuentes pero requiere más recursos del servidor.

Ajustar la configuración de prioridad para limitar la API Heartbeat con un plugin

Después de haber realizado todos los cambios que deseas, asegúrate de desplazarte hasta el final de la página y hacer clic en el botón ‘Save Changes’ . Esto es importante para asegurarte de que tu nueva configuración se guarde y comience a funcionar.

Limitar la API Heartbeat con código

También puedes limitar la API de Heartbeat en WordPress agregando un fragmento de código a tu sitio web.

Ahora, agregar código puede sonar un poco aterrador, y sí necesitas tener un poco de cuidado. Si cometes un error al agregar código directamente, podría causar problemas con tu sitio web.

Tenemos una guía útil que explica cómo pegar fragmentos de código de forma segura en WordPress, así que puedes consultarla primero para sentirte más cómodo.

La forma más segura y fácil de agregar el código es usando el plugin WPCode porque ya tiene el fragmento de código en su biblioteca. Todo lo que necesitas hacer es activarlo.

Existe una versión premium, pero para este tutorial, usaremos el Plugin Gratuito WPCode porque incluye el fragmento 'Configuración de Heartbeat'. Si necesitas ayuda para agregarlo a tu sitio, consulta nuestra guía sobre cómo instalar un plugin de WordPress.

Después de activar el plugin, puedes crear un nuevo fragmento navegando a WPCode » + Agregar fragmento. En esa página, puedes usar la función de búsqueda para encontrar el fragmento 'Configuración de Heartbeat'.

Crear un fragmento de configuración de Heartbeat en WPCode

Ahora, simplemente pasa el cursor del mouse sobre el fragmento y luego haz clic en el botón 'Usar fragmento'.

Esto abrirá la página Editar fragmento. No te preocupes. Todo ya está configurado para ti. Todo lo que necesitas hacer es activar el fragmento.

Busca el interruptor 'Activar' en la parte superior derecha de la página y cámbialo a la posición Activado. Después de eso, haz clic en el botón 'Actualizar'.

Activar el fragmento de configuración de Heartbeat en WPCode

Este fragmento agrega una nueva entrada a la página de Configuración General, donde puedes configurar cómo limitar la API de Heartbeat en WordPress. Simplemente navega a Configuración » General y desplázate hasta el final de la página.

Por defecto, el fragmento cambia el intervalo de Heartbeat a 120 segundos, que es un buen punto de partida para mejorar el rendimiento. Pero puedes cambiar este número a lo que desees.

Simplemente escribe un número nuevo en el campo o usa las pequeñas flechas hacia arriba y hacia abajo junto al campo para ajustar los segundos.

Cambiar el intervalo de Heartbeat en la página de configuración general

Recuerda, después de cambiar el número, debes desplazarte hacia abajo nuevamente y hacer clic en el botón ‘Guardar Cambios’ en la parte inferior de la página de Configuración General. Esto asegurará que tu nueva configuración de intervalo de Heartbeat se guarde y comience a funcionar.

Consejo profesional: ¿Tienes curiosidad por saber cuánto ha mejorado el rendimiento de tu WordPress al limitar la API Heartbeat? Simplemente realiza una prueba de velocidad antes y después de hacerlo. Puedes aprender cómo en nuestra guía sobre cómo realizar correctamente una prueba de velocidad de sitio web.

Para aquellos que se sienten más cómodos con el código, también existe otra forma de agregar este fragmento de código directamente a los archivos de tu sitio web.

Puedes agregar el código directamente al archivo functions.php de tu tema. Sin embargo, esto es un poco más avanzado, y usar el plugin WPCode es generalmente más fácil y seguro para la mayoría de los usuarios.

Si te interesa este método más avanzado, puedes encontrar el código a continuación:

// Add a new setting in wp-admin > Settings > General
add_action( 'admin_init', function() {
   register_setting( 'general', 'custom_heartbeat_interval', 'intval' );
   add_settings_field( 'custom_heartbeat_interval', 'Heartbeat Interval', function() {
       $interval = get_option( 'custom_heartbeat_interval', 120 );
       echo "<input type='number' name='custom_heartbeat_interval' value='".absint($interval)."' min='15' max='120' /> seconds";
   }, 'general' );
});

add_filter( 'heartbeat_settings', function( $settings ) {
   $settings['interval'] = get_option( 'custom_heartbeat_interval', 120 );
   return $settings;
});

Pero para la mayoría de las personas, usar el plugin WPCode es la forma recomendada de limitar la API Heartbeat.

Para más detalles, consulta nuestra guía sobre cómo agregar fácilmente código personalizado en WordPress.

Deshabilitar la API Heartbeat sin un plugin

Si has decidido deshabilitar por completo la API Heartbeat en tu sitio web, también puedes hacerlo agregando un fragmento de código al archivo functions.php de tu tema o al plugin WPCode.

Esta vez, el código para deshabilitar Heartbeat no está ya en la biblioteca de WPCode, así que lo copiaremos y pegaremos en WPCode nosotros mismos. ¡No te preocupes, sigue siendo fácil de hacer!

Primero, asegúrate de tener instalado y activado el plugin WPCode, como hablamos en la sección anterior. Una vez que WPCode esté listo, ve a WPCode » + Add Snippet en tu menú de administrador de WordPress.

A continuación, necesitas elegir la opción para agregar tu propio código personalizado. Busca el fragmento llamado ‘Add Your Own Custom Code (New Snippet)’. Cuando pases el mouse sobre esta entrada, podrás hacer clic en el botón ‘Use snippet’ .

Añadir un nuevo fragmento en WPCode

En la siguiente pantalla, WPCode te pedirá que elijas el tipo de código que estás agregando.

Dado que el código que necesitamos está en PHP, debes hacer clic en la opción ‘PHP Snippet’ .

Selecciona la opción Fragmento de PHP en WPCode

Esto te llevará a la página Create Custom Snippet.

Primero, debes darle un título a tu fragmento para que sepas para qué es. Un buen título sería algo como ‘Disable Heartbeat API’ .

Luego, en la sección llamada ‘Code Preview’, necesitas pegar el código que deshabilita la Heartbeat API.

Aquí está el código que necesitas copiar y pegar:

add_action( 'init', 'stop_heartbeat', 1 );
function stop_heartbeat() {
wp_deregister_script('heartbeat');
}

Simplemente copia todo ese código.

Luego, pégalo en el cuadro ‘Code Preview’ en WPCode.

Agregar el fragmento de código para desactivar la API Heartbeat en WPCode

Puedes dejar todas las demás configuraciones de la página como están.

Ahora, para que el código funcione y deshabilites la API de Heartbeat, necesitas activar el fragmento. Busca el interruptor ‘Active’, cámbialo a la posición ‘On’ y luego haz clic en el botón ‘Save Snippet’.

Activar el fragmento de WPCode para desactivar la API Heartbeat

¡Eso es todo! Ahora has deshabilitado con éxito la API de Heartbeat en tu sitio web usando WPCode.

Si alguna vez quieres volver a activar la API de Heartbeat, puedes hacerlo fácilmente simplemente desactivando este fragmento de código en WPCode. Solo regresa a tus fragmentos de WPCode y desactiva este. Es una forma muy fácil de controlar la API de Heartbeat.

Esperamos que este artículo te haya ayudado a aprender cómo limitar la API de heartbeat en WordPress. También podrías querer aprender cómo hacer una prueba de velocidad de sitio web correctamente o ver nuestra selección experta de los mejores plugins de caché de WordPress para acelerar tu sitio web.

Si te gustó este artículo, suscríbete a nuestro canal de YouTube para obtener tutoriales en video de WordPress. También puedes encontrarnos en Twitter y Facebook.

Descargo de responsabilidad: Nuestro contenido es compatible con el lector. Esto significa que si haces clic en algunos de nuestros enlaces, podemos ganar una comisión. Consulta cómo se financia WPBeginner, por qué es importante y cómo puedes apoyarnos. Aquí está nuestro proceso editorial.

El Kit de herramientas definitivo para WordPress

Obtén acceso GRATUITO a nuestro kit de herramientas: ¡una colección de productos y recursos relacionados con WordPress que todo profesional debería tener!

Interacciones del lector

13 CommentsLeave a Reply

  1. Gracias por el artículo detallado. Me parece fácil de seguir y también profundiza para las personas que quieren ir más allá. Para mí, ¡es importante que dejé de tener errores en la consola después de reemplazar el plugin antiguo e instalar el plugin Dynamic Front-end Heartbeat! El sitio web carga instantáneamente ahora.

  2. ¿Puede el latido del corazón tener un impacto en la generación de URLs en WordPress? Deshabilité el latido del corazón en mi sitio web usando el plugin WP Rocket. Desafortunadamente, luego comencé a experimentar que WordPress se "olvidaba" de las URLs de las páginas, y comenzó a devolver un error 404 para cada página existente. Siempre tenía que regenerar los permalinks. Sin embargo, el error reapareció después de un tiempo. Al final, volver a activar el latido del corazón ayudó. Después de eso, los problemas se detuvieron.

    • No debería, a menos que haya algo específico en tu sitio que esté usando la API Heartbeat para generar la URL de la publicación.

      Administrador

      • Sí, lo hago. Uso Polylang para las mutaciones de idioma en el sitio web. Los problemas ocurrieron solo en una mutación de idioma, no en la otra. Creo que el problema estaba en la URL porque la mutación en inglés tenía “/en” en la URL, mientras que la mutación checa no tenía este sufijo al final. Por lo tanto, deshabilitar el heartbeat puede haber tenido tal efecto. Sin embargo, gracias por la respuesta; al menos sabré que puedo deshabilitar el heartbeat en otro sitio web sin necesariamente encontrar problemas similares nuevamente.

  3. ¡¡Buen artículo con buena información!!

    Quiero usarlo para mi sitio, pero el plugin que sugeriste no está activado desde hace un año. ¿Puedes sugerir algo más?

  4. ¡Sí!

    Muchas gracias. Mi sitio se cayó anoche, y después de un par de horas de soporte con HostGator me dijeron que necesitaba resolver este problema.

    Agregar el plugin redujo dos segundos completos en el tiempo de carga de la página de inicio (4 segundos -> 1.9 segundos), y unos 200 kb del tamaño total de la página, y un aumento de 2 puntos en la puntuación de PageSpeed.

    GRACIAS.

Deja una respuesta

Gracias por elegir dejar un comentario. Ten en cuenta que todos los comentarios son moderados de acuerdo con nuestra política de comentarios, y tu dirección de correo electrónico NO será publicada. Por favor, NO uses palabras clave en el campo del nombre. Tengamos una conversación personal y significativa.