Una de las preguntas que me han hecho hace poco uno de los suscriptores de mi newsletter es si le podía explicar qué era un plugin en Joomla.
Qué es un plugin en #Joomla y cómo se utiliza en tu página web TuitéaloPor supuesto, le he contestado en cuanto he podido y, ya de paso, he decido crear este artículo por si a alguien más le resulta interesante y le viene bien.
Qué es un plugin en Joomla
En Joomla tenemos diferentes tipos de extensiones: componentes, módulos y plugins (aunque los templates también se consideran extensiones).
Las extensiones en Joomla no dejan de ser código que incrementan y/o mejoran la funcionalidad nativa de este gestor de contenidos.
Entre estos tipos de extensiones, como te comento, tenemos los plugins que, quizás, podemos considerar como los "más pequeños".
Básicamente, un plugin es un código que se ejecuta cuando ocurre algún evento.
Es decir, sigue una secuencia del tipo: "Si ocurre X cosa, entonces haz Y".
En un ejemplo real para que quede más claro: "Si un usuario se registra, entonces lo suscribes a mi newsletter"
.
Por defecto, Joomla no tiene esta funcionalidad. Pero sí tiene un evento llamado "onUserAfterSave" ("después de guardar al usuario").
Lo que puedes hacer es crear un plugin de usuario que haga lo que necesites (en este caso, suscrubir al usuario a una lista de suscripción).
Esto es lo que he hecho en mi plugin SIS ActiveCampaign: puedes ver en este artículo lo que hace y el código utilizado.
Tipos de plugin en Joomla
En Joomla contamos con varios tipos de plugins en función de donde se lanzan esos eventos o disparadores.
Como hay muchos, te voy a hablar de los 3 más habituales y, al final de este artículo, te pongo el enlace a todos los que hay (siempre viene bien conocerlos ya que te pueden ayudar a solucionar alguna cosa de forma sencilla).
- De sistema: cuando se carga el framework, el sistema de enrutamiento, se carga la cabecera de la web ()...
- De usuario: cuando un usuario hace algo (se registra, hace login, cierra sesión, se elimina...).
- De contenido: cuando se carga un artículo (antes de cargar el título, antes o después de cargar el contenido...).
Los plugins que yo he desarrollado y que puedes ver en mi GitHub son todos de estos 2 tipos.
Pero como te digo, hay muchos más y cada uno tiene diferentes eventos.
Por tanto, te recomiendo que los estudies con detenimiento que te pueden solucionar muchas cosas de una forma muy sencilla.
NOTA: Para extensiones de terceros tendrás que ver la documentación de cada uno para saber si tienen o no y cómo se llaman.
Cómo se utlizan los plugin en Joomla
El uso es muy fácil: tan solo tienes que instalarlos de la manera habitual (si aún no sabes cómo hacerlo, puedes leer este artículo en el que te explico varias formas de instalar extensiones en Joomla), configurarlos (si requiere configuración) y habilitarlos.
Una cosa que tienes que tener en cuenta es el orden en el que están instalados y, por tanto, el orden en el que se ejecutan.
En la captura te muestro los plugins de autenticación y el orden en el que se ejecutan.
Si desarrollas un plugin nuevo y quieres que se ejecute antes del nativo de Joomla, ya sabes que tendrás que ponerlo en esa primera posición.
Recuerda que puedes ordenarlos según necesites.
Para hacerlo solo tienes que filtrar por el tipo, hacer clic en las flechitas que indico en la captura y arrastrar y soltar.
Enlaces de interés
Tienes más información sobre Plugins en la documentación oficial de Joomla:
Como siempre, espero que te haya gustado y que me ayudes a compartirlo para que más gente sepa Qué es un plugin Joomla y cómo usarlo en su página web.
Qué es un plugin en #Joomla y cómo se utiliza en tu página web Tuitéalo