
Aunque Joomla no es un código fuente popular utilizado para el desarrollo de sitios web, Joomla sigue siendo un CMS abierto con plena potencia, así como una estructura clara y un modelo MVC para desarrollar aplicaciones para empresas.
# Entender Joomla desde lo básico hasta lo avanzado # Personalizar Joomla de la forma más detallada # Entender los principios de funcionamiento # Entender las ventajas comparado con otros códigos fuente
Joomla es un potente CMS de código abierto, ideal para crear sitios web empresariales, comercio electrónico y blogs personales. El curso ayuda a los estudiantes a dominar la plataforma y a practicar directamente.
Los estudiantes recibirán una guía paso a paso desde la instalación, configuración y gestión de contenido de Joomla hasta el desarrollo de plantillas y la ampliación de funcionalidades. Es una opción ideal tanto para principiantes como para programadores que desean mejorar sus habilidades.
Joomla es uno de los CMS más populares del mundo, con una gran comunidad, numerosas extensiones y una gran capacidad de personalización. Aprender Joomla ayuda a ahorrar tiempo y dinero al desarrollar sitios web.
En comparación con programar un sitio web desde cero, Joomla ofrece una plataforma sólida, escalable y altamente segura, en la que confían muchas empresas. Dominar Joomla abre oportunidades profesionales en el campo del diseño y desarrollo web.
El curso es adecuado para principiantes, estudiantes de TI, autónomos en diseño web y también para empresas que quieran gestionar sus propios sitios web.
Cualquier persona que desee crear o administrar un sitio web puede unirse. El contenido del curso está diseñado para ser flexible, accesible y adecuado para personas sin conocimientos de programación.
Los conceptos básicos se centran en la instalación de Joomla, la gestión de artículos, la creación de menús, los permisos de usuario y la instalación de plantillas.
Los estudiantes se familiarizarán con la interfaz de administración, comprenderán la estructura de Joomla y dominarán las habilidades para crear un sitio web sencillo. Este es un paso fundamental para avanzar a las secciones avanzadas.
Los estudiantes están expuestos al desarrollo de extensiones, optimización SEO, integración de complementos y personalización de plantillas según las necesidades reales.
Además de los conocimientos técnicos, a los estudiantes también se les enseña cómo operar un sitio web Joomla profesional, administrar el alojamiento, la seguridad y manejar errores comunes.
Una vez que domines Joomla, podrás crear tu propio sitio web, realizar proyectos de diseño web para clientes o postularte para un puesto de desarrollador web.
Joomla no es sólo una habilidad personal sino también una herramienta que aporta valor empresarial, ayudando a implementar sitios web rápidamente, ahorrar costos y expandirse según las necesidades.
Joomla es más flexible que WordPress en términos de permisos y gestión de seguridad, y es más fácil de usar que Drupal para principiantes.
Gracias a su equilibrio entre facilidad de uso y potentes funciones, Joomla se ha convertido en una opción popular para pequeñas y medianas empresas, así como para proyectos web de tamaño mediano.
La demanda de contratar personal competente en CMS en general y Joomla en particular sigue siendo alta, especialmente en empresas de diseño web y agencias de marketing.
Los estudiantes pueden trabajar como freelancers, abrir servicios de diseño web o como administradores web para empresas. Esta habilidad les brinda ingresos sostenibles y oportunidades de desarrollo profesional.
Joomla se considera fácil de usar. Incluso sin conocimientos de programación, puedes familiarizarte rápidamente con él y crear un sitio web completo.
Las clases se presentan visualmente, con numerosos ejemplos prácticos. Los alumnos pueden progresar rápidamente tras unas pocas lecciones enfocadas.
El plan de estudios está diseñado desde básico hasta avanzado, combinando teoría y práctica en proyectos reales, ayudando a que los conocimientos se recuerden durante mucho tiempo.
Los estudiantes construirán y administrarán un sitio web completo utilizando Joomla, acumulando así experiencia práctica e implementando con confianza sus propios proyectos.
Este contenido le brindará una buena descripción general de Joomla, por qué sigue siendo una opción poderosa para el desarrollo de sitios web en el panorama tecnológico actual y lo ayudará a determinar si Joomla es la plataforma adecuada para sus objetivos y habilidades.
Joomla es un Sistema de Gestión de Contenido (CMS) completamente gratuito y de código abierto, escrito en PHP y con el sistema de gestión de bases de datos MySQL. Sin embargo, definir Joomla simplemente como un CMS no revelaría todo su potencial. Más precisamente, Joomla es un potente framework de aplicaciones web que proporciona una base sólida para crear no solo sitios web convencionales, sino también aplicaciones web complejas.
En un mundo tecnológico en el que constantemente surgen nuevas plataformas, Joomla sigue siendo líder gracias a sus irremplazables puntos fuertes:
Flexibilidad excepcional: Esta es la ventaja más destacada de Joomla. No estás limitado a un tipo específico de sitio web. Con Joomla, puedes crear prácticamente cualquier cosa: desde un simple blog personal, un portafolio de arte, un gran sitio web de noticias, hasta complejos sistemas de comercio electrónico, redes sociales internas o portales de información para empresas e instituciones educativas.
Gestión Avanzada de Usuarios (ACL - Lista de Control de Acceso): Esta es la clave que distingue a Joomla de muchos otros CMS. El sistema ACL de Joomla permite crear grupos de usuarios y asignar permisos de acceso, edición y publicación a contenido extremadamente detallado. Se puede especificar qué grupos de usuarios pueden ver qué artículos, quién puede editar qué módulos o quién tiene acceso a un componente específico. Esto convierte a Joomla en la opción ideal para sitios web comunitarios, sitios de noticias con varios consejos editoriales o sistemas internos que requieren seguridad y autorización estrictas.
Soporte multilingüe nativo: Si su proyecto está dirigido a un público internacional, Joomla es la opción perfecta. Las funciones de gestión y visualización de contenido multilingüe están integradas en el núcleo de Joomla, lo que le permite crear un sitio web completamente multilingüe sin necesidad de instalar extensiones complejas y, a veces, inestables.
Comunidad dinámica y de larga trayectoria: Lanzada en 2005, Joomla cuenta con una comunidad global de millones de usuarios y desarrolladores. Esto garantiza que la plataforma se mejore constantemente, con correcciones de errores y actualizaciones de seguridad publicadas regularmente. Y lo que es más importante, ofrece un amplio directorio de extensiones de Joomla con miles de componentes, módulos y plugins, lo que facilita la incorporación de prácticamente cualquier función a su sitio web.
Entender Joomla no solo como un "creador web", sino como una "plataforma de desarrollo", abre una perspectiva completamente nueva. No es solo para quienes buscan crear un sitio web con solo arrastrar y soltar, sino también un potencial campo de juego para programadores que buscan soluciones altamente escalables, seguras y personalizables.
Elegir el CMS adecuado es una de las decisiones más importantes al iniciar un proyecto web. Cada plataforma tiene sus propias fortalezas y debilidades. Aquí tienes una comparación detallada entre Joomla, WordPress y Drupal, los tres gigantes del mundo de los CMS de código abierto.
Criterios | WordPress | Joomla | Drupal |
Facilidad de uso | Muy fácil, apto para principiantes. | En promedio, la curva de aprendizaje es un poco más pronunciada que la de WordPress. | Difícil, requiere conocimientos técnicos y de programación. |
Capacidades de personalización | Alto, a través de miles de complementos y temas. | Muy alto, flexible en la creación de diferentes tipos de contenidos y diseños. | Extremadamente alto, un verdadero CMF (Content Management Framework). |
Gestión de usuarios (ACL) | Básicamente se necesitan complementos para ampliar. | Muy potente y detallado, integrado en el núcleo. | Muy fuerte, uno de los puntos fuertes. |
Soporte multilingüe | Se requiere complemento (por ejemplo, WPML, Polylang). | Muy potente, integrado en el kernel. | Muy potente, integrado en el kernel. |
Posicionamiento web (SEO) | Bueno, necesitas complementos (por ejemplo, Yoast SEO, Rank Math) para una optimización completa. | Buenas herramientas SEO básicas integradas, ampliables con extensiones. | Bueno, proporciona módulos potentes para la optimización SEO. |
Seguridad | Bastante bueno, pero es un objetivo común para los hackers debido a su popularidad. Requiere seguridad proactiva. | Bueno, la comunidad siempre se apresura a lanzar parches de seguridad. | Muy bueno, de confianza para organizaciones gubernamentales y grandes empresas. |
Comunidad y servicios | El más grande del mundo. | Grande y viejo. | Amplio y muy técnico. |
Gastos | Gratis (código fuente), el costo depende del alojamiento, tema/complemento pago. | Gratuito (código fuente), el costo depende del alojamiento, extensiones/plantillas pagas. | El código fuente gratuito y los costes de desarrollo y mantenimiento suelen ser más elevados. |
Objeto adecuado | Blog, sitio web para pequeñas y medianas empresas, sitio de noticias sencillo, principiantes. | Sitio web comunitario, sitio de noticias, revista en línea, sitio web multilingüe, comercio electrónico. | Sitios web gubernamentales, universidades, sistemas de información complejos, proyectos que requieren alto nivel de seguridad. |
Entonces, ¿cuándo deberías elegir Joomla?
Elige WordPress cuando: Necesitas un sitio web rápido y fácil de administrar, especialmente un blog o un perfil de empresa. Quieres una amplia selección de atractivos temas prediseñados y no te importa instalar muchos plugins para ampliar la funcionalidad.
Elige Joomla cuando: Tu proyecto requiere permisos de usuario complejos (por ejemplo, un sitio de noticias con varios niveles de editores, un sitio que permite a los miembros publicar). Necesitas un sitio web multilingüe potente desde el principio. Buscas un equilibrio entre la capacidad de personalización y una interfaz de administración intuitiva, sin la complejidad de Drupal.
Elija Drupal cuando: La seguridad es una prioridad absoluta. Su sitio web tiene una estructura de datos muy compleja con muchas relaciones anidadas. Está construyendo un sistema a gran escala y de alto rendimiento y cuenta con un equipo de programadores profesionales para implementarlo y mantenerlo.
Aprender Joomla es más que simplemente adquirir una habilidad; abre muchas oportunidades profesionales en la industria web. No importa quién seas ni cuáles sean tus objetivos, Joomla tiene un camino a tu medida. Identificar a qué grupo perteneces te ayudará a concentrarte en los conocimientos que más necesitas.
Usuarios finales: Son personas sin conocimientos técnicos. Podrías ser un estudiante que quiere crear un portafolio, un pequeño empresario que quiere gestionar su propio sitio de comercio electrónico, un bloguero o un profesional del marketing que necesita crear páginas de destino sencillas. Tu objetivo es usar Joomla como herramienta para crear y actualizar contenido rápidamente sin necesidad de modificar el código.
Administrador web: Tu función es la de "administrador" de uno o más sitios web Joomla. Las tareas diarias incluyen actualizar el contenido, gestionar usuarios, instalar y configurar extensiones, realizar copias de seguridad, actualizar versiones y garantizar el correcto funcionamiento del sitio web. Debes tener un conocimiento profundo de la estructura y la configuración de Joomla.
Diseñador web: Eres quien da vida a un sitio web, enfocándote en la interfaz y la experiencia de usuario (UI/UX). Tus habilidades incluyen la personalización de CSS, la creación de diseños únicos y el trabajo con frameworks de plantillas Joomla (como Gantry, T3, Helix) para crear interfaces atractivas, responsivas y únicas.
Desarrollador Joomla: Este es el nivel más alto. No solo usas lo disponible, sino que lo creas. Investigas a fondo el código fuente PHP de Joomla y desarrollas componentes, módulos y plugins personalizados para resolver problemas empresariales específicos que las extensiones existentes no pueden resolver. Entiendes la arquitectura MVC de Joomla y sabes cómo escribir código según sus estándares.
Al describir estas "rutas profesionales", se puede ver que aprender Joomla va más allá de simplemente crear un sitio web. Puede ser el comienzo de un trabajo estable o una carrera freelance en la vibrante industria web.
Resumen: Para evitar agobios, hemos diseñado una ruta de aprendizaje clara en 4 etapas. Esta ruta te ayudará a sistematizar tus conocimientos, desde los conceptos más básicos hasta la creación y programación con seguridad de funciones complejas para sitios web Joomla.
Aprender una plataforma potente como Joomla puede ser confuso para principiantes. ¿Por dónde empezar? ¿Qué aprender primero? La ruta de aprendizaje está diseñada para seguir un ciclo natural: Comprender -> Hacer -> Mejorar -> Crear. Esta estructura te ayuda a desarrollar conocimientos secuencialmente, gestiona las expectativas y te da una idea clara del progreso en cada etapa.
Objetivo: Comprender qué es Joomla y cómo funcionan sus componentes. Esta es la etapa fundamental, que determina la solidez de todo el conocimiento posterior.
Joomla se ha instalado correctamente en su ordenador personal (localhost).
Inicie sesión y familiarícese con el área de administración (Administrador).
Comprender la definición, la función y la relación de los conceptos centrales: Artículo, Categoría, Menú, Módulo, Componente, Complemento y Plantilla.
Objetivo: Aplicar la teoría aprendida a un proyecto real para convertir los conocimientos en habilidades. Esta fase se centra en la práctica.
Elija un proyecto sencillo para practicar, por ejemplo, un blog personal o un sitio web de perfil de empresa.
Crea tu propia estructura de categorías, escribe y presenta tus artículos.
Construir un sistema de menú de navegación para el sitio web.
Encuentre, instale y configure extensiones básicas y necesarias como formulario de contacto, editor avanzado, módulo de visualización de nuevas publicaciones.
Instalar y realizar personalizaciones básicas en una plantilla existente.
Objetivo: Lograr que su sitio web funcione correctamente. Esta fase se centra en que su sitio web sea más rápido, seguro y optimizado para los motores de búsqueda.
Aprenda a utilizar extensiones más avanzadas para SEO, seguridad y velocidad de la página.
Realice técnicas básicas de SEO en la página directamente en Joomla: habilite URL amigables, personalice títulos y meta descripciones.
Aprenda e implemente medidas de seguridad importantes: actualice periódicamente, use contraseñas seguras y realice copias de seguridad periódicamente.
Descubra el poder de los permisos ACL para una gestión eficiente de usuarios.
Objetivo: Romper los límites de lo disponible y empezar a crear tus propias soluciones. Esta es la etapa ideal para quienes desean convertirse en programadores profesionales de Joomla.
Aprenda sobre la arquitectura MVC (Modelo-Vista-Controlador): la base del desarrollo de extensiones en Joomla.
Aprenda a crear un módulo simple "Hola mundo" para comprender la estructura de una extensión.
Domine la técnica de "anulación de plantilla" para personalizar la apariencia de los componentes y módulos sin interferir con los archivos originales.
Comience a aprender sobre la API de Joomla para interactuar con la base de datos y las funciones principales del sistema.
Esta hoja de ruta garantiza que, ya sea que comiences con el objetivo de "aprender a crear un sitio web Joomla" o apuntes a "aprender a programar en Joomla", tendrás un camino claro a seguir, desarrollando tu conocimiento de manera constante y sin perderte.
Resumen: Este es el primer paso y el más importante. Te guiaremos detalladamente, con ilustraciones, sobre cómo instalar Joomla en tu ordenador (localhost) para una práctica segura y en un hosting real para que tu sitio web esté disponible en todo el mundo.
Antes de poder crear un sitio web, necesita un entorno en el que se ejecute Joomla. Hay dos opciones principales:
1. Localhost (Servidor local):
Localhost convierte tu ordenador en un servidor web. Es el entorno perfecto para aprender, probar y desarrollar sitios web sin conexión a internet y sin coste alguno. Cualquier cambio que realices será seguro.
Herramientas populares: XAMPP es una de las opciones más populares y fáciles de usar. Es un paquete de software que incluye todo lo necesario: Apache (servidor web), MariaDB (base de datos compatible con MySQL), PHP y Perl. XAMPP está disponible para Windows, macOS y Linux.
Instrucciones de instalación de XAMPP:
Vaya a la página de inicio de Apache Friends y descargue la versión de XAMPP que coincida con su sistema operativo.
Ejecute el archivo de instalación y siga las instrucciones. En la mayoría de los casos, puede simplemente hacer clic en "Siguiente" y mantener la configuración predeterminada.
Una vez instalado, abra el Panel de control de XAMPP e inicie dos servicios: Apache y MySQL.
2. Hospedaje (Servidor web real):
Una vez que esté listo para poner su sitio web en Internet, necesitará contratar un servicio de alojamiento.
Requisitos técnicos para Joomla: Para que Joomla funcione correctamente, su alojamiento debe cumplir con los siguientes requisitos mínimos (consulte siempre la última versión de Joomla para obtener información precisa):
PHP: Versión 8.0 o superior.
Base de datos: MySQL 5.6+, MariaDB 10.1+ o PostgreSQL 11.0+.
Servidor web: Apache 2.4+ o Nginx 1.18+.
Utilidades PHP necesarias: json, xml, gd, zip... (la mayoría de hostings de confianza las tienen disponibles).
Consejo: Elija proveedores de alojamiento confiables que tengan buen soporte para código abierto y brinden herramientas de administración como cPanel para facilitar la creación de bases de datos y la administración de archivos.
El proceso de instalación de Joomla en un servidor local y en un hosting es básicamente el mismo. A continuación, se detallan los pasos:
Descargar Joomla: Vaya al sitio web oficial joomla.org y descargue el paquete de instalación de la última versión (generalmente un archivo .zip).
Preparar base de datos:
En Localhost (XAMPP): Abra un navegador y vaya a http://localhost/phpmyadmin. Haga clic en la pestaña "Bases de datos", introduzca un nombre para la nueva base de datos (p. ej., joomla_db) y haga clic en "Crear".
En cPanel: Inicie sesión en cPanel y vaya a "Bases de datos MySQL". Cree una nueva base de datos, luego un nuevo usuario y asígnele todos los privilegios. Anote el nombre de la base de datos, el nombre de usuario y la contraseña.
Subir y descomprimir:
En Localhost: descomprima el archivo .zip que acaba de descargar en la carpeta htdocs en el directorio de instalación de XAMPP (por ejemplo: C:\xampp\htdocs\myjoomlasite ).
En el alojamiento: utilizando el Administrador de archivos en cPanel, cargue el archivo .zip en la carpeta public_html (o subcarpeta si lo desea) y descomprímalo.
Ejecute el instalador: abra su navegador web y vaya a su dirección.
En Localhost: http://localhost/myjoomlasite
En Hosting: http://yourdomain.com
Configuración del sitio web:
Configurar idioma y nombre del sitio: seleccione el idioma de instalación (vietnamita) e ingrese un nombre para su sitio web.
Configurar datos de inicio de sesión: Cree una cuenta de superusuario. Ingrese su nombre real, nombre de usuario, contraseña segura y correo electrónico.
Configuración de la base de datos: Complete la información de la base de datos creada en el paso 2 (nombre de la base de datos, nombre de usuario y contraseña). Para el host local, el nombre de usuario suele ser "root" y la contraseña se deja en blanco.
Finalizar: El instalador comprobará todo e iniciará la instalación. Una vez completada, verá un mensaje de confirmación.
Eliminar la carpeta de instalación: Este es un paso de seguridad obligatorio. Haga clic en el botón "Eliminar la carpeta de instalación".
¡Tu sitio web Joomla ya está listo! Puedes visitar la página de inicio o iniciar sesión en el área de administración.
El área de administración es el centro de control de tu sitio web. Para acceder, ve a tudominio.com/administrador e inicia sesión con la cuenta de superusuario que creaste.
Panel de control: Esta es la primera pantalla que verá. Ofrece una visión general del estado de su sitio web: nuevos artículos, usuarios registrados, actualizaciones importantes de Joomla y extensiones.
Barra de menú principal (izquierda): Aquí se encuentran todas las herramientas de administración. Los elementos más importantes incluyen:
Contenido: administra todo lo relacionado con el contenido, como artículos, categorías y medios.
Menús (Menu): Construye y administra sistemas de menú de navegación en el sitio web.
Componentes: Accede a las principales aplicaciones de la web como Gestión de Artículos, Formulario de Contacto, Banner...
Extensiones: El lugar para instalar, eliminar y administrar módulos, complementos, plantillas e idiomas.
Sistema: contiene configuración global, herramientas de mantenimiento e información del sistema.
Tómate el tiempo para explorar estas secciones y familiarizarte con la ubicación de las funciones. Dominar el área de administración es clave para gestionar tu sitio web Joomla eficazmente.
Resumen: Para dominar Joomla, necesitas comprender su lenguaje. Esta sección explicará a fondo los 5 pilares fundamentales sobre los que se construye cualquier sitio web Joomla: Artículos, Menús, Componentes, Módulos y Plugins. Con un dominio sólido de estos pilares, podrás crear cualquier estructura web.
Un sitio web Joomla se construye combinando muchos componentes diferentes. Comprender sus funciones y cómo interactúan entre sí es fundamental para crear y personalizar tu sitio web a tu gusto.
Estos son el trío principal para crear y organizar contenido en su sitio web.
Artículos: La unidad de contenido más básica. Cada noticia, cada página de introducción, cada producto... puede considerarse un artículo. Al crear un artículo, se utiliza un editor de texto (similar a Microsoft Word) para introducir contenido, insertar imágenes, vídeos y otros formatos.
Categorías: Similares a las carpetas en una computadora, las categorías se utilizan para agrupar artículos sobre el mismo tema. Por ejemplo, en un sitio de noticias, podría tener categorías como "Deportes", "Economía" o "Tecnología". Joomla permite crear una estructura de categorías multinivel (categorías padre-hijo), lo que ayuda a organizar el contenido de forma lógica y científica.
Etiquetas: Las etiquetas ofrecen una forma más flexible de categorizar el contenido que las categorías. Una publicación solo puede pertenecer a una categoría, pero se le pueden asignar varias etiquetas. Por ejemplo, una publicación sobre el lanzamiento del nuevo iPhone de Apple podría pertenecer a la categoría "Tecnología", pero estar etiquetada con etiquetas como "iPhone", "Apple" o "smartphone". Esto facilita a los usuarios encontrar contenido relacionado de diversas maneras.
En Joomla, el menú es más que una simple lista de enlaces para navegar. Desempeña un papel fundamental a la hora de decidir qué se muestra y dónde.
Menús: Un conjunto de enlaces. Un sitio web puede tener varios menús, por ejemplo: "Menú principal" (en la parte superior de la página), "Menú de pie de página" (en la parte inferior de la página), "Menú de usuario" (para usuarios registrados).
Elementos de menú: Son enlaces específicos dentro de un menú. Lo especial es que, al crear un elemento de menú, debe seleccionar "Tipo de elemento de menú". Esta opción determinará el contenido que mostrará esa página. Por ejemplo:
Artículo único: muestra el contenido de un solo artículo.
Categoría Blog: Muestra una lista de publicaciones de una categoría como blog.
Contacto: Muestra un formulario de contacto.
Artículos destacados: muestra artículos marcados como "destacados".
Cuando un usuario hace clic en un elemento del menú, Joomla sabe qué componente cargar y qué contenido mostrar. Por lo tanto, en cierto sentido, cada página de tu sitio web Joomla se compone de un elemento del menú.
Aquí hay tres tipos de extensiones que le ayudan a agregar funciones a Joomla.
Componentes: Son aplicaciones grandes que se encargan de procesar y mostrar el contenido principal de la página. Al hacer clic en un elemento del menú, se está llamando a un componente. Por ejemplo:
com_content : Componente predeterminado para administrar artículos y categorías.
com_contact : Componente para gestionar información de contacto y formularios.
com_users : Componente para la gestión de usuarios.
Cuando instalas un carrito de compras como VirtueMart, estás instalando un componente de comercio electrónico.
Módulos: Son bloques de contenido más pequeños que se muestran alrededor del componente principal. Los módulos se suelen usar para mostrar información auxiliar. Por ejemplo:
Módulo de menú: muestra un sistema de menú.
Módulo de inicio de sesión: muestra el formulario de inicio de sesión.
Módulo “Últimos artículos”: Muestra una lista de los últimos artículos.
Módulo Banner: Anuncios de display.
Puede asignar un módulo para que aparezca en todas las páginas o solo en determinadas páginas.
Plugins: Trabajan silenciosamente en segundo plano. Son pequeños fragmentos de código que se activan por eventos del sistema (p. ej., antes de que se muestre una publicación, después de que un usuario inicie sesión, etc.). Los plugins pueden realizar muchas funciones, como:
Agregar botones de función al editor de texto.
Inserta automáticamente un código de anuncio al final de cada publicación.
Autenticar usuarios a través de Google o Facebook.
Plantillas: Determina la apariencia general de tu sitio web: colores, fuentes, diseño y estilo. Joomla separa completamente el contenido de la presentación, lo que significa que puedes cambiar completamente la apariencia de tu sitio web sin afectar el contenido que has creado. Existen dos tipos de plantillas: plantillas frontend y plantillas backend.
Posiciones: Cada plantilla define una serie de "posiciones" (p. ej., position-1, left, right, footer). Aquí es donde puedes colocar tus módulos. Para ver todas las posiciones disponibles en tu plantilla, puedes añadir ?tp=1 al final de la URL de tu página de inicio (p. ej., yourdomain.com?tp=1).
En resumen, una página Joomla se crea así: el usuario hace clic en un elemento de menú, Joomla llama a un componente para crear el contenido principal y, a continuación, carga los módulos asignados a esa página y los coloca en las posiciones especificadas por la plantilla. Los plugins pueden ejecutarse en segundo plano para modificar o añadir funcionalidad durante este proceso.
Resumen: La teoría no sirve de nada sin la práctica. En esta sección, trabajaremos juntos en un proyecto real: crear un blog personal o sitio de noticias sencillo desde cero, aplicando todos los conceptos básicos aprendidos.
Antes de crear nada, esboza la estructura de tu sitio web. Para un blog o sitio de noticias sencillo, necesitamos:
Categorías principales: Por ejemplo: "Tutoriales Joomla", "Consejos SEO", "Noticias tecnológicas".
Páginas estáticas: “Acerca de”, “Contacto”.
Diseño de la página de inicio: mostrará las últimas publicaciones de todas las categorías.
Submódulos: un cuadro de búsqueda, una lista de artículos populares y un formulario de suscripción.
Crear categorías:
Vaya a Contenido -> Categorías -> Agregar nueva categoría.
Crea las categorías planificadas una por una: “Tutoriales Joomla”, “Consejos SEO”, “Noticias tecnológicas”.
Crear artículos:
Vaya a Contenido -> Artículos -> Agregar nuevo artículo.
Escribe de 5 a 6 artículos de muestra. Para cada artículo:
Introduzca un título.
Utilice el editor para ingresar contenido, insertar algunas imágenes.
En la pestaña “Contenido”, seleccione la categoría correspondiente al artículo.
Para mostrar en la página de inicio, en la pestaña "Contenido", configure el estado "Destacado" en "Sí".
Crea dos publicaciones adicionales para las páginas "Acerca de" y "Contacto". Asegúrate de que estén en la categoría "Sin categorizar" o en una categoría aparte para páginas estáticas.
Crear menú principal:
Vaya a Menús -> Administrar -> Agregar nuevo menú. Asígnele el nombre "Menú principal".
Crear elementos de menú:
Vaya a Menús -> Menú principal -> Agregar nuevo elemento de menú.
Hogar:
Título del menú: Inicio
Tipo de elemento de menú: Seleccionar Artículos -> Artículos destacados.
Página predeterminada: seleccione "Sí".
Tutorial de Joomla:
Título del menú: Tutorial de Joomla
Tipo de elemento de menú: Seleccionar Artículos -> Categoría Blog.
Elija una categoría: seleccione la categoría "Tutoriales de Joomla".
Haga lo mismo para las categorías “Consejos de SEO” y “Noticias tecnológicas”.
Introducir:
Título del menú: Introducción
Tipo de elemento de menú: Seleccionar artículos -> Artículo individual.
Seleccionar artículo: seleccione el artículo "Acerca de" que creó.
Contacto:
Título del menú: Contacto
Tipo de elemento de menú: Seleccionar Contactos -> Contacto único. (Primero deberá crear un contacto en el componente Contacto).
Instalar extensión:
Descargue una extensión de formulario de contacto popular (por ejemplo, RSForm! o Convert Forms) y un mejor editor (por ejemplo, JCE Editor) del Directorio de extensiones de Joomla.
Vaya a Extensiones -> Administrar -> Instalar. Arrastre y suelte el archivo .zip descargado para instalarlo.
Configuración del editor JCE:
Vaya a Sistema -> Configuración global .
En la pestaña "Sitio", en "Editor predeterminado", seleccione "Editor - JCE".
Crear formulario de contacto:
Vaya a Componentes y busque el componente de formulario que acaba de instalar.
Crea un formulario simple con los campos: Nombre completo, Correo electrónico, Título, Contenido.
Cree un nuevo elemento de menú que apunte a este formulario o utilice su módulo para insertarlo en la página de Contacto.
Configuración de la plantilla:
Busque y descargue una plantilla gratuita (por ejemplo, de Helix Ultimate, Gantry Framework).
Instale la plantilla a través de Extensiones -> Administrar -> Instalar.
Activar plantilla:
Vaya a Extensiones -> Plantillas -> Estilos .
Busque la plantilla que acaba de instalar y haga clic en la estrella para establecerla como predeterminada.
Asignar módulos a puestos:
Vaya a Extensiones -> Módulos .
Abra el módulo "Menú principal". En la pestaña "Módulo", seleccione una posición adecuada (por ejemplo, menú, posición-1).
Crea nuevos módulos como "Buscar", "Artículos populares" y asígnalos a posiciones en la columna derecha (por ejemplo: sidebar-right, position-7).
En la pestaña "Asignación de menú" de cada módulo, puedes elegir que se muestre en todas las páginas o solo en ciertas páginas.
Una vez completados los pasos anteriores, visite su sitio web. Debería ver una página de blog/noticias básica pero completamente funcional, creada íntegramente con sus propias habilidades. Este es un logro importante que demuestra que domina los fundamentos de Joomla.
Resumen: Crear un nuevo sitio web es solo el comienzo. Para que funcione de forma eficaz y segura, necesita adquirir habilidades de optimización. Esta sección le proporcionará técnicas esenciales de SEO, cómo aumentar la velocidad de carga de las páginas y las medidas de seguridad más importantes.
Joomla incluye muchas herramientas potentes para la optimización en motores de búsqueda (SEO). Es tu responsabilidad habilitarlas y usarlas correctamente.
Habilitar URL amigables (URL SEF):
Vaya a Sistema -> Configuración global .
En la pestaña "Sitio", vaya a la sección "Configuración de SEO".
URL optimizadas para motores de búsqueda: Activar "Sí". Esto convertirá URLs como index.php?option=com_content&view=article&id=1 en /alias-of-the-article .
Usar reescritura de URL: Cambiar a "Sí". Esto eliminará index.php de la URL.
Nota: Para que "Usar reescritura de URL" funcione, debe cambiar el nombre del archivo htaccess.txt en el directorio raíz de su sitio web a .htaccess .
Personalizar el título de la página y la meta descripción:
Para artículos: Al editar un artículo, vaya a la pestaña "Publicación". Aquí puede introducir la "Meta descripción" y las "Meta palabras clave".
Para elementos de menú: Al editar un elemento de menú, vaya a la pestaña "Visualización de página". Puede personalizar el "Título de la página del navegador" para que sea diferente del título del menú. La pestaña "Metadatos" le permite introducir una "Meta descripción" y "Meta palabras clave" específicas para esa página.
Crear mapa del sitio:
Un mapa del sitio es un archivo XML que enumera todas las URL de su sitio web, lo que facilita que Google y otros motores de búsqueda lo rastreen.
Joomla no tiene un generador de mapas de sitio predeterminado. Necesitas instalar una extensión dedicada. OSMap es una opción gratuita y muy popular, fácil de instalar y que genera automáticamente un mapa de sitio.
Optimización de imágenes:
Completa siempre el "Texto alternativo" en cada imagen que subas. Este es el texto que describe el contenido de la imagen y es muy importante para el SEO.
Comprima las imágenes antes de cargarlas para reducir el tiempo de carga de la página.
La velocidad de carga de la página es un factor importante de clasificación de Google y afecta directamente la experiencia del usuario.
Habilitar almacenamiento en caché y Gzip:
Vaya a Sistema -> Configuración global .
Vaya a la pestaña "Sistema". En la sección "Configuración de caché", seleccione "Archivo" para el controlador de caché y "Almacenamiento en caché específico de la plataforma" para "Sí". Configure el "Tiempo de caché" entre 15 y 30 minutos.
Vaya a la pestaña "Servidor". En la sección "Configuración del servidor", active la opción "Compresión de páginas Gzip".
Optimización de imágenes:
Utilice herramientas de compresión de imágenes en línea (como TinyPNG) o software de escritorio para reducir el tamaño del archivo de imagen sin perder demasiada calidad.
Utilice formatos de imagen de próxima generación como WebP siempre que sea posible.
Utilice la extensión de forma óptima:
Instala la extensión JCH Optimize. Esta extensión combina archivos CSS y JavaScript, comprime HTML y utiliza muchas otras técnicas para reducir el número de solicitudes al servidor y acelerar significativamente la carga de las páginas.
Actualizar entorno de alojamiento:
Asegúrese de estar utilizando la última versión de PHP compatible con su alojamiento (8.0 o superior).
Elija un proveedor de alojamiento de alta calidad que utilice discos duros SSD y servidores optimizados para Joomla.
La seguridad es un proceso continuo, no una acción puntual. Estas son las medidas más importantes que puede tomar:
[ ] Actualizar siempre: Revisa y actualiza Joomla y todas sus extensiones (componentes, módulos, plugins, plantillas) periódicamente a la última versión. Esta es la principal medida de defensa contra vulnerabilidades de seguridad conocidas.
[ ] Use contraseñas seguras: establezca contraseñas complejas (una combinación de mayúsculas, minúsculas, números y caracteres especiales) para su cuenta de superusuario y todas las demás cuentas administrativas.
[ ] Habilitar la autenticación de dos factores (2FA): Joomla admite la 2FA desde el núcleo. Habilítela para la cuenta de superusuario para añadir una sólida capa de protección.
[ ] Cambiar el prefijo de la tabla de la base de datos: Durante la instalación, evite usar el prefijo predeterminado jos_. Cámbielo por una cadena aleatoria (p. ej., xyz78_).
[ ] Establecer permisos de archivo/carpeta (CHMOD): asegúrese de que las carpetas estén configuradas en 755 y los archivos en 644. El archivo configuration.php debe configurarse en 444 una vez completada la configuración.
[ ] Instalar extensión de seguridad:
Herramientas de administración de Akeeba: proporciona un firewall de aplicaciones web (WAF), una herramienta de escaneo de archivos y muchas otras funciones de seguridad avanzadas.
RSFirewall!: Otra extensión de seguridad integral, muy popular en la comunidad.
[ ] Copias de seguridad periódicas: Instala Akeeba Backup y configura un programa para realizar copias de seguridad automáticas de todo tu sitio web (archivos y base de datos) a diario o semanalmente. Guarda tus copias de seguridad en un lugar seguro (por ejemplo, Google Drive o Dropbox). Este es tu salvavidas en caso de que algo salga mal.
[ ] Eliminar extensiones no utilizadas: elimine por completo cualquier componente, módulo o complemento que ya no utilice para minimizar los riesgos potenciales.
Tomar esta lista de verificación en serio le ayudará a que su sitio web Joomla sea mucho más seguro frente a las amenazas cibernéticas.
Esta es la puerta de entrada a un mundo de personalización ilimitada, diseñado para quienes desean convertirse en verdaderos desarrolladores de Joomla. Aprenderá la arquitectura MVC básica, cómo crear un módulo sencillo usted mismo y técnicas avanzadas de personalización de plantillas.
Para programar para Joomla, debes comprender cómo está organizado.
Estructura del directorio principal:
/administrator: contiene todos los archivos relacionados con la página de administración.
/componentes: Contiene componentes.
/modules : Contiene módulos.
/plugins : Contiene complementos.
/templates : Contiene plantillas.
/bibliotecas: Contiene bibliotecas de código fuente de Joomla y de terceros.
configuration.php: el archivo de configuración más importante, contiene información de conexión a la base de datos y configuraciones globales.
Arquitectura MVC (Modelo-Vista-Controlador):
Joomla sigue estrictamente el patrón arquitectónico MVC. Este es un patrón de diseño de software que separa la lógica de procesamiento, los datos y la interfaz de usuario.
Modelo: Responsable de interactuar con la base de datos. Obtiene, guarda y elimina datos. Al modelo no le importa cómo se mostrarán los datos.
Vista: Se encarga de mostrar los datos que recibe del modelo. Contiene archivos de diseño (generalmente HTML y PHP) para presentar la información al usuario. No gestiona la lógica de negocio.
Controlador: Es el cerebro que controla. Recibe una solicitud del usuario (p. ej., un clic), decide qué modelo debe llamarse para obtener los datos y qué vista debe usarse para mostrarlos.
Esta separación ayuda a mantener el código organizado, mantenible y reutilizable.
Este es un manual sobre cómo crear una extensión. El módulo más simple requiere 4 archivos:
mod_helloworld.xml (archivo de manifiesto): este archivo describe su módulo para Joomla: nombre, autor, versión y archivos que deben instalarse.
mod_helloworld.php (Archivo principal): Este es el punto de entrada del módulo. Llamará al archivo auxiliar para obtener los datos y al archivo de plantilla para mostrarlos.
helper.php: Contiene clases y métodos para manejar la lógica, como recuperar un saludo de una base de datos o un archivo.
tmpl/default.php: este es el archivo de vista del módulo, que contiene código HTML y PHP para mostrar la salida al usuario.
Procedimiento:
Crea una carpeta llamada mod_helloworld .
Dentro, cree los archivos anteriores con el contenido básico. Por ejemplo, tmpl/default.php podría contener simplemente la línea: .
Comprima la carpeta mod_helloworld en el archivo mod_helloworld.zip.
Vaya a la página de administración de Joomla, Extensiones -> Instalar e instale este archivo zip.
Ve a Extensiones -> Módulos y verás tu módulo "Hola Mundo". Habilítalo y asígnale una ubicación para ver el resultado.
Los componentes son el tipo de extensión más complejo, pero también el más potente. Desarrollar un componente suele implicar:
Planificación: Identificar las funciones y tablas de datos necesarias.
Crear el backend (Administrador): Crear vistas para administrar (añadir, editar, eliminar) registros en la base de datos. Aquí es donde trabajará el administrador.
Creación del frontend (sitio): Crear vistas para mostrar datos a los usuarios finales. Por ejemplo: una vista para mostrar una lista o una vista para mostrar los detalles de un registro.
Escribir modelos y controladores: crear modelos para manejar datos y controladores para navegar por las solicitudes.
Esto requiere un conocimiento profundo de PHP, MySQL y API de Joomla.
Esta es una de las técnicas más potentes y seguras para personalizar Joomla. Override permite cambiar la apariencia de un componente o módulo sin modificar sus archivos originales.
¿Por qué anular?
Si edita directamente el archivo original de un componente, se perderán todos los cambios al actualizarlo a una nueva versión. Las anulaciones solucionan este problema.
Cómo funciona:
Solo tienes que copiar el archivo de diseño original del componente/módulo en una estructura de carpetas especial dentro de tu plantilla. Joomla priorizará automáticamente el archivo de tu plantilla sobre el original.
Ejemplo: Anular la interfaz del artículo (com_content):
En su directorio de plantillas (por ejemplo, /templates/my_template ), cree un directorio llamado html .
Dentro de html, crea una carpeta con el mismo nombre que el componente, por ejemplo: com_content.
Dentro de com_content , cree una carpeta con el mismo nombre que la vista, por ejemplo: article .
Copie el archivo de diseño original de /components/com_content/tmpl/article/default.php a la carpeta que acaba de crear: /templates/my_template/html/com_content/article/default.php .
Ahora puedes editar el archivo default.php en tu plantilla. Los cambios se aplicarán sin afectar al archivo original y no se perderán al actualizar Joomla.
Dominar esta técnica te permitirá personalizar la apariencia de Joomla de una manera prácticamente ilimitada, segura y profesional.
Aprender es un viaje, y no tienes que recorrerlo solo. Hemos recopilado los foros, cursos y documentos más prestigiosos de la comunidad Joomla vietnamita e internacional para que puedas buscar ayuda, aprender de la experiencia y mejorar continuamente tus habilidades.
Foro Joomla! (Internacional): Este es el foro oficial y más grande de Joomla a nivel mundial. Casi todos los problemas que encuentres ya se han planteado y resuelto aquí. Es un recurso invaluable para resolver problemas técnicos.
Foro y grupos de Facebook de Joomla! Vietnam: La comunidad Joomla en Vietnam también es muy activa. Participar en foros locales y grupos de Facebook te permite comunicarte fácilmente en vietnamita, recibir apoyo de expertos y estar al día de la información y los eventos de Joomla en Vietnam.
Directorio de Extensiones de Joomla (JED): Más que un simple lugar para descargar extensiones, JED es una comunidad. Cada extensión tiene sus propias reseñas, comentarios y un foro de soporte donde puedes hacer preguntas directamente al desarrollador.
Capacitación Joomla! (oficial): el sitio oficial de capacitación Joomla ofrece tutoriales y videos desde lo básico hasta lo avanzado.
YouTube: Hay muchos canales de YouTube de renombre dedicados a Joomla. Canales como "Tim Davis" (fan de Joomla) ofrecen videotutoriales muy prácticos y fáciles de entender.
Plataformas de aprendizaje en línea (Udemy, Coursera): Busca cursos de Joomla en estas plataformas. Lee las reseñas de otros estudiantes para elegir un curso de calidad con contenido actualizado.
Documentación de Joomla! (Oficial): Esta es la guía para cualquiera que quiera aprender Joomla, especialmente para desarrolladores. Toda la documentación de la API y las guías de desarrollo de componentes, módulos y plugins están aquí.
"Programación Joomla! 4" y libros de profundización: Cuando estés listo para adentrarte en la programación, busca libros escritos por expertos de la comunidad. Suelen ofrecer conocimientos sistemáticos y ejemplos prácticos que a veces faltan en los recursos en línea.
Aprender Joomla requiere paciencia y práctica constante. No dudes en preguntar, participar en debates y compartir tus conocimientos. La comunidad es la mayor fortaleza de Joomla, y al formar parte de ella, nunca estarás solo en tu camino hacia el dominio de esta potente plataforma.