4. Programando nuevas funciones en nuestro plugin
En la lección anterior terminamos un plugin muy básico pero que cumplía a la perfección su objetivo: Añadir la propiedad noopener al atributo rel de nuestros enlaces que se abren en otra ventana. No obstante queremos ir más allá y seguir mejorando nuestro plugin con otras funcionalidades interesantes ?
Añadir selección de categorías
Los artículos en Joomla se pueden usar con una gran cantidad de propósitos gracias a los campos personalizados, desde crear un portfolio, hasta tener un blog. Y gracias a su arquitectura podemos además combinar todas estas funciones dentro de un mismo sitio. Por eso es importante ofrecer muchas posibilidades para que el desarrollador del sitio web pueda adaptar nuestros plugins al máximo. Para los plugins de contenido es muy interesante incluir una opción que permita no ejecutar nuestro plugin en algunas categorías concretas.
Así pues, nos ponemos manos a la obra y añadimos un parámetro para gestionar estos casos y hacer que nuestro plugin sólo funcione en las categorías de los artículos Joomla elegidas por el usuario.
En este vídeo añadimos el parámetro de tipo categorías y vemos cómo recuperar su valor en el momento de la ejecución del plugin:
Este contenido está únicamente disponible para los suscriptores. Puedes identificarte en este enlace o suscribirte a los cursos.
Excluir el plugin en algunas páginas de nuestro sitio
Los plugins en Joomla se ejecutan siempre que se llame al evento adecuado y en principo Joomla no trae ningún otro mecanismo para controlar las páginas de nuestro sitio donde pueden ejecutarse. Para añadir más flexibilidad aún, nuestro plugin permitirá exluir páginas concretas del sitio. Utilizaremos el campo elemento de menú para ello y aprenderemos a ver cómo recuperar las opciones de configuración de forma segura.
En este vídeo añadimos el parámetro de tipo elemento de menú y profundizamos en la forma en la que se recuperan las opciones de configuración añadiendo valores predeterminados y filtrado para tener un código más seguro:
Este contenido está únicamente disponible para los suscriptores. Puedes identificarte en este enlace o suscribirte a los cursos.
Añadir external a la propiedad rel
HTML tiene una especificación muy amplia y en el caso de los enlaces podemos complementar mucho la información que damos a los usuarios gracias a las etiquetas y propiedades. En el caso de la propiedad rel, tenemos muchos valores que podemos usar además de los más conocidos (nofollow, noreferrer...) y ya que tenemos un plugin para modificar esta propiedad ¿por qué no le añadimos más funcionalidades? En nuestro caso incluiremos una opción más que permita al usuario elegir si quiere indicar el atributo external en los enlaces que vayan fuera de nuestro dominio y utilizaremos funciones nativas de CSS para conseguir nuestro objetivo.
En este vídeo añadimos un nuevo parámetro a nuestro plugin para detectar enlaces hacia fuera de nuestro sitio y veremos algunas peculiaridades de las cadenas de idioma:
Este contenido está únicamente disponible para los suscriptores. Puedes identificarte en este enlace o suscribirte a los cursos.
Referencias
Este contenido está únicamente disponible para los suscriptores. Puedes identificarte en este enlace o suscribirte a los cursos.
Descargas
Aquí puedes descargar el plugin con el código que hemos hecho hasta ahora:
Este contenido está únicamente disponible para los suscriptores. Puedes identificarte en este enlace o suscribirte a los cursos.