Joomla!.- 1.- Características

Joomla! está escrito en lenguaje PHP y funciona sobre bases de datos MySQL. Su core ofrece una serie de funcionalidades básicas las cuales pueden ser ampliadas por medio de extensiones desarrolladas por la comunidad estructuradas en torno a seis categorías: componentes, módulos, plugins, plantillas, librerías y lenguajes. Estas seis categorías conforman una terminología básica que debemos conocer y comprender para trabajar con este CMS.

Los componentes son mini aplicaciones que funcionan dentro de Joomla!, como pueden ser herramientas para la creación de formularios o galerías de imágenes. Los módulos son áreas visibles de la interfaz las cuales contienen extensiones que puede estar asociadas a determinados componentes, como puede ser el caso del formulario del login para acceder al menú de administración o una relación de los últimos artículos publicados. Los plugins son rutinas, funciones, asociadas a determinados eventos, es decir, cuando se produce una determinada acción, como puede ser la apertura de un artículo a través de un item del menú, se ejecuta una determinada función, como puede ser la apertura del módulo correspondiente para la visualización de dicho artículo. Por su parte las librerías son paquetes de código que pueden ser empleados tanto por las funciones del core como por otras extensiones. Las plantillas son las encargadas de controlar la estructura física y visual del layout de las páginas mediante el sistema de posicionamiento a través de módulos.Por último, los lenguajes son los paquetes de idiomas que pueden ser usados para los menús y elementos de navegación, y que pueden ser mostrados al usuarios cuando visita nuestro sitio para que éste elija su idioma de navegación.

Entre otras, podemos señalar las siguientes como características principales de Joomla!:

  • Sistema de administración sencillo y avanzado, con una interfaz limpia, clara y concreta que nos permitirá realizar la gestión de nuestro sitio y sus contenidos de manera eficaz.
  • Organización del sitio web, basada en secciones y categorías, lo cual permite la construcción de una estructura sólida, consistente, ordenada y sencilla, tanta para los autores como para los usuarios del sitio.
  • Publicación de contenidos, a través de un editor WYSIWYG, TinyMCE en las versiones anteriores a la 3.7, a partir de la cual se va a implementar CKEditor, que permite formatear los textos e imágenes, así como editarlos y modificarlos en cualquier momento. Este editor también permite la insercción de módulos dentro de los propios artículos simplemente con presionar un botón dentro del editor. También disponemos de una gran cantidad de posibilidades para mostrarlo del Lado del Cliente mediante módulos preinstalados con la finalidad de visualizar, por ejemplo, los artículos más populares, los últimos artículos, artículos relacionados, y mucho más.
  • Escalabilidad y extensión, mediante la instalación (o desinstalación) de extensiones, ya sean éstas componentes, módulos, plugins, plantillas o idiomas, que aportan valor para los visitantes de nuestro sitio, disponibles en el directorio de extensiones de Joomla!. En la actualidad cuenta con más de 8.000 posibilidades de extensión que cubren todas las necesidades para la gestión de contenidos.
  • Internalización, ya que Joomla! se encuentra traducida a 64 idiomas, pudiendo los desarrolladores de un sitio presentarlo en varias lenguas sin necesidad de tener que acudir a extensiones externas al core de instalación.
  • Administración de usuarios o ACL (Access Control List), jerárquicamente de forma predeterminada, para el establecimiento de los diferentes niveles de permisos dentro de la gestión, administración y creación del sitio, lo cual permite una completa y avanzada gestión de los permisos. Este sistema nos permite controlar en todo momento quién puede ver qué y quién puede editarlo o controlarlo.
  • Diseño y aspecto estético del sitio, de manera sencilla y mediante unos escasos clics, gracias al sistema de gestión de templates. En Joomla! las plantillas no se aplican de forma directa, sino que se hace a través de estilos, que son variantes de una plantilla en los que se han personalizado ciertos aspectos, como puede ser el color de la tipografía, la imagen del logotipo, etc.
  • Navegación y menús, a través del menú de administración del sitio, con el cual podremos crear tanto menús y elementos de menú como sea necesario para una exitosa navegación por nuestro sitio web. Se puede estructurar la jerarquía de los menús de forma totalmente independiente de la estructura de contenido e incluso poner un mismo menú en varios lugares diferentes. También se producen rutas de navegación (breadcrumbs) de manera automática para facilitar la navegación y usabilidad del sitio.
  • Administrador de archivos multimedia, a través de un potente gestor de medios, el cual nos permite subir, organizar y gestionar nuestro archivos multimedia y carpetas de una manera sencilla. Se pueden manejar varios tipos de archivos gracias a la configuración MIME del gestor, el cual se encuentra integrado con el editor de contenidos para que se pueda acceder a las imágenes y al resto de archivos almacenados en el sistema rápidamente y así mejorar la creación de contenido.
  • Gestión de módulos, lo cual permite modificar y personalizar su posición y personalizar de esta manera la presentación de nuestro sitio.
  • Sindicación y gestión de servicios de noticias, tanto de salida ofreciendo la sindicación a los contenidos generados dentro de nuestro sitio, como la integración de otros canales RSS de forma controlada y organizada. 
  • Soporte para la publicidad, en el caso de que queramos generar ingresos para nuestro sitio, mediante un sistema de gestión de banners sencillo, que nos permite crear clientes y campañas, incluso con códigos personalizados, establecer el número de impresiones para cada uno de ellos, seguimiento de los clics, etc.
  • Estadísticas de las visitas a nuestro sitio, con la información relativa al navegador, el sistema operativo y detalles de las páginas y documentos visitados.
  • Bien apoyado y soportado por una amplia comunidad de desarrolladores extendidos por todo el mundo, que ayudan a construir, mantener y comercializar extensiones y proyectos Joomla!
  • Sistema de ayuda integrado, el cual puede ser utilizado en todos los niveles de usuario, lo que ayuda a entender plenamente todas las opciones de la página. También existe un glosario de términos, un verificador de versión y un solucionador de problemas.
  • Sistema de actualización fácil, con un sólo clic, tanto para el core como para las diferentes extensiones instaladas en nuestro sistema. En la actualidad también se ofrece soporte para PHP 7, si bien, hasta la versión 3.6 se da soporte a PHP 5.4 o superior.