¿No sabes qué significa algún término? Consulta el glosario
Cómo desactivar un plugin de WordPress en páginas específicas
Los plugins son indispensables para aumentar las funcionalidades de una página web en WordPress. Sin embargo, no debes pasarte de la raya instalando plugins, dado que podrían ralentizar la carga de la página y afectar gravemente al rendimiento del sitio.
En el momento en el que instalas un plugin en tu WordPress, no solo se carga en la página en la que lo utilizas, sino que lo hace en todas, aunque no lo estés usando activamente. Esto puede llegar a ser un problema, porque siempre debemos tratar de lograr el mejor rendimiento posible en nuestro sitio web. Al fin y al cabo, la velocidad de carga es uno de los aspectos que Google tiene en cuenta a la hora de posicionar una página web en Google.
Si quieres tratar de mejorar el rendimiento de tu sitio en WordPress todo lo que puedas, es importante que aprendas ciertos trucos. Si tienes 10 minutos, quédate en esta guía porque aprenderás a desactivar un plugin de WordPress en páginas específicas. El objetivo es que puedas tener los plugins que quieras, pero sin ver comprometido el rendimiento de tu sitio web.
Guía | Cómo desactivar un plugin de WordPress en páginas específicas paso a paso
Cada vez que un usuario solicita una página al servidor, WordPress ejecuta el código necesario (y eso incluye a cada plugin por separado).
Realmente, ¿nos interesa que en una página sin formulario de contacto se ejecute el plugin de contacto? No. No solo no nos interesa, sino que debemos de tratar de corregirlo para mejorar el rendimiento de la página web.
Por ejemplo, Contact Form 7 -uno de los mejores plugins de formularios de contacto en WordPress- se ejecuta en cada página incluso si no hay ningún formulario, aunque sea solo para determinar que en tal página no hay ningún formulario. No solo eso, en este caso particular de Contact Form 7, al ejecutarse, se cargan ciertos archivos CSS y JS que son totalmente innecesarios (si no hay formulario en la página, claro).
Lo que queremos conseguir, para mejorar el rendimiento del sitio, es que el código del plugin se ejecute solo en las páginas que nos interesan. Por ejemplo, que el plugin del formulario de contacto se cargue solamente en las páginas en las que se muestra el formulario, como pueden ser las páginas de Contacto, Devoluciones y el backend de WordPress.
Para hacerlo, no podemos tocar el functions.php, sino que debemos crear un mu-plugin. Si no sabes cómo, en la siguiente guía te cuento paso a paso cómo crear un mu-plugin en WordPress.
Copia y pega el siguiente código como un mu-plugin y listo.
<?php
add_filter( 'option_active_plugins', 'desactiva_plugin_excepto_paginas' );
function desactiva_plugin_excepto_paginas( $plugins ) {
if ( is_admin() ) {
return $plugins;
}
$allowed_pages = [ '/contacto/', '/devoluciones/' ]; // Paginas donde el plugin debe estar activo
if ( ! in_array( $_SERVER['REQUEST_URI'], $allowed_pages ) ) {
$key = array_search( 'contact-form-7/wp-contact-form-7.php', $plugins );
if ( false !== $key ) {
unset( $plugins[$key] );
}
}
return $plugins;
}
Acuérdate de guardar los cambios.
Recuerda que este código hace que el plugin del formulario de contacto cargue solo en las urls de Contacto y Devoluciones, además de todo el backend de WordPress. Si es lo que quieres, copia y pega directamente el código o haz los cambios que necesites para adaptarlo 100% a tu web.
Si quieres añadir más páginas, puedes hacerlo desde la línea de código siguiente: $allowed_pages = [ '/contacto/', '/devoluciones/' ];
Así solo se cargará en las páginas en las que indiques. Además, puedes cambiarlo siempre que tus necesidades cambien. El objetivo siempre es el mismo, mejorar el rendimiento de la web y conseguir que cargue lo más rápido posible.
Si lo que quieres es hacer lo contrario, que las páginas que indiques sean donde el plugin en cuestión no cargue, lo único que tienes que hacer es eliminar el signo de exclamación de la línea if ( ! in_array( $_SERVER['REQUEST_URI'], $allowed_pages ) ) {
. Es decir, te quedará así:
<?php
add_filter( 'option_active_plugins', 'desactiva_plugin_paginas_especificas' );
function desactiva_plugin_paginas_especificas( $plugins ) {
if ( is_admin() ) {
return $plugins;
}
$disallowed_pages = [ '/contacto/', '/devoluciones/' ]; // Paginas donde el plugin debe estar desactivado
if ( in_array( $_SERVER['REQUEST_URI'], $disallowed_pages ) ) {
$key = array_search( 'contact-form-7/wp-contact-form-7.php', $plugins );
if ( false !== $key ) {
unset( $plugins[$key] );
}
}
return $plugins;
}
Además, recuerda que puedes personalizar el código en función de cada plugin. El ejemplo que te comparto es para el plugin Contact Form 7, de formularios de contacto en WordPress, pero puedes hacerlo para el plugin que tú quieras. Simplemente tendrás que cambiarlo en esta línea: $key = array_search( 'contact-form-7/wp-contact-form-7.php', $plugins );
. Recuerda que, en este caso, contact-form-7
es la carpeta del plugin y wp-contact-form-7.php
el archivo principal del plugin.
¿Por qué importante es importante desactivar los plugins en las páginas en las que no se utilizan?
Es imprescindible hacerlo por temas de rendimiento. Piensa que la mayoría de la gente no lo hace porque lo desconoce completamente, pero es indispensable tratar de conseguir la mejor velocidad de carga posible en tu sitio. Cuánto más rápido cargue, mejor para Google y también para el usuario final, dado que ofrecerás una mejor experiencia de usuario y conseguirás aumentar las ventas de tu negocio.
En resumen, sus ventajas se traducen en:
- Menor velocidad de carga: un aspecto que puede mejorar tu posicionamiento en los buscadores.
- Mejor experiencia de usuario: una página lenta puede disparar la tasa de abandono, mientras que una página que carga más rápido puede ayudarte a disparar las ventas de tu negocio.
Teniendo en cuenta estas ventajas merece la pena dedicar un rato a hacer estos ajustes en la web.
¿Y si no sé hacerlo?
Si tienes dudas, recuerda que puedo hacerlo por ti. La velocidad de tu web es uno de los aspectos primordiales para que tu negocio funcione. Si prefieres delegar, me encargaré de revisar tu web y de introducir mejoras para que cargue lo más rápido posible.
Si ves un enlace de afiliado, te garantizo que es de un producto o servicio que realmente vale la pena. A diferencia de otras webs, aquí no se promociona nada solo porque paga más.