2. Presentación
Creo, mantengo y mejoro sitios web
Ingeniero Técnico Electrónico
Apasionado del software y hardware libre
Trabajando con Joomla desde... Mambo
www.pabloarias.eu
@PabloAriasRamos
3. 1. Introducción y características
2. Programación en Joomla
3. Recursos para aprender
4. Quién usa Joomla
5. Mitos desmentidos sobre Joomla
6. La comunidad Joomla
7. Joomla en Vigo
Contenidos
4. ¿Qué es un web CMS?
Sistema de gestión de contenidos web
● Abstracción de mucha problemática web
● Panel de administración
● Base de datos
● Diseño independiente del contenido
● Colaboración y participación entre usuarios
5. Licencia de uso de Joomla
GNU General Public License
Copia, distribución y modificación permitidas
Para proyectos personales y comerciales
Descarga gratuita desde joomla.org
6. Versiones de Joomla
Actualidad: Joomla 3
● Última versión disponible: 3.4.8.
● Prevista la salida de 3.5 esta semana.
● La versión 2.5 finalizó en 2015.
● Próximos avances o roadmap:
http://developer.joomla.org/cms/roadmap.html
7. Dos partes de Joomla
Frontend
Parte pública para
"navegantes"
http://dominio.com
Backend
Parte privada para
administración
http://dominio.com/administrator
9. Gestión de usuarios
Gestión de usuarios y contactos
Grupos, niveles de acceso y permisos
Posibilidad de diferentes roles
Restricción de acceso a contenidos
10. Gestión de menús
● Navegación en sitio web
● Definen el mapa del sitio
● Gestión muy intuitiva, cómoda y completa
11. Gestión de plantillas o templates
Dan diseño al sitio web
Disponen el contenido según necesidades
Definir diferentes por cada elemento de menú
Dos plantillas iniciales
Plantillas creadas por terceros
14. Extensiones disponibles
● Comercio electrónico
● Foros
● Directorios
● Galerías de imágenes
● Boletines de noticias
● Mapas
● Nuevos editores WYSIWYG
Y un largo etcétera (7.636 a día 14/03/2016)
15. SEO and mobile ready
Joomla ofrece facilidades para optimización
● Títulos de páginas personalizados
● Etiquetas meta
● URLs amigables
● Extensiones especializadas
Navegación en pantallas pequeñas
● Depende de la plantilla. Responsive
● Joomla 3 cada vez más optimizado
16. Multi idioma
Joomla está traducido a más de 60 idiomas
http://community.joomla.org/translations/
El contenido y las extensiones
en varios idiomas (nativo)
19. Programación plantillas II
Desde cero o partiendo de una
base.
Index.php: <jdoc:include>
● Posiciones para módulos
● Componente
● Cabecera
● Mensajes sistema
Ejemplo <jdoc:include type="component" />
addScript y addStyleSheet
20. ¡El core no se toca!
No se debe modificar ni el código de Joomla ni
el de extensiones de terceros.
Soluciones:
● Crea overrides
● Haz tu propia extensión
21. Abstracción de problemática
● ACL: Usuarios, grupos,
niveles de acceso y
permisos
● Multi-Idioma
● Búsqueda (smart)
● Web services
● Versionado contenidos
● Actualizaciones cliente
● Menús
● Envío de emails
● Caché
● Etiquetas, categorías,
formularios, listados,
paginación...
22. Integración con otras extensiones
● Comentarios
● Comercio electrónico
● Redes sociales
● Mapas del sitio web
● Y un largo etcétera...
23. Modelo - Vista - Controlador
Organización componentes:
● Modelo: gestión de datos
● Vista: muestra el resultado
● Controlador: gestión de acciones.
Se pueden sobrescribir
las vistas y los layouts en la plantilla:
/templates/PLANTILLA/html/nombre_extension/
24. Layouts
Pensados para ser reusables.
Separar el diseño del código.
Más info en el blog de PHP Roberto:
http://phproberto.com/
25. Framework Joomla!
● Framework PHP
https://framework.joomla.org/
● Web y CLI
● Instalación: Composer y GitHub
● Documentación:
https://docs.joomla.org/Framework:Home/es
● Ver también FOF (Framework over Framework)
26. Joomla en GitHub
Código del CMS
Ejemplos
Gestión de incidencias
Recursos
https://github.com/joomla/
27. Recursos Joomla
● Web oficial
http://joomla.org/
● Documentación
https://docs.joomla.org/
● Foro
http://forum.joomla.org/
● Revista
http://magazine.joomla.org/
28. Recursos programador
● Documentación wiki
https://docs.joomla.org/Portal:Developers
● Ciclo desarrollo Manuales Joomla:
http://manualesjoomla.es/blog/73-1-ciclo-desarrollo-joomla-extensiones-1-tutorial
● Joomgouts
http://joomgouts.com/tag/programacion
● Libros
Podéis preguntar aquí mismo, en la Casa del Libro
29. ¿Quién usa Joomla?
Particulares
Empresas
Gobiernos y administraciones públicas
Organizaciones
Educación y grupos culturales
Medios de comunicación
Sitios de famosos
http://community.joomla.org/showcase/
30. Mito: Joomla es inseguro
● No permite el uso de PHP muy antiguo.
● Joomla usa BCrypt como algoritmo de
seguridad.
● Autenticación de factor doble.
● Probado en millones de sitios web.
● Hay extensiones para “vigilar” la seguridad.
31. Mito: Joomla es malo para el SEO
No hay correlación entre la tecnología usada y el SEO:
● Buenas implementaciones de cualquier tecnología
posicionan alto.
● Malas implementaciones lo contrario.
Joomla ha incorporado más herramientas en las últimas
versiones para facilitar la gestión de parámetros SEO y a
su vez hay extensiones de terceros.
Fuente: http://moz.com/blog/web-tech-builtwith-study
32. Quién está detrás de Joomla
Joomla no depende de las directrices de una
empresa.
Hay una fundación sin ánimo de lucro, Open
Source Matters, y una gran comunidad.
33. > 644 mil usuarios registrados en los foros
Movimiento intenso en RRSS
Conferencias:
● JoomlaDays por todo el mundo
● J & Beyond, ¡este año en Barcelona!
● Joomla! World Conference
● Reuniones de JUGs y Joomla Café
● JUGs – 180+ registrados en todo el mundo
Community Magazine – ~1000 artículos
Comunidad Joomla
34. Proyecto vivo y activo
Commits por semana en Github
Comentario de GitHub al tratar de mostrar la red de
miembros del proyecto Joomla-cms:
“ Woah, this network is huge! We’re showing only some of
this network’s repositories.”
(Mostrando 1000 resultados)
35. Cómo colaborar con Joomla
Existen muchas formas de colaborar:
http://volunteers.joomla.org/
● Resolución de errores
● Documentación
● Traducción
● Propuesta de nuevas funcionalidades
● Etc.
36. Joomla en Vigo
Grupo de Usuarios de Joomla de Vigo
http://www.joomlavigo.es/
No faltes a la próxima reunión:
31 de marzo
Organizando Joomla Day Vigo
En búsqueda de colaboración ¡Apúntate!