Guía Extendida de Administración de Joomla!
Escuela de Administración Pública Junta de Extremadura Mérida, 13 de octubre de 2008 Javier Pino Tirado
Índice de contenido
0. Prefacio..................................................................................................................................3 1. Configuración global...............................................................................................................4 2. Organización del contenido...................................................................................................5 3. Artículos.................................................................................................................................6 3.1. Preferencias de los artículos...........................................................................................6 3.2. Estados de los artículos.................................................................................................6 4. Usuarios.................................................................................................................................7 5. Menús....................................................................................................................................8 5.1. Creación de menús.........................................................................................................8 5.2. Ítems de menú................................................................................................................8 6. Módulos................................................................................................................................11 7. Extendiendo nuestro Joomla!...............................................................................................13 8. Plantillas...............................................................................................................................15 9. Copias de seguridad y restauración....................................................................................16 9.1. Copias de seguridad......................................................................................................16 9.2. Restauración de un sitio...............................................................................................17 10. Enlaces de interés..............................................................................................................21
0. Prefacio
Este documento se ha elaborado para servir como material de consulta de los alumnos del curso de Creación fácil de páginas Web con Joomla!, impartido en la Escuela de Administración Pública de Mérida durante los días 1 al 3 de octubre de 2008. Me gusta aplicarme la expresión “No reinventes la rueda”, y por ello no he querido escribir un manual de Joomla! desde cero, puesto que estaba seguro de que había gente que lo había hecho antes que yo, y probablemente mejor de lo que yo lo haría. De modo que esto es una ampliación de la muy recomendable Guía de inicio rápido para Joomla! 1.5, disponible en joomlacode.org. Pretende complementar aquella, introduciendo conceptos más avanzados y de más difícil comprensión para el principiante. Por ello, recomiendo vivamente la lectura previa de dicho documento y la asimilación de los conceptos que en él se introducen mediante la realización de las prácticas que en él se proponen. Para manejar un sitio creado con Joomla, el usuario inexperto se encuentra con dos problemas principales: el primero, obtener una visión global del funcionamiento, de las partes que integran el sitio que crea el CMS, sus denominaciones e interacciones. El segundo, el derivado de la nomenclatura y/ o traducciones. Este documento se ha elaborado en base a la traducción realizada por el grupo de joolaspanish.org, en concreto en la versión 1.5.5, por lo que versiones posteriores pueden no tener equivalencias exactas en las imágenes o puntos que se referencian. No se pretende realizar un estudio exhaustivo de las posibilidades de Joomla!, puesto que sería imposible en un curso de 20 horas de duración. Tal vez la mejor manera de enfocar la lectura sería considerarlo una lista de tips, medianamente agrupados por temas, que sirva de consulta cuando el alumno se pregunte “¿Cómo fue que hicimos aquello de...?”. Es algo que a mí me pasa a menudo al volver a manejar un programa o una herramienta que no toco hace meses o años. Espero que sea esa la utilidad final, y si lo he conseguido o no, el tiempo lo dirá.
Javier Pino
1. Configuración global
Es importante distinguir el nombre del sitio del nombre que aparece en la página principal. El nombre del sitio es el que le dimos durante la instalación. Si queremos cambiarlo, lo podemos hacer en Sitio > Configuración Global > Sitio> Nombre del sitio web. Una vez instalado, cambiamos el mensaje (lo de "Bienvenidos a la portada") que aparece en la página principal, en Menús > Menú principal > Parámetros > Sistema > Título de la Página. Con ello se cambia el título en la página y el que se muestra en la ventana del navegador (y en la pestaña, si es el caso). Otros pequeños ajustes que conviene hacer al principio son: Definir la distribución de artículos destacados de la página principal: destacados, introducción, columnas y enlaces. Probar, por ejemplo, con 2226. Modificar el tiempo que dura la sesión de los usuarios, si con los 15 minutos que trae por defecto no es suficiente. Huso horario en el que nos encontramos, puesto que en ocasiones no coincide con del servidor. Esto resulta importante a la hora de publicar y despublicar artículos a hora y fecha determinadas, de modo automático. Como a veces no sabemos cuál es la hora que está utilizando el servidor, lo mejor es ajustarla y después ir a la pantalla de creación de un nuevo artículo. Veremos si la hora de creación coincide con la que estamos usando. Y si no, podemos corregirla adecuadamente.
2. Organización del contenido.
Puesto que este tema se ha tratado suficientemente en la Guía de Inicio Rápido, no nos extenderemos mucho en ella. Antes de crear artículos, es conveniente tener más o menos claro cuáles van a ser nuestras secciones y categorías, ya que en función de ellas quedará estructurado el contenido de nuestra página. Por eso, es lo primero que debemos hacer cuando creamos nuestro sitio. Contenido > Gestor de Secciones Contenido > Gestor de Categorías Si cuando creamos una categoría la ubicamos en una sección de modo incorrecto, siempre se puede editar. De igual modo, un artículo se puede cambiar de categoría después de creado. Es conveniente poner al menos un pequeño texto a cada sección y categoría. Así, si nos interesa poner un enlace a las listas secciones o categorías, veremos una pequeña explicación de lo que contiene cada una, más allá del título escueto. Si no lo hacemos, mejor no hacerlo con ninguna, para que la presentación resulte uniforme. El editor que viene por defecto con Joomla! (TinyMCE) nos permite bastantes cosas, pero es un poco limitado, sobre todo a la hora de trabajar con imágenes, cambiándolas de sitio o formateándolas. Existen otros editores que se instalan como extensiones, y que permiten trabajar de un modo más completo. El más conocido es JCE Editor.
3. Artículos
3.1. Preferencias de los artículos.
A la hora de ver de qué modo se presenta un artículo, debemos tener en cuenta lo siguiente: Existen tres sitios donde podemos fijar determinados aspectos de los artículos, como si el título será enlazable, si se mostrarán la sección y categoría a las que pertenece, si aparecerán los iconos para imprimir, enviar por correo, convertir a pdf, etc. La precedencia de los ajustes es: Artículo: Parámetros – Componente Página de inicio: Menús > Menú Principal > Inicio > Parámetros – Componente Preferencias globales: Gestor de artículos > Preferencias Es buena idea ir tocando en los tres sitios para ver de qué modo se influyen y solapan unos ajustes con otros, teniendo en cuenta que si en un determinado nivel no tenemos un ajuste disponible, se cogerá el del siguiente, lo que a veces puede producir resultados inesperados. Por ejemplo, en Artículo no tenemos la opción "Iconos", aunque sí los relativos al icono de PDF, Imprimir y email. De modo que si activamos cualquiera de estas opciones en el Artículo pero lo tenemos desactivado en la página de inicio, en lugar de los iconos se mostrará el texto alternativo correspondiente. Además de lo anterior, es necesario tener en cuenta que también influye la plantilla que estemos usando. Hay plantillas que, por ejemplo, no admiten títulos de sección enlazables o iconos en la página principal. Es necesario hacer muchas pruebas para asegurarnos de que todo queda exactamente igual que lo queremos.
3.2. Estados de los artículos.
Los artículos pueden estar categorizados o no, y además pueden estar publicados, despublicados, programados, expirados o archivados. Un artículo publicado está visible para quien entre en el sitio, en la página principal o donde corresponda. Un ítem no publicado no está visible en ninguna parte del sitio. Se considera de este modo si así lo hemos definido manualmente, o automáticamente si proviene de estado archivado. Un artículo publicado con una fecha que aún no ha llegado está programado. Expirado significa que el artículo ha caducado, porque ha pasado el tiempo que le habíamos definido para estar publicado. Los artículos archivados no se consideran publicados ni despublicados. No están visibles ni en la página principal ni en la sección y categorías que les corresponderían. Únicamente se puede acceder a ellos si en algún punto del sitio creamos un enlace hacia ellos, o que permita ver el contenido archivado, como se explica más adelante.
4. Usuarios
En Joomla existen varios tipos de usuarios, en función del tipo de acceso que se les permite al sitio. He aquí un pequeño resumen de los diferentes tipos, teniendo en cuenta que a mayor nivel de profundidad en la tabla mayor nivel de privilegios tiene el usuario, y que cada uno tiene los privilegios que le corresponden y los de los usuarios de menor capacidad.
Tipo usuario Invitado Registrado Autor Editor Publicador Gestor Administrador Super administrador
Acceso Frontend Frontend Frontend Frontend Frontend Backend Backend Backend
Privilegios Navegación por el sitio, excepto al contenido restringido para usuarios registrados o especiales Enviar enlaces web para su publicación, acceso a contenidos restringidos que no están disponibles para invitados Crear contenido, formatearlo, especificar su fecha de publicación Edición de los artículos de los autores Publicación de artículos Acceso al panel de control, y a los ajustes del contenido. Administración de ítems de menú Gestión de extensiones, cambio de plantillas, alterar diseño de las páginas. Ajustes de perfil de usuarios Acceso a todas las funciones de todo tipo. Creación de usuarios Superadministrador.
5. Menús
5.1. Creación de menús
Al crear un menú (Menús > Gestor de menús > Nuevo), de los cuatro campos que se nos muestran, solo podemos dejar en blanco el relativo a la descripción. El Nombre único es obligatorio (y mejor sin espacios en blanco), el Título es lo que se verá en el frontend (también obligatorio), y si no se pone el Titulo del módulo, no será publicado. Importante: una vez creado el menú, tenemos que ir a Extensiones > Gestor de módulos y habilitarlo. Lo reseñado en el párrafo anterior es válido para crear menús, pero hay más maneras de hacerlo. Debemos tener en cuenta que muchos de los módulos que Joomla! realmente son menús ya predefinidos: Artículos relacionados, Contenido más leído o Secciones son ejemplos de módulos que generan menús muy concretos que también podríamos a través del Gestor de menús, aunque de un modo menos directo y más trabajoso. Por ejemplo, si queremos crear un menú de secciones, lo podemos hacer de dos modos: Como módulo independiente: luego no se mostrará en la lista de menús, pero lo tendremos hecho en una única operación. Como ítem de menú Artículos > Presentación de la sección: hay que ir añadiendo las secciones una a una, pero lo podemos añadir en cualquier menú que queramos.
5.2. Ítems de menú.
Repasaremos a continuación la lista de posibles ítems de menú de los que disponemos. Aunque algunos de ellos son bastante autoexplicativos, otros resultan crípticos, no sabemos si por error o por haber sufrido una traducción demasiado literal. Es necesario tener en cuenta que en el momento de escribir este manual, la última versión estable publicada es la 1.5.7, y sobre a traducción de la misma realizada por el grupo de JoomlaSpanish nos dedicaremos. Traslations manager: en las instalaciones normales no lo haremos funcionar, puesto que lo habitual es trabajar en un único idioma. Si lo precisamos, necesitamos un módulo adicional que maneje idiomas adicionales Artículos: ∙ Presentación de la lista de artículos archivados: Muestra los artículos que están archivados (que no es lo mismo que no publicados). Los artículos archivados no están publicados, con lo que no son visibles junto con el resto de su categoría. Al desarchivar un artículo, pasa a despublicado. Repasar las diferencias entre publicado, despublicado y archivado. ∙ Presentación del artículo: Muestra un determinado artículo.
∙ Presentación de artículos: Permite enviar un artículo, si tenemos suficiente categoría en la plataforma para hacerlo. O incluso publicarlo, si la tenemos. Esto sólo tiene sentido si seleccionamos que se muestre para un nivel de acceso "Especial" ∙ Presentación del la categoría blog: Muestra una página como la principal (incluso podemos definir el número de destacados, introducción, columnas...), pero sólo con los artículos de una determinada categoría. ∙ Presentación de la lista de categorías: Esta presentación muestra los artículos que hay dentro de una categoría, en formato tabla. Vemos su título y autor, para poder acceder a ellos. ∙ Presentación de la página principal del Blog: La página principal estandar del blog, muestra artículos que han sido configurados como artículos de la página principal, en formato Blog. ∙ Presentación de la sección blog: Muestra una lista de artículos de una sección en formato blog, con las mismas opciones de la página principal. ∙ Presentación de la sección: Lista de categorías incluidas dentro de la sección, con su texto de presentación y la cantidad de ítems que contienen.
Buscar: es distinto que el módulo Buscar, aunque similar. El módulo nos ofrece una caja de texto en la que teclear directamente, y este ítem nos lleva a una pantalla donde escoger, además de las palabras de nuestra búsqueda, la posibilidad de restringirla en función de más criterios. A esta página es a la que llegamos desde el módulo cuando nos ofrece los resultados de la búsqueda. Contactos: ∙ Contactos de la categoría: listado. ∙ Presentación estandar de contacto: detalle del contacto, con posibilidad (si se ha habilitado) de ver todos sus datos y enviarle un correo. Presentación de la encuesta: muestra los resultados de una determinada encuesta. Ojo: para poder votar en la misma, debe estar publicada como módulo. Enlaces: Permite mostrar la lista de categorías, el listado de lo contenido en una determinada categoría, o los enlaces web enviados. Noticias (feed): Muestra la lista de categorías de feeds, lo contenido en una categoría, o una suscripción concreta. Usuarios: ∙ Presentación predeterminada de acceso a la cuenta de usuario: permite ingresar en el sistema, es similar al módulo Acceder. ∙ Presentación de registro predeterminado: muestra una pantalla para que se puedan registrar nuevos usuarios.
∙ Recordar por defecto: Si se ha olvidado el nombre de usuario, proporcionando una cuenta de correo asociada envía un mensaje con el nombre de usuario. ∙ Restablecer distribución en pantalla por defecto (!?): Proporcionando la cuenta de correo, envía un mensaje con la contraseña. ∙ Presentación de usuario predeterminada: Muestra los detalles de los usuarios registrados. ∙ Usar presentación de formulario: permite cambiar los detalles de la cuenta de correo URL embebida (wrapper): Incluye en nuestra página otra página de internet. Enlace externo: Link hacia una página de Internet. Nos permite escoger si se abrirá en la misma ventana o en otra nueva, con o sin barra de navegación. ¡Importante incluir el "http://" porque si no, considerará que el enlace es interno!
6. Módulos.
Los módulos son partes de la página que se ubican alrededor del contenido principal de la misma, que pueden añadir contenido propio o mostrar enlaces a determinadas zonas del sitio. Un ejemplo de posible estructura puede ser similar a lo que mostramos a continuación, aunque la distribución exacta dependerá de la plantilla que estemos usando:
Header (puede contener módulos) Módulos izquierda Módulo Top Zona principal de la página Módulos derecha
Componentes (+ Plugins)
Módulo X
Módulo X
Footer (puede contener módulos)
Describimos a continuación los que no se han explicado en la Guía de inicio rápido.
Artículos relacionados: Si al crear los artículos vamos añadiendo palabras en Información de metadatos, en este módulo nos saldrá una lista de artículos que comparten palabras incluidas en esta lista. Banner: Permite mostrar imágenes (normalmente publicitarias), realizando un seguimiento de cuántas veces se han mostrado, y de cuántas veces el visitante ha hecho clic sobre ellas, a fin de realizar un seguimiento comercial. Lo normal es que, dentro de un cliente y categoría, se muestren de modo aleatorio. Buscar: Muestra un cuadro en el que el visitante puede introducir una o más palabras, a partir de las que se realizará una búsqueda por el contenido del sitio, y se mostrarán los resultados encontrados y la posibilidad de refinar más la búsqueda si así se desea. Contenido archivado: Accedemos a la lista de artículos que se encuentran en este estado. Recordamos que estos artículos no son visibles dentro de su categoría. Encuesta: Permite crear y acceder a los resultados de encuestas. Estadísticas: Muestra información sobre el servidor, el sitio y los clics en la página. Footer: Muestra información de los derechos de Copyright de Joomla! Imagen aleatoria: Muestra una imagen al azar de las que tengamos en un determinado directorio, teniendo en cuenta que la ruta que proporcionemos es la relativa al sitio. Marco (wrapper): Muestra un marco con la página que hayamos definido dentro de él. Menú: Si se desea crear un módulo de tipo menú, lo normal es no hacerlo desde el gestor de módulos, sino desde el de menús. Luego, desde el gestor de módulos habilitarlo y definirle las propiedades adicionales que se desean. Repetimos aquí lo relativo a las plantillas: si deseamos poner un menú en horizontal en la parte superior de la página, lo creamos y después le asignamos la posición de la plantilla que nos vaya bien (en muchas plantillas es "top", pero no en todas). Hay plantillas que no aceptan esta posibilidad. Personalizar HTML: Mediante un módulo HTML podemos, por ejemplo, poner una imagen fija en un lateral, o una imagen que lleve a un enlace, o cualquier otra cosa que se nos ocurra (html, javascript, java, flash...) Presentación de la suscripción: Permite mostrar los feeds correspondientes a la página a la que queramos estar suscritos. Quién está en línea: invitados, registrados, etc. Secciones: Crea un menú mostrando la secciones del sitio. Últimas noticias: Muestra un enlace hacia los artículos más recientemente añadidos o modificados.
7. Extendiendo nuestro Joomla!
Aumentar o modificar las capacidades de nuestro gestor de contenidos es muy sencillo en Joomla, y se realiza desde un único sitio: Extensiones > Instalar/Desinstalar. Las extensiones en Joomla! se pueden clasificar en tres tipos principales: Componente: aplicación que genera el cuerpo de la página principal. Además de los componentes que vienen con el core de Joomla!, podemos instalar otros adicionales que generen nuevos tipos de contenido. Módulo: genera pequeños bloques html en cualquier página. Extrae información de la base de datos para mostrarla de modo simplificado alrededor de los componentes. O bien añade funcionalidades adicionales que no son críticas para el funcionamiento del sistema. Plugin: cambia el comportamiento del código dinámicamente (antes se llamaban mambot). Interceptan el contenido de los artículos y los alteran o les agregan información adicional, completando así el contenido mostrado. Además, podemos tener extensiones de lenguajes, herramientas y extensiones especiales. En Joomla! 1.5 podríamos considerar que las plantillas también son extensiones, puesto que se manejan de modo similar al resto. Para instalar, es indiferente que sea un nuevo componente, plugin o pantilla. En Extensiones > Instalar/Desinstalar proporcionaremos un archivo (normalmente comprimido en zip o tar.gz), un directorio de instalación o una ruta url que contengan la extensión, y después seleccionaremos Instalar. El gestor detecta qué tipo de extensión es y lo trata adecuadamente. Para desinstalar, tenemos diversas partes dependiendo de si es un componente, módulo, plugin, idioma o plantilla. Entre los tres primeros observaremos que hay algunos que no podemos desinstalar, porque forman parte del núcleo de Joomla! (aunque algunos de los que sí podríamos, no debemos desinstalarlos porque probablemente el sitio quedará poco utilizable). Hay muchas extensiones que no están diseñadas para Joomla! 1.5, sino para la versión 1.0 (o incluso para Mambo). Se pueden hacer funcionar si habilitamos el modo heredado (legacy mode), en Extensiones > Gestor de Plugins > Sistema Legacy, que por defecto viene deshabilitado. En el momento de redactar este manual existen cerca de cuatro mil extensiones disponibles en el repositorio oficial (http://extensions.joomla.org). Parece difícil conocerlas y probarlas todas, pero vamos a comentar algunas que pueden ser útiles o curiosas, o que aportan un valor extra a nuestro sitio: Remository (componente): Si en nuestro sitio necesitamos crear una zona de descargas, este componente (o Docman para Joomla! 1.0) nos permite crear una zona de descargas, así como manejar los archivos (subirlos, organizarlos en carpetas). MorpheoShow (componente + plugin): Nos permite crear galerías de imágenes y presentarlas, así como visualizarlas como diapositivas. JCE (Joomla Content Editor) (componente + plugin): Mejora las capacidades del editor estándard que viene con Joomla! Mejora mucho la gestión de imágenes en los artículos, así como la facilidad en
formateado de texto. Es extensible, con lo que se le pueden proporcionar capacidades adicionales. Es necesario instalar primero el plugin y después el componente de administración. JoomlaXplorer (componente): Permite la administración avanzada de los archivos de nuestro sitio. Crear, renombrar, mover carpetas o archivos. Podemos subir archivos comprimidos y descomprimirlos. Cambiar permisos. sh404SEF (componente): Reescribe las direcciones de las páginas de nuestro sitio, haciendo que sean más fáciles de leer y de clasificar por los buscadores. (SEF: Search Engine Friendly, SEO: Search Engine Optimization)
8. Plantillas.
Como hemos apuntado en otras partes de este documento, existen cientos o miles de plantillas para Joomla! en la red, gran parte de ellas gratuitas. Una plantilla no es más que una cierta cantidad de código html, php y css que dota a nuestro sitio de una determinada apariencia visual. Pero detrás de esa apariencia existe una estructura que necesitamos conocer mínimamente, para saber si la plantilla se puede adaptar a lo que deseamos de ella, si nos podemos adaptar nosotros a lo que nos ofrece o si debemos buscar otra que sea más apropiada. Cuando comenzamos a trabajar con Joomla! es bastante común que nos ocurra lo siguiente: creamos un nuevo módulo, definimos sus características y guardamos los cambios. Pero cuando vamos a la página donde se supone que debería verse, no aparece por ningún sitio. Comprobamos que el módulo está habilitado pero seguimos sin verlo. Lo más normal es que hayamos definido que el módulo aparezca en una posición que no es visible en la plantilla que estamos utilizando. Puede que en la lista de posiciones que se nos ofrecen para el módulo aparezcan algunas que realmente no podemos usar. Para ver qué posiciones tenemos disponibles en la plantilla que utilizamos, es altamente recomendable realizar una previsualización de la misma, en Extensiones > Gestor de Plantillas > PlantillaUsada > Previsualizar. Se nos mostrará la página principal de nuestro sitio con indicación del nombre de las posiciones que se utilizan y su ubicación.
Es posible modificar las plantillas a nuestro gusto, o incluso crearlas desde cero, pero es algo que supera ampliamente los conocimientos que se pretenden impartir en este curso.
9. Copias de seguridad y restauración.
9.1. Copias de seguridad.
Para poder hacer una copia de seguridad de nuestro sitio, o para hacer el traslado completo a otro servidor, necesitamos hacer copia: De la base de datos. De los archivos del sitio. Mostramos a continuación los pasos para salvaguardar en un fichero externo la base de datos. Para ello utilizaremos la herramienta phpMyAdmin, que viene incluida por defecto en el paquete XAMPP, y está disponible en la mayor parte de los servidores que montan sistemas AMP. Entraremos en la página principal de phpMyAdmin, y seleccionamos Exportar.
Es posible que tengamos disponibles más bases de datos, en función de la instalación que nos suministre el proveedor y otras posibles aplicaciones que tengamos instaladas. Seleccionamos la base de datos que nos interese, y seleccionamos las opciones que indicamos en la imagen siguiente, para asegurarnos de que la futura restauración se realizará sin errores.
Al pulsar Continuar tendremos la opción de guardar el archivo generado donde nos interese:
Si abrimos el archivo vemos que contiene el código SQL con toda la información relativa a la creación de la base de datos, las tablas y el contenido de éstas:
Después de copiar la base de datos y obtener el correspondiente archivo .sql, debemos copiar la carpeta completa que contiene el sitio (o descargarla por ftp), manteniendo la estructura completa. Si queremos hacer modificaciones de la plantilla o incluso operaciones más avanzadas con el código, puede ser el modo ideal de realizarlas, ya que podemos probarlas offline antes de subirlas al sitio público. ¡Cuidado con las modificaciones manuales de la base de datos o de contenido de determinados archivos! Hay que saber muy bien lo que se hace...
9.2. Restauración de un sitio.
Imaginemos que al entrar en nuestro sitio, y en lugar de ver la página principal nos encontramos esta situación:
Según parece, ha ocurrido un desastre y se nuestra página se ha movido a /dev/null, o algo así. Vamos a restaurar nuestro sitio a partir de la copia de seguridad que habíamos hecho en el punto anterior. Lo primero que haremos es, mediante nuestro cliente ftp, subir la estructura de ficheros y carpetas que habíamos bajado. Una vez que lo hayamos hecho, el mensaje variará y ya tendremos algo parecido a esto:
Lo cual quiere decir que desde el código de nuestro sitio estamos intentando acceder a nuestra base de datos, que debido al desastre ocurrido aún no existe. Así que vamos a restaurarla, y lo haremos también con phpMyAdmin:
Seleccionamos el archivo .sql que habíamos creado antes:
Vemos que no hay prácticamente ninguna opción adicional, además del juego de caracteres (que normalmente será UTF8), así que pulsamos Continuar:
Una vez hecho esto, nuestro sitio estará restaurado y funcionando como cuando hicimos nuestra copia de seguridad.
10. Enlaces de interés.
Aunque existen libros editados sobre Joomla, parece lógico que alrededor de un gestor de contenidos de código libre, creado para y mediante la Web, existan en Internet multitud de sitios con amplia información. A continuación mostramos una pequeña selección: El sitio oficial: http://www.joomla.org/ Foro oficial: http://forum.joomla.org/ Sitio oficial de extensiones: http://extensions.joomla.org/ Demo online: http://demo.joomla.org/ Traductores españoles: http://www.joomlaspanish.org/ Foro de joomlaspanish: http://www.joomlaspanish.org/foros/ Buenos recursos, traductores de la Guía de Inicio Rápido: http://comunidadjoomla.org/ Curso de Joomla! (¡hecho con Moodle!): http://www.josedomingo.org/web/course/view.php?id=37 Artículos y videotutoriales: http://www.edujoomla.es/ Plantillas: http://www.joomla24.com/ http://www.siteground.com/joomlahosting/joomlatemplates.htm