Como desactivar scripts y estilos

desenchufado

Hay muchos plugins y themes que añaden JavaScript y CSS a tu sitio. Esto, que en sí mismo no es malo, cuando usas varios plugins de este tipo pueden hacer verdaderas perrerías con tu sitio, mostrando una versión lamentable del mismo cuando interfieren varios estilos CSS o scripts.

Afortunadamente WordPress dispone de un sistema propio que permite anular estos scripts y estilos.

En este ejemplo se usan dos plugins muy populares, Contact Form 7 y WP-PageNavi, pero puedes aplicarlo a otros similares, como Sociable, que también peca de lo mismo.

La cruda realidad

No todos los plugins hacen bien el trabajo cargando scripts y estilos, muchos de ellos solo piensan en su funcionalidad, sin tener en cuenta que tendrán que convivir con otros plugins, con tu theme, incluso con WordPress. Muchos desarrolladores meten “lo suyo” y luego te tienes que buscar la vida si hay problemas, incluso recomendándote (cuando les preguntas) que desactives los otros plugins o “cambies de theme” (verídico).

No todos los plugins usan métodos adecuados para la carga de scripts y estilos. La mayor parte de las ocasiones es porque no dominan dos importantes funciones de WordPress: wp_enqueue_script() y wp_enqueue_style(). Si el autor de un plugin/theme no usa estas funciones mejor búscate otro plugin/theme o anímale a hacerlo. Lo que hacen es permitir al resto convivir con su código.

Una vez tengas claro que scripts o CSS quieres desactivar ya te puedes poner manos a la obra …

Desactivando JavaScript

En el ejemplo vamos a desactivar el Javascript del plugin Contact Form 7. Lo primero que tenemos que hacer es encontrar la llamada al script. Para eso abrimos el fichero wp-contact-form-7.php en un editor de texto y buscamos la cadena wp_enqueue_script. Encontraremos lo siguiente:

La llamada al Javascript del plugin es, en consecuencia, contact-form-7. Ahora ya podemos cerrar el archivo y seguir adelante.

A continuación abrimos el fichero functions.php de tu theme y añadimos este código PHP:

Guardamos el archivo y lo que conseguimos es que el script no se vuelva a cargar. Puedes desactivar (desregistrar) tantos scripts como quieras con esta función.

Desactivando estilos

Para este ejemplo vamos a desactivar la hoja de estilos del plugin WP-PageNavi. Y es que es casi mejor siempre añadir estilos en tu CSS, y no que los coja de las carpetas de los plugins, a veces actualizan los plugins con cambios de CSS que pueden destrozar tu theme.

Lo primero que tenemos que hacer es abrir el fichero wp-pagenavi.php en un editor de texto y buscar wp_enqueue_style. Lo que encontramos es este código:

Y también este otro:

Lo que estamos buscando es como Page Navi gestiona los estilos. Una vez lo hemos encontrado ya lo podemos cerrar (tras analizarlo) y añadir lo siguiente al fichero functions.php de tu theme:

Con esto desactivamos la hoja de estilos de este plugin. Como antes, puedes “desregistrar” cuantos estilos quieras con esta función.

Trucos para mejorar la tarea

Ahora que hemos desactivado scripts y estilos hay algunas cosas que podemos hacer para mejorar esta técnica o darle otros usos:

  • Coloca los estilos desactivados (o los que quieras cambiar) al final de tu hoja de estilos (style.css), añadiendo algún comentario que los identifique, que muestre a qué afectan.
  • Combina varios scripts en un solo archivo y cárgalos tu mismo.
  • Usa tags condicionales para afinar el control de la carga de estilos y/o scripts.
  • Si desactivas algo puede que el plugin/theme deje de funcionar correctamente. La mayoría de los estilos puedes añadirlos a la hoja de estilos de tu theme para así no cargar varias hojas de estilos. Pero con el Javascript es distinto, con este tipo de código solo combina varios scripts si sabes realmente lo que estás haciendo

AVISO: esta publicación es de hace dos años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado.

Valora este artículo para mejorar la calidad del blog ...

Al hacer una valoración se recoge una cookie con la IP de tu dispositivo

FlojitoNo está malEstá bienMe ha servidoFantástico (7 votos, promedio: 5,00 de 5)
Cargando…

Autor: Fernando Tellado

Fernando Tellado, apasionado de WordPress, profesor, consultor y ponente. Maquero cansino, padre de tres hijos y de una perrita Beagle, Bilbaíno de nacimiento, Español de corazón y ciudadano de donde me quieran. Autor del libro WordPress - La tela de la araña. Mi blog personal es Navegando con red, donde he crecido como escritor en la red y ofrezco mis visiones acerca de la Web 2.0 y la blogosfera.

Comparte esta entrada en
468 ad

Al dejar un comentario se solicitan datos como tu correo y nombre que se almacenan en una cookie para que no tengas que volver a completarlos en próximas visitas. Para enviar un comentario debes aceptar nuestra política de privacidad | Responsable de los datos: Fernando Tellado García | Finalidad: Gestión y moderación de comentarios | Legitimación: Tu consentimiento expreso | Destinatario: Disqus (acogido a EU-US Privacy Shield) | Derechos: Tienes derecho al derecho al acceso, rectificación, supresión, limitación, portabilidad y olvido de sus datos

Centro de preferencias de privacidad

Cookies imprescindibles

Se usan para almacenar tu nombre, correo, IP y demás datos que dejas en los formularios de comentarios, contacto, acceso y tus preferencias de privacidad.

AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY, NONCE_KEY, comment_author, comment_author_email, comment_author_url, rated, gdpr, gawdp

Cookies de terceros

Usamos cookies de terceros en las que se almacenan externamente para conocer tus usos de navegación, si ya estás suscrito al boletín y los elementos compartidos en redes sociales

cfduit_, intercom-id, intercom-lou, mailerlite:language, mailerlite:webform, _ga, _gid
cfduit_, intercom-id, intercom-lou, mailerlite:language, mailerlite:webform
_ga, _gid

¿Quieres cerrar tu cuenta?

Se cerrará tu cuenta y todos los datos se borrarán de manera permanente y no se podrán recuperar ¿Estás seguro?

Pin It on Pinterest