Error común al agregar scripts y hojas de estilo en WordPress
Muchos WordPress nuevos plugins y los desarrolladores de temas cometen el error de agregar directamente sus scripts o CSS en línea a sus plugins y temas.
Algunos usan erróneamente el wp_head
función para cargar sus scripts y hojas de estilo.
<?php add_action('wp_head', 'wpb_bad_script'); function wpb_bad_script() { echo 'jQuery goes here'; } ?>
Si bien el código anterior puede parecer más fácil, es la forma incorrecta de agregar scripts en WordPress y genera más conflictos en el futuro.
Por ejemplo, si carga jQuery manualmente y otro plugin carga jQuery a través del método adecuado, luego se carga jQuery dos veces. Si se carga en todas las páginas, esto afectará negativamente la velocidad y el rendimiento de WordPress.
También es posible que las dos sean versiones diferentes, lo que también puede causar conflictos.
Dicho esto, echemos un vistazo a la forma correcta de agregar scripts y hojas de estilo.
¿Por qué poner en cola scripts y estilos en WordPress?
WordPress tiene una sólida comunidad de desarrolladores. Miles de personas de todo el mundo desarrollan temas y plugins para WordPress.
Para asegurarse de que todo funcione correctamente y de que nadie pise los pies de otro, WordPress tiene un sistema de cola. Este sistema proporciona una forma programable de cargar JavaScripts y hojas de estilo CSS.
Al usar las funciones wp_enqueue_script y wp_enqueue_style, le dice a WordPress cuándo cargar un archivo, dónde cargarlo y cuáles son sus dependencias.
Este sistema también permite a los desarrolladores utilizar las bibliotecas JavaScript integradas que vienen incluidas con WordPress en lugar de cargar el mismo script de terceros varias veces. Esto reduce el tiempo de carga de la página y ayuda a evitar conflictos con otros temas y plugins.
¿Cómo poner correctamente los scripts en cola en WordPress?
Cargar scripts correctamente en WordPress es muy fácil. A continuación se muestra un código de ejemplo que debe pegar en su plugins o en el archivo functions.php de su tema para cargar correctamente los scripts en WordPress.
?php function wpb_adding_scripts() { wp_register_script('my_amazing_script', plugins_url('amazing_script.js', __FILE__), array('jquery'),'1.1', true); wp_enqueue_script('my_amazing_script'); } add_action( 'wp_enqueue_scripts', 'wpb_adding_scripts' ); ?>
Explicación:
Empezamos registrando nuestro script a través del wp_register_script()
función. Esta función acepta 5 parámetros:
- $ manejar – Identificador es el nombre exclusivo de su secuencia de comandos. El nuestro se llama «my_amazing_script»
- $ src – src es la ubicación de su script. Estamos usando la función plugins_url para obtener la URL correcta de nuestro plugins carpeta. Una vez que WordPress lo encuentre, buscará nuestro nombre de archivo amazing_script.js en esa carpeta.
- $ deps – deps es para la dependencia. Dado que nuestro script usa jQuery, hemos agregado jQuery en el área de dependencia. WordPress cargará automáticamente jQuery si aún no se está cargando en el sitio.
- $ ver – Este es el número de versión de nuestro script. Este parámetro no es obligatorio.
- $ in_footer – Queremos cargar nuestro script en el pie de página, por lo que hemos establecido el valor como verdadero. Si desea cargar el script en el encabezado, lo haría falso.
Después de proporcionar todos los parámetros en wp_register_script
, podemos simplemente llamar al script en wp_enqueue_script()
que hace que todo suceda.
El último paso es usar el gancho de acción wp_enqueue_scripts para cargar realmente el script. Dado que este es un código de ejemplo, lo hemos agregado justo debajo de todo lo demás.
Si estaba agregando esto a su tema o plugin, luego puede colocar este gancho de acción donde realmente se requiera el script. Esto le permite reducir la huella de memoria de su plugin.
Ahora, algunos se preguntarán por qué vamos a dar un paso adicional para registrar el script primero y luego ponerlo en cola. Bueno, esto permite que otros propietarios de sitios cancelen el registro de su script sin modificar el código central de su plugin.
Encola correctamente los estilos en WordPress
Al igual que los scripts, también puede poner en cola sus hojas de estilo. Mira el ejemplo de abajo:
<?php function wpb_adding_styles() { wp_register_style('my_stylesheet', plugins_url('my-stylesheet.css', __FILE__)); wp_enqueue_style('my_stylesheet'); } add_action( 'wp_enqueue_scripts', 'wpb_adding_styles' ); ?>
En lugar de usar wp_enqueue_script
, ahora estamos usando wp_enqueue_style
para agregar nuestra hoja de estilo.
Note que hemos usado wp_enqueue_scripts
gancho de acción para estilos y scripts. A pesar del nombre, esta función funciona para ambos.
En los ejemplos anteriores, hemos utilizado plugins_url
función para apuntar a la ubicación del script o estilo que queríamos poner en cola.
Sin embargo, si está utilizando la función de enqueue scripts en su tema, simplemente use get_template_directory_uri()
en lugar de. Si está trabajando con un tema hijo, utilice get_stylesheet_directory_uri()
.
A continuación se muestra un código de ejemplo:
<?php function wpb_adding_scripts() { wp_register_script('my_amazing_script', get_template_directory_uri() . '/js/amazing_script.js', array('jquery'),'1.1', true); wp_enqueue_script('my_amazing_script'); } add_action( 'wp_enqueue_scripts', 'wpb_adding_scripts' ); ?>
Esperamos que este artículo le haya ayudado a aprender cómo agregar correctamente jacvascript y estilos en WordPress. Es posible que también desee estudiar el código fuente de la parte superior de WordPress. plugins para ver algunos ejemplos de código de la vida real.
Si le gustó este artículo, suscríbase a nuestro Canal de Youtube . También puedes encontrarnos en Twitter y Facebook.
Cómo agregar correctamente JavaScripts y estilos en WordPress .
Fuente: wpbeginner