106 | Cuándo deberías usar plugins y cuándo código
25 Apr 2018 · 14 min
Episodio 106 del podcast WordPress Semanal (con Gonzalo Navarro) que explica cuándo conviene usar plugins frente a implementar código directo en WordPress. Cubre ventajas y desventajas en términos de usabilidad (paneles de ajustes, shortcodes y uso por parte de clientes), rendimiento (impacto del JavaScript, carga selectiva de plugins) y mantenimiento (plugins como paquetes de código, plugins propios vs functions.php). También menciona herramientas y recursos: plugin 'If Menu' para menús condicionales, y plugins para carga selectiva (Plugin Load Filter, Plugin Organizer, Plugin Logic) y referencia a cursos y vídeos en la zona Código y de velocidad.
Chapters
En el episodio 106 de WordPress semanal despejamos dudas sobre el uso de plugins y código. Cuándo usar uno u otro en función de las circunstancias. Vamos allá. Hola, hola, Soy Gonzalo de Gonzalonabarro. Es y bienvenidos a WordPress Semanal, el podcast en el que aprendes WordPress de principio a fin. Porque ya sabes que no hay mayor satisfacción ni mejor inversión que la de crear y gestionar tu propia página web con WordPress. Y hoy nos vamos a centrar precisamente en uno de esos aspectos importantes en cuanto a la gestión, porque está la eterna duda de si hay que usar muchos plugins, pocos plugins. Bueno, lo normal es que la gente diga pocos, pero hay gente que dice pues que da igual, otros que dicen que depende de muchos factores, que por ahí iré yo un poquito. Pero también os voy a hablar de en el caso de usar bastantes plugins o plugins pesados, qué puedes hacer para minimizar su impacto. También te voy a hablar de lo que supone realmente la diferencia entre a lo mejor usar código para implementar algo o hacerlo por un plugin. ¿Cuándo te recomiendo yo que hagas cada cosa? Y en general un poco el episodio irá en esa línea. Ahora os comentaré por qué decidí hacer este episodio. Pero antes vámonos con las novedades que hay esta semana en Gonzalo Navarro. Es que no es más que un nuevo vídeo de la zona Código en el que os enseño a crear una página de ancho completo en WordPress. Esto es básicamente si tu SIM no trae la típica plantilla de ancho completo. Ya sabéis que los themes vienen con plantillas de página y que tú puedes crear plantillas de página. Esto lo vemos en el curso de WordPress avanzado. Pero en concreto este vídeo está enfocado a los que queréis una página de ancho completo. Así siempre que lo necesitéis, simplemente la marcáis como opción de plantilla de página y listo, ya lo tenéis. ¿Después, si lo combináis con otro vídeo de la zona Código en el que os explico cómo ocupar el 100% de ancho de la pantalla, pues podéis lograr combinaciones muy chulas, vale? Así que os dejo. Este es el vídeo 57 de la zona Código. Ya sabéis que es parte de del área para suscriptores, a la que si no tienes acceso, por supuesto, Puedes probarla durante 15 días sin compromiso. Tienes toda la info en Gonzalo Navarro. Es cursos. Saltamos ahora con el plugin de la semana, que es para crear menús condicionales. Ya mencioné este plugin en un episodio que llamé Los 6 mini plugins más útiles de WordPress. Es el episodio 90, si no recuerdo mal. A ver que lo abra un momentito. Sí, el episodio 90. Pero recientemente lo he tenido que recomendar a través del área de soporte y demás, pues he tenido que recomendar este plugin varias veces, así que lo quería destacar en esta sección del plugin de la semana. Y el plugin se llama if menu y te permite crear distintos menús en función de si un usuario está logueado o no, de si accedes de móvil o de ordenador, de si es un tipo de suscriptor concreto, con lo cual imagina las posibilidades que te da. Por ejemplo, si alguien no está, te hablo del menú principal de tu web, ¿Vale? Lo puedes utilizar con cualquier menú que tengas creado en WordPress, en apariencia, menús, pues ahí te aparecen un montón de opciones y tú puedes decir, quiero que este elemento del menú se vea solo para los usuarios que no están logueados. Si están logueados, que se vea este otro o simplemente que no se vea ese, ¿Vale? Yo creo que esto hoy en día, sobre todo si tienes una web donde das acceso a algún tipo de contenido, ya sea a facturas de alguien que te ha hecho una compra en tu tienda online, o ya sea una web de membresía, o ya sea lo que sea, que alguien tenga acceso a la web y que en función del tipo de usuario que sea o desde donde acceda, porque como te digo, también se puede elegir qué menú se van a mostrar en función del dispositivo desde el que se accede, pues como digo, podrás modificarlo a tu gusto. En mi caso, por ejemplo, cuando eres suscriptor, simplemente en mi menú sale el blog, porque sé que a veces he tenido la tentación de quitarlo para simplificar más todavía y simplemente dejar el menú de mi cuenta y el menú de salir, de desconectar, pero sé que os gusta entrar en el blog y demás, así que os lo dejo ahí visible también. Y los que no son suscriptores, además del elemento del blog y de mi cuenta, por si necesitan acceder, también tienen un botón para descubrir más cursos, porque si todavía no estás apuntado, pues me interesa que veas todos los cursos que tengo para que por si te quieres apuntar. Y también el menú de contacto Y por ejemplo hace poco he estado probando un sistema de notificaciones para notificar cuando hay algo nuevo en la web y no me interesaba por la forma en la que funcionaba, no me interesaba que se mostrase en móvil. Pues con este plugin también lo que hice fue ocultar ese elemento que dediqué a las notificaciones que ahora mismo lo tengo quitado, voy a hacer unas pruebas y a ver cómo lo implemento, pero durante las pruebas decidí quitarlo de móvil porque me parecía, no me gustaba cómo quedaba y creo que mermaba un poco la experiencia así que lo quité y lo hice con este plugin. Se puede hacer por código y tengo un vídeo de la zona código en el que os lo explico, pero con el plugin este es que tenemos muchísimas posibilidades por código sería mucho más complejo conseguir tanto control aquí mucho más fácil porque tienes tu panel y lo puedes ir controlando todo como ahora hablaremos que precisamente esto de plugin o código, de esto va este episodio y vamos a hablar que esta es una de las cosas importantes a la hora de decidir si queremos una cosa u otra. Entonces vamos con el tema central del programa que es cuándo usar plugins y cuándo usar código. En primer lugar vamos a dejar una cosa clara, en WordPress todo es código, los plugins son trocitos de código que tú instalas y usas. ¿Qué pasa? Que con un plugin no estás escribiendo tú el código te viene ya empaquetadito y tú lo usas. Además la principal diferencia es que normalmente un plugin te viene con un menú de ajustes o un panel para gestionar lo que sea que haga el plugin. Hay veces que no, que es un plugin muy chiquitito que simplemente lo instalas y funciona, no tienes que configurar nada. Pues en ese caso por ejemplo sería lo mismo que tú cogieses ese código que ha utilizado el desarrollador para crear el plugin y lo pongas en el functions php de tu child theme. ¿Así que por ejemplo aquí no habría diferencia alguna entre usar código o usar un plugin, simplemente que el plugin pues tú lo ves ahí en plugins y a lo mejor pues no te gusta ver 40 plugins en la parte de plugins pero esto al final en este sentido es una tontería porque si el plugin es liviano no tiene apenas impacto, qué más te da tener un plugin más, un plugin menos? ¿Vale? Y luego por supuesto tú puedes crear tus propios plugins, puedes coger por ejemplo si todos los trocitos de código que pones que están enfocados a la seguridad, pues te creas un plugin de seguridad como vemos en el curso de seguridad en WordPress. También por supuesto tenemos el típico plugin de funciones, que es un plugin que solemos crear para poner código, en este caso todo el código que va relacionado con nuestra web en general y no directamente con el theme, porque si va con el theme pues lo ponemos en el functions PHP de nuestro child theme, pero si no pues lo vamos poniendo en el plugin, así si cambiamos de theme no tenemos problema. Esto vemos también cómo crearlo por supuesto en uno de los vídeos primeros de la zona código, así que eso lo dejamos claro, plugins no dejan de ser código. ¿Qué pasa? Que normalmente es algo que sería complejo para nosotros hacer por código, sobre todo la parte de tener un panel con ajustes, con administración y demás que es muchísimo más cómodo de utilizar que no andar retocando código, así que eso supondría la mayor diferencia. Después os quiero hablar un poco en la línea de esto, de cuándo creo yo que es buena idea usar un plugin o cuando creo que es buena idea usar código, en función de dos factores interesantes. Uno, la usabilidad, como te comentaba, un plugin normalmente te va a aportar un menú, un panel de configuración donde tú puedes retocar las cosas para que después el plugin haga lo que quieras que haga, pues si necesitas ese menú lógicamente tienes que tirar por un plugin, porque muchas veces decimos no, yo quiero plugins cuanto menos posible, pero claro, haces por código una modificación, pero a lo mejor esa modificación no es para implementarla y olvidarte, sino que tienes que a su vez ir modificando ese código, pues quizás eso sea mucho más tedioso, te lleve mucho más tiempo y en definitiva pierdas usabilidad, que es de lo que estamos hablando en esta parte, pues entonces tira por un plugin. ¿Luego otra cosa importante, la implementación es para ti o es para otros? Por ejemplo esto me pasa mucho muchas veces estoy creando una web y digo esto lo podría hacer por código, ¿Qué pasa? Que es que esta parte seguramente el cliente necesite utilizarla, necesite cambiar aquí una imagen, necesite cambiar algo, con lo cual si eso después el cliente al que yo le doy la web va a tener que tocarlo, una de dos, o tengo que hacerlo de tal forma que aunque lo haga por código sea sencillo para esa persona. Pero por ejemplo podría si hago una modificación por código, luego lo que podría hacer en lugar de a lo mejor poner el código tal cual en la parte de HTML, por ejemplo de las páginas o de las entradas, utilizar un shortcode, que en el curso de WordPress avanzado vimos cómo crear nuestros propios shortcodes, pues esto es una muy buena alternativa. Los shortcodes son muy útiles sobre todo para el usuario que no quiere lidiar con código. Aquí por ejemplo es algo que debes tener en cuenta, si lo va a usar un cliente, tienes que hacerlo usable para el cliente, ya sea que tengas que pelearte un poquito más con el código para que funcione en base a shortcodes y tu cliente simplemente tenga que poner un código o buscar un plugin que haga lo que estás intentando hacer y que ya tu cliente tenga un panel sencillito y que no le cueste cambiar nada. Sí, y lo mismo que para un cliente, lo digo para ti, si encuentras un trozo de código por ahí para pegarlo en tu web, pero luego resulta que no sabes modificarlo, que cuando vas a querer cambiar algo se te va todo por ahí porque se te ha ido una comilla, pues la hemos liado. Vale, esto en cuanto a usabilidad. Pero después hay otro factor importante que es el rendimiento. Como en todo. Hay plugins que están bien desarrollados, bien optimizados, hay otros que no tanto, pero lo mismo con el código, porque el plugin, como te digo, no deja de ser código. Y si lo que tú estás buscando implementar conlleva que el código que uses tenga mucho impacto en el rendimiento de tu web, lo va a tener, ya sea que copies y pegues el código o que instales el plugin con ese código ya puesto. ¿Qué pasa? Que a veces, o muchas veces, los plugins normalmente traen más cosas de las que podemos necesitar. En ese supuesto, entonces sí puedes buscar un trocito de código de alguien y pegarlo en tu web. Luego tenemos una parte importante que se habla mucho, que es el JavaScript, dónde se carga el JavaScript de ese plugin o de ese código. Y esto puede afectar bastante al rendimiento de una web. ¿Por qué? Pues bien, porque imagina que tienes un plugin para poner un pop up o una llamada a la acción en una página muy concreta, pero ese plugin utiliza JavaScript, pues para que el CTA, el Call to Action, pueda aparecer de repente para que se produzcan ciertas transiciones, para que la gente pueda cerrar ese pop up. Normalmente, aunque hay formas de hacerlo con CSS, normalmente esto tiene JavaScript y el problema muchas veces es que ese JavaScript, en lugar de cargarse simplemente el archivo que contiene ese código, en lugar de cargarse simplemente en la página donde estás utilizando ese popup o eso que estés usando, se carga en todas las páginas que abres, con lo cual esto pues hace que tu web tarde en cargar en cualquier página que se esté utilizando. Más todavía si ese JavaScript está en el header de tu web, es decir, previo a la carga de los contenidos, esto sí que hace que se ralentice, sobre todo de cara a Google y a los motores de búsqueda, pues notan que hay un retraso en la carga de la web. ¿Qué alternativas hay? Pues que el JavaScript se cargue al final, después de que se cargue todo el contenido, después se cargue el JavaScript, esto es la mejor práctica, lo que pasa que hay veces que para algunas cosas no es posible y hay que cargarlo arriba. Y otra opción es que se cargue solo en la página en cuestión donde vas a utilizar ese trozo de código o ese plugin. Y esto lo vemos en el curso de velocidad en WordPress dedico una clase a ello, a cómo cargar plugins de forma selectiva, es decir, que un plugin, los archivos que vienen con un plugin solo se carguen en las páginas que tú digas. Y para esto hay varios plugins, os digo los nombres y os lo dejo en las notas del programa. Tenemos Plugin Logic, Plugin Load Filter y Plugin Organizer. Los tres hacen lo mismo o muy parecido. Plugin Logic lleva bastante tiempo sin actualizarse, yo viendo que ya lleva tanto tiempo sin actualizarse, tiraría por uno de los otros dos que sí que se actualizan regularmente y se mantienen al día, ¿Vale? Los otros dos son Plugin Load Filter y Plugin Organizer y te permiten eso, decir por ejemplo, pues este plugin que te digo para pop ups, como sólo tengo un pop up en la página de suscríbete, pues sólo quiero que se cargue en esa página, que los archivos de ese plugin se carguen en esa página, con lo que la única página que va a tardar un poquito más en cargar, porque se van a cargar los archivos de ese plugin, el JavaScript y lo que sea, va a ser esa, ¿Vale? Las demás se van a cargar de forma normal, porque no se va a estar cargando ese código extra que viene con ese plugin. Ahora con esto, cuidado, esto de cargar de forma selectiva y utilizar estos plugins de carga selectiva, porque si no tienes cuidado te puedes cargar algo de tu web entre comillas vale, o ver que algo que antes funcionaba ahora deja de funcionar porque realmente el plugin necesitaba funcionar a lo mejor en la parte de administración de tu web también. Es decir, hay que tener un poquito de tiento con esto, yo lo probaría primero en una web de pruebas, pero sin duda son herramientas fantásticas porque te permiten eso, cargar solo los plugins donde sea necesario. Y el último punto que quería tratar es la eterna pregunta de cuántos plugins debería usar como máximo. A estas alturas del episodio sabrás que da un poco igual, que hay plugins que son enormes como WooCommerce, como WPML, como un constructor visual, pero claro, son enormes pero te dan tanto que los tienes que tener. Ahora, si tienes 10 plugins del peso de WooCommerce, pues imagínate lo que tienes ahí liado en tu web. Entonces no es lo mismo tener WooCommerce más 10 plugins pequeñitos que hacen cosas pequeñas o que están muy bien optimizados que como digo 10 WooCommerce, ¿Vale? Así que realmente lo que necesites, busca un balance entre rendimiento, usabilidad y funcionalidad y ya está, ¿Vale? ¿Y sobre todo si tienes un buen hosting, que eso es importantísimo, pues no tienes que andarte con tanto cuidado de no, no voy a instalar un plugin más porque entonces mi web va a ir lenta, no tiene sentido, vale? Primero tienes que tener un buen entorno, por supuesto, optimizar lo que puedas de tu web, lo vemos en el curso de velocidad, y luego tener un buen servidor, un buen servicio de hosting. Así que a modo de cierre, lo más importante es que conozcas tus necesidades y tus objetivos, saber cuándo necesitas un plugin y cuándo puedes usar a lo mejor unas líneas de código, porque ese plugin trae demasiadas cosas. Y también importante conocer el impacto en el rendimiento que puede tener cualquier cosa que implementes, ya sea un plugin o ya sea código. Esto normalmente lo puedes conocer viendo un poco, buscando en Google sobre ese plugin o sobre si es un código que ves en algún sitio. Sobre los comentarios también ya te he hablado de que es importante dónde se carga el JavaScript, en el caso de que haya JavaScript, pues con estas pildoritas ya puedes tener un poquito más una noción de qué es lo que estás poniendo en tu web y si tú crees que merece la pena ponerlo o no. Y como siempre, para seguir aprendiendo a gestionar tu negocio o proyecto con WordPress, puedes probar el área para suscriptores durante 15 días sin compromiso. Tienes por ejemplo el curso de velocidad del que hemos hablado hoy, tienes las opciones de crear tus propios plugins, un plugin de seguridad, un plugin para funcionalidades, todo esto lo vemos en el curso también la zona código que te he recomendado hoy, el último vídeo que es ya el vídeo 57, por supuesto, soporte directo conmigo, ¿Vale? Todo esto lo puedes probar durante 15 días, si te convence, pues nada, no tienes que hacer nada, sigues y si no me contactas, oye Gonzalo, que no quiero seguir, te devuelvo tu inversión de 10 euros y listo, ¿Vale? Sin preguntas, sin problemas ni nada. Y nada más, si te ha gustado el episodio de hoy y quieres ayudarme a que siga creciendo, a que siga creando episodios como este, ya sabes que la forma en la que puedes aportar tu granito de arena es dejándome una valoración en iTunes. No vas a tardar nada, vas a tu aplicación de podcast, busca WordPress Semanal y dejas la reseña que consideres y ya sabes que a mí me ayuda muchísimo, que te lo agradezco un montón. Y si estáis escuchándome desde otra plataforma, desde otra aplicación de podcast, también muchas gracias. Sea cual sea la acción que toméis, si hay para reseña, si la dejáis, fantástico, si son comentarios, fantástico también, si son me gustas, tres cuartos de lo mismo, ya sabéis que todo suma. Y nada más por este episodio, nos seguimos escuchando. Adiós.
More from Gonzalo
518 | Redes sociales, precios personalizados, audios desde Drive y temas de bloques (Q&A)
513 | Por qué sigo usando estos plugins después de tantos años (y cuáles he abandonado)