Joomla! es un sistema de gestión de contenidos (o CMS, por las siglas en inglés, Content Management System) que permite desarrollar sitios web dinámicos e interactivos. Permite crear, modificar o eliminar contenido de un sitio web de manera sencilla a través de un "panel de administración". Es un software de código abierto, programado o desarrollado en PHP y liberado bajo Licencia pública general GNU (GPL).

Este administrador de contenidos puede utilizarse en una computadora personal local (localhost), en una intranet o a través de Internet, y requiere para su funcionamiento una base de datos creada con un gestor de bases de datos (MySQL es lo más habitual), así como de un servidor HTTP Apache.

Su nombre es una pronunciación fonética jumla para anglófonos de la palabra en idioma suajili (swahili), que significa "todos juntos" o "como un todo". Se escogió como una reflexión del compromiso del grupo de desarrolladores y la comunidad del proyecto.

Características

fue como: generación de código HTML bien formado, gestión de blogs, vistas de impresión de artículos, flash con noticias, foros, polls (encuestas), calendarios, búsquedas integradas al sitio y soporte multi-idioma, son algunas de las herramientas que se pueden crear con Joomla! y debido a las tendencias actuales existe una gran apuesta por e-commerce en esta empresa.

Desarrollo del proyecto

Joomla corresponde al grupo de soluciones de código abierto, es un producto de software libre. Para el desarrollo de sus múltiples frentes, usa diferentes formas de comunicación como son: los encuentros por medio de IRC, foros, listas de correo, wikis y blogs. Este gestor de contenidos GDC sigue las pautas marcadas por el bazar, con su objetivo principal de dar solución a las necesidades de todos aquellos que participan de una u otra forma en el proyecto.

Estructuras organizativas/asociativas o de decisión

La gestión de administración principal del proyecto está delegada al grupo principal ("Core Team"). Todos los miembros de este grupo trabajan en conjunto como un solo grupo, comprometidos para guiar a Joomla dentro del movimiento de código abierto. Este grupo está compuesto por diferentes perfiles, con variadas experiencias y una serie diversa de disciplinas.

Este grupo nace cuando se experimentó el surgimiento de Joomla en 2005. El grupo principal es mucho más que una congregación de desarrolladores, su responsabilidad principal radica en la organización con respecto Joomla en su estructura funcional como organización y no únicamente en la programación del sistema de gestión de contenidos.

El proyecto se constituye de varios grupos que se han creado para enriquecer el conocimiento que la comunidad Joomla proporciona. Cada uno de los grupos se centra en un aspecto específico de Joomla que es importante para la expansión y desarrollo, el grupo principal no puede estar en cada discusión de estos temas, por ello existe un líder y un cabecilla alterno en cada uno de los grupos que se encargan de comunicarse de forma directa con el Grupo Principal.

Los grupos de trabajo suministran un canal de comunicación esencial entre la gran comunidad de Joomla y el grupo principal de forma que traen inquietudes a la luz, mediación de cambios y extensión de información.

{imagen}

Arquitectura

Está desarrollado en una arquitectura Modelo Vista Controlador (MVC), lo que permite:

  • Interactuar directamente con la parte de vista de Joomla!, lo que permite sobrescribir desde el template de Joomla! la parte de vista de un componente, módulo o plugin, lo que permite un gran nivel de personalización en el desarrollo de los templates.
  • Un desarrollo de componentes módulos y plugins basados en la arquitectura base del CMS.
  • Actualizaciones rápidas en caliente, actualizando los elementos requeridos para los cambios de versión con la plataforma funcionando.

{imagen}

Industria relacionada

Open Source Matters Inc (OSM) es una organización sin ánimo de lucro que se estableció conforme a las leyes de los Estados Unidos y existe para soportar la parte legal y financiera del proyecto de código abierto Joomla. OSM se ha incorporado como una organización sin ánimo de lucro de Nueva York de forma que se garantiza que el proyecto Joomla y futuros proyectos tengan una ventana para la participación de voluntarios, para habilitar la contribución de la propiedad intelectual y los fondos de forma que se provee un vehículo legal para limitar la exposición de proyectos.

Extensiones

Una de las mayores potencialidades que tiene este CMS es que su funcionalidad base puede ser expandida a través de extensiones o mediante las mismas; los tipos de extensiones son: Componentes, Módulos, Plantillas, Plugins y Lenguajes. Cada uno de estos tipos extiende las funcionalidades de Joomla! de una manera diferente.

Componentes

Son extensiones que cargan como elemento funcional principal en Joomla!, un componente usualmente agrega una funcionalidad de impresión de contenido a Joomla, este es el caso de com_content que es el componente principal de administración de contenido estándar de Joomla, se caracterizan porque Joomla de forma nativa solo soporta el manejo de un solo componente al mismo tiempo.

Módulos

Son extensiones que permiten cargar en una posición de una plantilla de Joomla una salida de datos o una funcionalidad específica, usualmente un módulo nos permite colocar la salida de un componente.

Plantillas

Son extensiones que permiten cambiar la parte de vista del CMS, el archivo index.php de la plantilla de Joomla! determina dónde cargarán los componentes y los módulos.

Plugins

Los plugins son extensiones que corren bajo disparadores seleccionados, realizando acciones seleccionadas mientras el CMS realiza la carga.

Lenguajes

Los lenguajes son archivos de traducción que permiten colocar el CMS en cualquier idioma, Joomla es multi-idioma nativo.

Existen cientos de extensiones disponibles y con diversas funcionalidades como por ejemplo:

  • Generadores de formularios dinámicos
  • Directorios de empresas u organizaciones
  • Gestores de documentos
  • Galerías de imágenes multimedia
  • Motores de comercio y venta electrónica
  • Software de foros y chats
  • Calendarios
  • Software para blogs
  • Servicios de directorio
  • Boletines de noticias
  • Herramientas de registro de datos
  • Sistemas de publicación de anuncios
  • Servicios de suscripción
  • Integración con otras plataformas
  • E-commerce

Ejemplos

Algunos sitios importantes como Linux.com, iTWire.com e incluso eBay.com están basados o usan de algún modo el sistema de gestión de contenidos Joomla Asimismo, el sitio oficial de Joomla cuenta con un directorio de sitios de ejemplo.