Joomla! 1.7

Guía para principiantes

Acerca del libro

El presente libro, como cualquier otro, tiene capítulos, una introducción, muchas capturas de pantalla y trata cerca de la última tecnología disponible en el "Joomlaverso".

Está basado en el exitoso Joomla! 1.6 - Guía para principiantes, extendido y con más capítulos. Todos los capítulos han sido revisados, y se han añadido nuevas capturas de pantalla cuando ha sido necesario.

Es un libro que resultará de utilidad para lectores, anunciantes, autores, traductores y, por supuesto, para la comunidad Joomla!, ya que:

Se distribuye gratuitamente

Puede ser leído gratuitamente, bien directamente en formato HTML en nuestro sitio web, o bien descargándolo en formato PDF

Te ayuda a solucionar tus tareas

¡Hay mucho por descubrir en el libro!

Está patrocinado

El libro está patrocinado por comapañías de 15 países diferentes y 3 continentes distintos, compañías que constituyen un parte importante de la comunidad Joomla!.

Thank you: 2Value, 5aces, Anything Digital, B01 Consulting, EDVAS, joomla4all, Joomlapolis, JoomlArt, Migur, NetArtS, Open Source Support Desk, redWEB, SKEPSIS Consult, Sigsiu.NET GmbH, SistaSystems, TC4J - Templateclub4Joomla - David & Andreas, tec-promotion GmbH, Techjoomla, Think Network GmbH, Timble, video2brain, Vistamedia

Los patrocinadores te ofrecen descuentos

¡La mayoría de las compañías que patrocinan el libro tienen preparado un descuento para ti!

Echa un vistazo a sus anuncios en la versión PDF o a sus banners de la parte superior del capítulo que patrocinan en la versión HTML.

Es un trabajo colaborativo

¡Aparte de mí, cuatro autores más escribieron capítulos!

Gracias:

Angie Radtke - Der Auftritt¹. Capítulo: Plantilla Beez

Andreas Kölln - TC4J - Templateclub4Joomla²: Capítulo: Extensiones Imprescindibles

Henk van Cann - 2Value³. Capítulo: Ganar dinero y respeto con Joomla!

Jen Kramer - 4Web Inc⁴. Capítulo: Crear un sitio Joomla! 1.7 desde cero

Es multilingüe

El libro estará disponibl en al menos tres idiomas más (espero que muy pronto).

Spanish - Joomla! 1.7 - Guía para principiantes

Muchas gracias al traductor

Isidro Baquera (Gnumla)

Muchas gracias a los patrocinadores

Como puedes comprobar, aún puedes anunciar tu producto o sevicio en esta versión del libro. Para patrocinar un capítulo, sigue el siguiente enlace: Joomla! 1.7 - Guía para Principiantes⁵

Alemán - Joomla! 1.7 - Das Einsteigerbuch

Gracias a Addison-Wesley

Muchas gracias a los patrocinadores

Sigsiu.NET GmbH, tec-promotion GmbH, Basta! Media

Como puedes comprobar, aún puedes anunciar tu producto o sevicio en esta versión del libro. Para patrocinar un capítulo, sigue el siguiente enlace: Joomla! 1.7 - Das Einsteigerbuch⁶

Polish - Joomla! 1.7 - Przewodnik dla poczatkujacych

The idea of the polish translation was born in a Hotel in Ciescyn, Poland and now it is developing in a very good way!

Muchas gracias al traductor s:

Agnieszka Huczala, Barbara Szlachta, Ewa Święcka, Krzysztof Hanzel

Muchas gracias a los patrocinadores

cloudaccess, Sigsiu.NET GmbH

Como puedes comprobar, aún puedes anunciar tu producto o sevicio en esta versión del libro. Para patrocinar un capítulo, sigue el siguiente enlace: Joomla! 1.7 - Poradnik dla początkujących⁷

Portugués - Joomla! 1.7 - Guia para Iniciantes

Muchas gracias al traductor

•Ricardo Dias (joomlabr)

Como puedes comprobar, aún puedes anunciar tu producto o sevicio en esta versión del libro. Para patrocinar un capítulo, sigue el siguiente enlace: Joomla! 1.7 - Guia para Inciantes⁸

Ruso - Joomla! 1.7 - Руководство для начинающих

Muchas gracias al traductor

•Alexey Baskinov (joomru)

Como puedes comprobar, aún puedes anunciar tu producto o sevicio en esta versión del libro. Para patrocinar un capítulo, sigue el siguiente enlace:: Joomla! 1.7 - Руководство для начинающих ⁹

Danés - Joomla 1.7 - Begynder Guide

Gracias a los traductores:

Rikke Alrø, RedWeb

y al corrector

Ole Bang Ottosen

Como puedes comprobar, aún puedes anunciar tu producto o sevicio en esta versión del libro. Para patrocinar un capítulo, sigue el siguiente enlace:: Joomla! 1.7 -  Begynder Guide¹⁰

¡Queremos conocer tu opinión!

Deja tus comentarios en los capítulos de las distintas versiones en HTML, para que podamos seguir mejorando el libro en futuras ediciones.

¡Involúcrate en el siguiente proyecto!

La próxima versión de Joomla! está a la vuelta de la esquina...

¡Únete a nosotros!

Advertisement

Anúnciate en la versión en español!

¡Patrocine este capítulo! Puede ser una buena idea para promocionar su negocio :)

http://cocoate.com/es/j17es/publicidad

Capítulo 1

Introduction

Joomla! es un sistema de gestión de contenidos gratuito para la creación de sitios web. Es un proyecto de software libre que, al igual que la mayoría de estos proyectos, está en constante movimiento. Es impredecible, algunas veces indescriptible, parcialmente controvertido, a menudo muy sexy y en algunas ocasiones un poco aburrido. Sin embargo, o quizás debido a estas razones, ha tenido un tremendo éxito desde su aparición hace 5 años y cuenta con millones de usuarios del mundo entero.

La palabra Joomla es una derivación de la palabra Jumla del lenguaje africano Swahili que significa “todos juntos”.
El proyecto Joomla es el resultado de una acalorada discusión entre la Fundación Mambo, que fue creada en Agosto de 2005, y su equipo de desarrolladores. Joomla fue desarrollado a partir del exitoso sistema Mambo. Es utilizado en sitios web de todo el mundo para desarrollar desde páginas sencillas hasta complejos sitios corporativos para empresas. Es sencillo de utilizar, administrar y sobretodo muy fiable.
El equipo de Joomla se ha organizado y reorganizado varias veces en los últimos cinco años.

•Desde 2005 a 2009, Joomla 1.0 fue desarrollado hasta alcanzar la versión 1.0.15. Este desarrollo fue finalizado oficialmente en septiembre de 2009.

•Desde 2005 hasta ahora, Joomla 1.5 está todavía en desarrollo. Fue presentado como versión estable en enero de 2008, y su vida útil finalizará en Abril de 2012.

•Desde 2008 hasta 2011, Joomla 1.6 se está desarrollando. Desde enero 2011 estuvo disponible una versión estable. En final de la vida útil de Joomla 1.6 llegará un mes después del lanzamiento de Joomla! 1.7.

•Joomla! 1.7 verá la luz en julio de 2011, y su misión será allanar el camino para la próxima versión con soporte de larga duración, la 1.8 o 2.0.

Los usuarios se mantuvieron fieles con Joomla. Muchos migraron sus sitios de Mambo a Joomla y se han ido formando desde su creación. Además muchos nuevos usuarios se han sumado en los últimos años, aunque todavía quedan personas en el mundo que no han oído hablar nunca de este CMS, que junto a Drupal y Wordpress, es uno de los sistemas de gestión de contenidos más usados en el mundo.

Figura 1: Google Trend 2011-06-20 worldwide Drupal, Joomla!, WordPress

En la Figura 1, Joomla! y Wordpress están al mismo nivel de acuerdo al volumen de búsquedas. Joomla! y Wordpress son buscados tres veces más que Drupal. Sin embargo, el volumen de búsquedas ha decaído desde el año 2010. Era hora de que Joomla! reaccionara con el lanzamiento de Joomla! 1.6 en enero de 2011 y de Joomla! 1.7 en julio del mismo año.

Figura 2: Google Trend 2011-06-20 Germany - Drupal, Joomla!, WordPress

La situación en Alemania es diferente (Figura 2). Joomla tiene casi el doble del volumen de búsquedas de WordPress, mientras que WordPress es casi 4 veces superior a Drupal.

A continuación hay algunas estadísticas extraídas de Google Trends (Tabla 1):

País | Drupal | Joomla! | WordPress
Alemania | 1 | 6.7 | 3.8
Francia | 1 | 5.5 | 3.45
Italia | 1 | 6.4 | 3.6
Polania | 1 | 8.3 | 3.1
España | 1 | 4.05 | 3.85
Suiza | 1 | 9.5 | 3.4
Reino Unido | 1 | 2.60 | 3.65
EEUU | 1 | 1.55 | 3.25
China | 1 | 1.4 | 5

Tabla 1 Google Trend - Drupal, Joomla!, Wordpress

Existen diferencias notables entre los países en el uso de los distintos sistemas de gestión de contenidos. En Alemania, por ejemplo, TYPO3 juega un papel importante, siendo su volumen de búsquedas comparable al de Joomla. Sin embargo en Estados Unidos el ratio Joomla – TYPO3 es 1.0 contra 0.01, lo cual indica un impacto más o menos no comparable.

En Febrero de 2011 el 2.7% de todas las páginas web de Internet estaban hechas con Joomla¹¹.

El rango de sitios web creados con Joomla abarca desde sencillas páginas personales a complejas aplicaciones de negocios y proyectos basados en el Framework de Joomla!. Lo que hace a Joomla tan exitoso son las formas en la que puedes usarlo y que te voy a describir en este libro.

¿Quién soy?

Mi nombre es Hagen Graf, tengo 47 años y vivo en Fitou¹², Francia. Estoy casado con la mujer de mis sueños y tengo cuatro hijas.

Mi trabajo consiste en muchas actividades diferentes tales como la enseñanza, asesoramiento, programación, comprensión de estructuras, desarrollo de nuevas aplicaciones y siempre estoy abierto a probar cosas nuevas.

De hecho, mi trabajo puede ser realizado completamente online, pero en ocasiones los clientes pueden tener miedo de los proyectos que son 100% a distancia. Este es el motivo por el que estoy siempre en la carretera. Estar en la carretera significa reunirse con clientes de diferentes países, idiomas y culturas. Significa largos viajes en coche, bus o tren, así como responder rápidamente los emails con solicitudes de los clientes, los mensajes en Facebook y los tweets.

Esta forma de trabajar tiene sus implicaciones para aquello que yo suelo llamar “la oficina”. Necesito tener acceso desde cualquier sitio a mis emails, fotos, videos, tweets y documentos. Mi oficina se encuentra donde yo esté.

¿Quién eres tú?

Por supuesto que yo no puedo saber a qué te dedicas exactamente, pero muchas de las personas con las que he trabajado tienen, en cierto sentido, un trabajo similar al mío. Algunas veces los empleados de grandes compañías no pueden trabajar con la mayor flexibilidad por diversas razones. Tu experiencia con los ordenadores es probablemente similar a la mía. Muchos de nosotros comenzamos con un viejo PC y un Windows como sistema operativo en la escuela o en casa. Luego con la experiencia llegas a conocer la dura realidad de las aplicaciones ofimáticas, pérdidas de datos, falta de memoria, discos duros y las aventuras de configurar una impresora. Las maravillosas relaciones entre estas cosas ha ha sido sustiuida por la nueva forma de trabajo centrada en el usuario de la Web 2.0 y por el uso de los smartphones, si bien esto no hace que el trabajo sea necesariamente más sencillo.

Si no te gusta enredarte con pasión por las noches con tu sistema operativo, con tu teléfono u organizando tus fotos y tu música, moviendo los archivos de un dispositivo a otro, entonces probablemente eres como yo - feliz cuando todos tus dispositivos y aplicaciones están funcionando, cuando puedes acceder a tus datos por Internet y todo está funcionando correctamente. Si trabajas desde una oficina en casa, un buen entorno de trabajo es particularmente importante. Los fallos en el funcionamiento del software y el hardware pueden convertirse rápidamente en una pesadilla.

Suelo categorizar a los usuarios en alguno de los siguientes grupos:

•Visitantes: Visitan un sitio web y no les importa en absoluto qué sistema utilizaste para crear el sitio.

•Usuarios: Utilizan el sitio web. Generan contenido utilizando procedimientos predefinidos.

•Diseñadores o Integradores Web: Instalan un sitio Joomla! en un servidor, crean categorías, contenidos, enlaces y módulos de menú, configuran plantillas e idiomas. Son versátiles y usualmente son los únicos responsables del sitio web.

•Diseñadores CSS: A menudo trabajan exclusivamente con archivos que tienen la extensión .css

•Diseñadores HTML: Dan a los diseñadores CSS los fundamentos que ellos necesitan para su trabajo. En Joomla también se encargan de crear los denominados "template overrides".

•Desarrolladores: Saben programar y usan lenguajes como PHP y JavaScript. Mejoran el core de Joomla! con funcionalidades adicionales

•Arquitectos: Piensan sobre la seguridad, la velocidad y la calidad del código.

El diseñador web juega un papel especial en esta lista. Usualmente tiene que cubrir todos los roles, lo que constituye un gran reto. Mientras escribo este libro, me sitúo a mí mismo con el perfil de diseñador web.

Una compañía, una institución, un club, una organización... sí, probablemente cualquiera, necesita una presencia web que sea amigable con el usuario y flexible. Una presencia que los desarrolladores puedan modificar fácilmente a través del navegador a lo largo del tiempo; una presencia que sustituya su archivador y su agenda de contactos de piel; una presencia que pueda comunicarse con diferentes dispositivos y que pueda ser fácilmente extendida.

Doy por hecho que tu sitio web ya es el lugar en el que explicas lo que tú mismo o tu compañía hacéis. Ese es el lugar en el que mantienes las relaciones con tus clientes durante 24 horas al día, 7 días a la semana. Tu sitio web contiene probablemente una colección de aplicaciones y datos que resumen tus actividades. Tu sitio debería contener también interfaces para permitir a otras aplicacioens usarlos.

Hasta hace unos pocos años, la creación de un sitio web era algo muy difícil de hacer. Si bien no tenías por qué se un especialista de renombre, sí que era necesaria una combinación de perseverancia y capacidad de diversión con lo que hacías para llegar a conseguir resultados decentes. En aquellos tiempos tenías que crear páginas HTML estáticas en un editor HTML, y a continuación subirlas mediante cliente FTP a un servidor. Incluso para crear la interactividad más sencilla, como por ejemplo un formulario de contacto o un foro, tenías que aprender algún lenguaje de programación.

Es más que comprensible que mucha gente no estuviera dispuesta a pasar por todo esto, y decidiera encomendar la creación de sus sitios a agencias web, o que incluso siquiera se planteasen nada sobre el proyecto. Gracias a Facebook y a kits como el de Google Sites, crear páginas web simples se ha convertido en algo relativamente fácil, pero si quieres algo único, deberías familiarizarte con un sistema gestor de contenidos.

Joomla! ofrece todo lo que necesitas para crear tu propio sitio web completamente personalizado.

¿De qué va este libro?

En primer lugar, este libro trata acerca de Joomla! y cómo usarlo.

Joomla! es una herramienta con múltiples posibilidades y puedes usar el sistema en una enorme variedad de configuraciones dependiendo de tus ideas y deseos.

Con el objetivo de proporcionar un acceso cómodo a los contenidos, he estructurado el libro como sigue:

1.Esta introducción

2.Casos de éxito

3.Instalación

4.Estructuras y términos

5.¿Qué novedades hay en Joomla! 1.7?

6.Administrando el contenido

7.Cómo crear una página "sobre nosotros"

8.Un artículo típico

9.El gestor multimedia

10.El formulario de contacto

11.Estados, papelera y desbloqueo

12.Estructurar el contenido en categorías

13.Configuración del sitio y de los contenidos

14.Plantillas (templates)

15.Navegación

16.Usuarios y permisos

17.Gestión de extensiones

18.Extensiones del núcleo

1.Anuncios (banners)

2.Canales electrónicos (newsfeeds)

3.Contactos

4.Correos masivos

5.Enlaces web

6.Mensajería

7.Redirecciones

8.Buscar

19.Módulos

20.Plug-Ins [

21.Trabajando con plantillas

1.Crea tu propio estilo

2.Personalizando plantillas existentes

3.Overrides (sobreescrituras)

4.Crear una nueva plantilla usando Atomic

22.Plantilla Beez

23.Optimización para motores de búsqueda

24.Sitios web multilenguaje

25.Crear un sitio Joomla 1.7 desde cero

26.Extensiones imprescindibles

27.Actualizar desde versiones anteriores

28.Ganar respeto y dinero con Joomla

29.Recursos

¿Qué serás capaz de hacer después de leer este libro?

Aunque seas un principiante, serás capaz de gestionar tu propio sitio Joomla! a través de un navegador web.

Si de alguna manera estás familiarizado con HTML, CSS y edición de imágenes, serás además capaz de personalizar una plantilla para tu sitio.

¿Alguna pregunta?

¡No dudes en preguntar!

Evidentemente, no puedo proporcionar servicio técnico. Los foros oficiales de Joomla! proporcionan una gran cantidad de conocimiento (fundamentalmente en inglés, pero también en español¹³), y seguro que en ellos podrás encontrar respuestas a tus preguntas. Sin embargo, si tienes comentarios o preguntas acerca del libro no dudes en dejarlos en la sección de comentarios que hay un poco más abajo.

Fundamentos

Antes de instalar Joomla! 1.7, crear un sitio web y hacerte rico y famoso, por favor tómate un tiempo echando un rápido vistazo a los fundamentos ¹⁴.

Lo que escribí allí también sirve para tu sitio Joomla!.

Advertisement

http://complusoft.es

Capítulo 2

Casos de éxito

¿Qué aspecto tienen los sitios web creados con Joomla?

Esta pregunta no es fácil de contestar, ya que en la mayoría de los sitios web basados en este software el diseño ha sido creado por un diseñador gráfico y, posteriormente, "transformado" en una plantilla compatible con el CMS. Por lo tanto, el exterior de un sitio puede ser engañoso. Aquí tienes algunas capturas de sitios web realizados con Joomla para que te hagas una idea de lo que se puede conseguir con él:

La Torre Eiffel

Creo que este edificio te suena de algo, ¿no? Sobran las presentaciones :)

Figura 1: The Eiffel Tower

Sitio web: http://tour-eiffel.fr/

Creador: Mairie de Paris (http://paris.fr/)

The Howoldies

¡Próximo lanzamiento! Somuga, una compañía de animación vasca, desarrolló este sitio con sus personajes originales para mostrar un ejemplo de animación en un entorno completamente de código abierto (Figura 2).

Figura 2: THE HOWOLDIES

El sitio está desarrollado con Joomla 1.6 y HTML5, y está disponible en 3 idiomas (euskara, español e inglés).

Es un ejemplo de algunas de las últimas tecnologías disponibles integradas con Joomla!.

Sitio web: coming soon

Creador: http://www.4webinc.com/

Más de 3000 sitios web gubernamentales construidos con Joomla!

JoomlaGov es un "escaparate" de sitios web de gobiernos locales, regionales, nacionales y supranacionales construidos con Joomla a lo largo y ancho de todo el mundo. Hay más de 200 países representados y, apenas un par de meses después de su presentación en la conferencia 'J and Beyond'¹⁵ en mayo de 2011, contiene casi 3,000 sitios.

Este sitio es un gran ejemplo de cómo la Comunidad Joomla!¹⁶ es capaz de colaborar con el único objetivo de resaltar las cualidades del CMS Joomla al mundo entero. Por poner un ejemplo de entre todos los sitios disponibles, el sitio web de la Presidencia de Estonia¹⁷ bien merece una visita (Figura 3).

Figura 3: JoomlaGov

Construido usando Joomla!, K2 & Google Maps (API version 3)

Sitio web: http://www.joomlagov.info

Creador: http://raramuridesign & http://piezoworks.be

eCommerce

Una tienda online danesa basada en Joomla! y en el componente RedShop (Figura 4).

Figura 4: Trend Bazaar

Sitio web: http://www.trendbazaar.dk

Creador: http://redweb.dk

Sitio corporativo

Este sitio web es el 'típico' sitio corporativo. Joomla! es perfecto para este tipo de sitios. (Figura 5).

Figura 3: Vanerumgroup

Sitio web: http://www.vanerumgroup.com

Creador: http://5aces.be

¿Y?

Estos sitios web tienen el aspecto que se supone que un sitio web debe tener :-).
Si yo no te hubiera desvelado que estaban hechos con Joomla, probablemente no te hubieras dado cuenta de ello.

¿Cómo encontrar páginas hechas con Joomla?

Te mostraré algunas maneras de hacerlo-

joomla.org

¡Simplemente echa un vistazo al sitio oficial del proyecto Joomla! Yo encontré los sitios que acabo de mostrarte en el Joomla! Showcase¹⁸, el "escaparate" oficial del proyecto. En él encontrarás más de 2000 sitios ordenados por categorías. Tiene un 'sitio del mes', una vista general con los sitios mejor valorados y mucho más (Figura 4).

Figura 4: Joomla! Showcase

Google

Puedes buscar la cadena com_content¹⁹ en Google. El componente "content" la usa en las URLs de las páginas que genera. Hoy en día este tipo de búsqueda no es completamente efectiva, debido a la cantidad de sitios que usan URLs optimizadas para buscadores (SEF URLs), pero aún así el resultado sigue siendo impresionante.

Comprueba el sitio web más de cerca

Si estás en un sitio web y quieres saber si fue creado con Joomla! o no, echa un vistazo a su código fuente. En la sección 'header', deberías encontrar la siguiente línea:

<meta name="generator" content="Joomla! - Open Source Content Management" />

Otra opción sería simplemente tratar de acceder a la URL de la zona de administración del sitio, introduciéndola a mano en la barra del navegador:

http://ejemplo.com/administrator

Aquí tienes la muestra de lo que aparece cuando haces esto para el sitio de la Torre Eiffel ²⁰ (Figura 5)

Figura 5: Parte administrativa del sitio Eiffel Tower

Pregúntales a tus amigos

Se me ocurrió  tuitear esto ²¹

I want YOUR site :) Looking for 5+ great Joomla! site examples for the showcase Capítulo cocoate.com/j17/showcase plz reply a link+RT

(Quiero TU sitio :) Busco 5+ ejemplos de sitios Joomla! increíbles para el capítulo de casos de éxito cocoate.com/j17/showcase xfavor respoder con link+RT)

y... ¡casi al instante recibí los enlaces de los sitios que acabas de ver más arriba!

¿Alguna otra idea?

¿Conoces alguna otra manera de detectar sitios Joomla? Siéntete libre de dejar un comentario.²².

Advertisement

http://jandbeyond.com

Capítulo 3

Instalación

Gracias al instalador web, Joomla! puede ser instalado en cuestión de unos pocos minutos.

Para poder instalar Joomla! en tu PC local, es necesario que configures tu "propia internet local", para lo que necesitarás un navegador, un servidor web, un entorno PHP y un sistema de bases de datos soportado por Joomla!. Llamamos a esto "una pila LAMP (o XAMP)" o on sistema servidor de cliente. Los archivos de Joomla! serán copiados dentro de este sistema y configurados con el instalador web Joomla!.

Requerimientos mínimos del sistema:

•un servidor web instalado y en funcionamiento, como Apache o Microsoft IIS, versión 1.13.19.

•el lenguage de scripting PHP, versión 5.2.4 o superior. El soporte para MySQL y Zlib debe estar compilado en la instalación de PHP. Zlib es una librería que permite a PHP leer paquetes comprimidos con el formato ZIP.

•el gestor de bases de datos MySQL, versión 3.23 o superior, o para poder tener los juegos de caracteres Unicode MySQL 4.1.x.

Variantes de instalación

Dado que este tema es igual para todos los sistemas basados en PHP, prefiero remitirme al capítulo variantes de instalación de los sistemas basados en PHP²³.

Piedras en el camino

Este tema de la instalación de Joomla es muy complejo, dado que existe un gran número de proveedores, e incluso un número aún mayor de versiones instaladas de servidores web, PHP y MySQL, así como de herramientas de gestión de espacios web. Los puntos críticos durante el proceso de instalación a menudo consisten en:

•el modo seguro de PHP está activado, lo que impide que subas archivos al servidor,

•rutas de reescritura 'prohibidas' en el servidor web Apache debido a que el Motor de Reescritura de Apache (mod_rewrite) no está activado,

•los permisos de directorio en Linux y OSX, que se configuran de manera distinta a los de Windows.

Basically, the easiest way that almost always works, is the following:

•Descarga el último paquete de instalación de Joomla.org [84] a tu PC, y descomprímelo en un directorio temporal.

•Sube vía FTP los archivos descomprimidos al servidor web que has contratado, o al directorio de tu instalación local. Los archivos deben ser instalados en el directorio público. Estos directorios normalmente se llaman htdocs, public_html o simplemente html. Si ya hay otras instalaciones en ese directorio, puedes especificar un subdirectorio dentro del directorio público para realizar tu instalación de Joomla!, al que subirás los archivos descomprimidos. Muchos proveedores de alojamiento te permiten enlazar tu nombre de dominio directamente a un directorio cualquiera, no necesariamente al raíz.

•Debes encontrar el nombre de tu base de datos. En muchas ocasiones, una o más bases de datos están incluídas en tu paquete de alojamiento. A veces, los nombres del usuario, la base de datos y la contraseña te los dan directamente; otras veces tienes que encargarte tú de configurarlos. Normalmente puedes hacer esto último a través de una interfaz de configuración web. Sea como sea, el caso es que necesitarás los datos de acceso a la base de datos para el instalador web de Joomla!

El instalador web de Joomla!

El instalador web de Joomla! joomla.org²⁴ y descomprime los archivos en el directorio raíz de tu servidor web (por ejemplo: /htdocs). A partir de ahora, todo va a ir realmente rápido, porque el instalador web de Joomla! está haciendo el trabajo sucio por ti. Desde tu navegador, ve a la URL de tu servidor local http://localhost/ (normalmente es esta o si estás instalando en el servidor remoto, al dominio que has contratado)

Paso 1 – Eligiendo un idioma

El instalador web aparace en tu navegador con una selección de idiomas. Elegir uno es el primero de los siete pasos de los que consta el proceso de instalación. Establece el idioma deseado y haz clic en el botón 'Siguiente' (Figura 1).

Figura 1: Instalador – Seleccionar idioma

Paso 2 – Comprobación de instalación

La comprobación de instalación (Figura 2) debería ayudarte a verificar si tu entorno de servidor es el adecuado para la instalación de Joomla! o no.

Figura 2: Instalador – Comprobación de instalación

Si ves la mayoría de los resultados del test en verde es un buena seña. Dependiendo de tu configuración, puede haber diferencias. El instalador de Joomla! comprueba las opciones de configuración del servidor web (en nuestro caso Apache), PHP y del sistema operativo. Si se usa un sistema Unix (Linux, Mac OS X), debes prestar atención a los permisos de archivo [88]. Esto es especialmente importante para el archivo configuration.php. Este archivo será generado al final de la instalación con los valores concretos de tu sitio. Si el instalador no puede escribir en el directorio raíz, Joomla! no puede crear el archivo, y la instalación no podrá completarse. En caso de que los permisos de escritura aparezcan con un "No" rojo, trata de configurar correctamente los permisos en tu servidor, y haz clic en el botón "repetir el chequeo". Una vez que todo esté "en verde", haz clic en el botón Siguiente, y llegarás al siguiente paso, Licencia.

Paso 3 – Licencia

Cada producto de software está licenciado de una u otra manera. Joomla! está licenciado de acuerdo con la versión 2.0 de la GNU General Public License (Figura 3).

Figura 3: Instalador – Licencia

Paso 4 – Base de datos

En el cuarto paso, configuración de la base de datos, se requerirán los parámetros de tu base de datos (Figura 4). Puedes crear cualquier número de bases de datos en tu entorno de servidor local. Tienes un usuario MySQL con el nombre root. Este usuario root es el administrador de MySQL y puede, por tanto, hacer cualquier cosa entu sistema MySQL. La contraseña depende de tu entorno de servidor (no se necesita ninguna con XAMPP, mientras que con MAMP la contraseña es también root)

Figura 4: Instalador – configuración de la base de datos

Introduce los siguientes vlores en tu instalación local:

•nombre del host: localhost

•nombre de usuario: root

•contraseña: [sólo tú la conoces]

Ahora selecciona el nombre de la base de datos. En un entorno de producción en un servidor de bases de datos con un proveedor, probablemente tendrás una cuota fija de espacio de base de datos, y los credenciales de base de datos están predefinidos. Si tienes acceso de super administrador (usuario root) a tu servidor MySQL, puedes introducir un nombre para una nueva base de datos. Joomla! creará entonces esa base de datos.

Haciendo clic en el triángulo verde de configuración avanzada aparecerán opciones adicionales. Puedes seleccionar si las tablas de cualquier instalación Joomla! en esa base de datos serán vaciadas o bien si serán guardadas y marcadas con el prefijo bak_.

El campo prefijo de tabla MySQL es realmente práctico. Delante de cada nombre de tabla generado por el instalador web, éste escribirá el texto introducido en ese campo. Por defecto, el instalador web sugiere uno creado aleatoriamente, como w02rh_. El porqué de esto tiene una explicación muy sencilla. A veces  puede ser que tu proveedor sólo te permita el acceso a una base de datos MySQL. Si quieres tener dos o más sitios Joomla! en ese servidor, tienes un problema, ya que las tablas no se diferenciarán unas de otras. Con el prefijo de tabla es posible distinguir entre muchas tablas (w01client_ o w02client_). En nuestro ejemplo, usaremos el que nos sugiere el instalador, w02rh_. El prefijo también se usa para indicar que se trata de datos de respaldo (bak_); ver un poco más arriba.

Paso 5 - Configuración de FTP

Para evitar problemas con los permisos de acceso y posiblemente con un PHP funcionando en Modo Seguro, tienes la posibilidad de usar las funciones FTP de PHP para las subidas y la gestión de archivos. Esto no es necesario en una instalación local. Si has instalado Joomla! en un servidor virtual con tu proveedor de alojamiento, puedes introducir los datos FTP que éste te proporcionó. Si tu proveedos permite esta función, es recomendable por razones de seguridad que crees diferentes cuentas FTP para los usuarios y para la instalación de Joomla!. Activa la cuenta FTP sólo para ese directorio Joomla! (Figura 5).

Figura 5: Instalador – Configuración FTP

Paso 6 - Configuración

La configuración principal está dividida a su vez en tres pasos.

En el primero se te requerirá el nombre que deseas para tu sitio web. Este es el nombre que aparecerá en la barra de título de la ventana del navegador cuando alguien acceda a tu sitio. El nombre también es usado en muchos otros sitios, como por ejemplo los correos electrónicos de confirmación enviados a los usuarios registrados. Para nuestra página de ejemplo, usaré el nombre Joomla! (Figura 6). En la segunda parte se requieren el nombre, correo electrónico y contraseña de administrador. Escribir la contraseña en un trozo de papel es probablemente lo mejor (pero no lo dejes pegado a la pantalla o bajo el teclado :-) ).

En la tercera parte, debes especificar el tipo de datos iniciales que tu instalación Joomla! debería contener.

Instalación de los datos de muestra

Los datos son la parte más importante de tu sitio web. Joomla! permite (y se recomienda a los nuevos usuarios hacerlo) la instalación de datos de muestra. Estos datos te proporcionarán un pequeño manual acerca de Joomla! y muchos ejemplos con los que experimentar de forma segura. Haz clic en el botón instalar los datos de muestra. El instalador cargará los datos en tu base de datos y cambiará el aspeco (Figura 6). Este proceso es poco llamativo, pero necesario para instalar los datos de ejemplo. El botón desaparecerá y una pequeña caja de texto será visible.

Figura 6: Instalador – Configuración – Nombre, E-Mail, Contraseña. datos de muestra

Haz clic en el botón Siguiente y los datos serán transferidos.

Paso 7 – Finalización

En séptimo y último paso serás felicitado por haber instalado Joomla! con éxito (Figura 7). ¡Felicidades de mi parte también! Ahora verás aparecer un aviso en negrita, pidiéndote que elimines el directorio llamado 'installation'. Deberías seguir el aviso, ya que de otro modo tu sitio Joomla! no funcionará correctamente.

Figura 7: Instalador - Finalización

Nota: Un archivo llamado configuration.php ha sido creado en el directorio raíz de tu instalación. Si quisieras repetir la instalación, necesitarás borrar este archivo antes de eliminar el directorio installation. Una vez eliminado, si vuelves a cargar la URL de tu sitio en tu navegador el instalador de Joomla! empezará con una nueva instalación.

Ahora ya has instalado completamente Joomla! y puedes empezar a configurar tu sitio web y su contenido. Puedes elegir entre los botones Sitio (ver el sitio web) y Admin (ver la interfaz de administración). Sigue adelante y echa un vistazo a tu sitio web recién creado haciendo clic en Sitio. En caso de que no hayas borrado aún el directorio installation, recibirás de nuevo un recordatorio cordial para que lo hagas ahora, y a continuación refresques la página.
El resultado se ve impresionante (Figura 8).

Figura 8: Tu sitio web just tras la instalación

Echa un vistazo, navega a través de varias pantallas y trata de familiarizarte con tu nuevo sitio. Muchas características de Joomla! están siendo usadas en este sitio web pre-cargado con datos de muestra. A cintinuación, veremos en detalle algunas de estas características.

Localización

Para poder tener tu sitio web Joomla un idioma distinto al inglés, hay dos posibilidades:

Descargar un paquete completamente localizado de lugar adecuado e instalarlo

Descargar los archivos de idioma e instalarlos. Esta es la opción a seguie para la instalación descrita en este capítulo. Puedes descargarte los archivos de idioma realizados por el equipo de traducción acreditado desde este enlace: http://joomlacode.org/gf/project/jtranslation1_6/frs/?action=FrsReleaseBrowse&frs_package_id=5597

En los capítulos Gestión de Extensiones y Sitios web Multi-lenguaje podrás encontrar más información acerca de cómo localizar tu sitio web.

Eliminar los datos de muestra

Si estás instalando Joomla! por primera vez, te recomiendo que instales los datos de muestra. Tómate tu tiempo y explora el sitio web, y descubre cómo funcionan conjuntamente las distintas partes. Los datos de ejemplo te muestran cómo se verá el sitio web con contenido, y vienen con pequeñas explicaciones acerca del propio contenido de muestra y los módulos. Para tener una breve visión general sobre Joomla, lee las 50 páginas que hat tras el elemento de menú "Usando Joomla!".

Una vez que ya hayas visto suficiente, probablmente desearás configurar tu sitio web de acuerdo con tus necesidades y gustos, sin datos "prefabricados".

¿Cómo conseguir una instalación vacía de Joomla?

Para conseguir una versión vacía puedes:

1.Instalar de nuevo Joomla! 1.7 sin los datos de ejemplo:
Crea una nueva carpera en tu directorio web local (/htdocs) e instala el nuevo Joomla!. Ahora tienes dos instalaciones completas de Joomla!. Esta aproximación es muy útil con fines formativos.

2.Eliminar los datos de muestra desde tu área de administración.

3.Cancelar la publicación de los datos de muestra. Por favor, examina el vídeo adjunto, en el que te voy a mostrar cómo hacer esto.

Si decides seguir los pasos 2 o 3, necesitarás iniciar sesión en el área administrativa de tu sitio. Desde ahí podrás eliminar y/o cancelar la publicación de los datos de muestrs y elementos de menú.

Gestor de menús

Ve al Gestor de Menús en el menú superior de tu zona administrativa (Menús -> Top), haz clic en la casilla de verificación de la parte izquierda que hay en el encabezado de la lista para seleccionar todos los elementos, y a continuación haz clic en el icono Despublicar. Una vez hayas hecho eso, verás un icono rojo junto a cada elemento de menú, en la columna "Estado" (Figura 9)

Figura 9: Gestor de Menús I

Si ahora vuelves a tu sitio web (refresca el navegador pulsando F5), descubrirás que el menú superior ha desaparecido. Repite el mismo procedimiento con los menús Main Menu y About Joomla!. Asegúrate de que seleccionas todos los elementos de menú, excepto el elemento Home. Este elemento no puede ser eliminado, dado que necesitas una página principal. En la parte inferior del gestor de menús, puedes cambiar el número de elementos de menú que se mostrarán (Figura 10).

Figura 11: Gestor de Menús II

Gestor de artículos

Utiliza el mismo procedimiento descrito un poco más arriba. Abre el gestor de artículos y selecciona todos los elementos de contenido para cancelar su publicación o eliminarlos.

Cache

Para asegurarte de que todos los datos desaparecerán realmente de tu sitio, debes limpiar la caché (Sitio -> Mantenimiento -> Limpiar la caché). Una vez más, selecciona todo el contenido y elimínalo.

Sitio web vacío

Tu Joomla! está ahora "vacío" (Figura 11).

Figura 11: Joomla! sin datos de muestra

Advertisement

http://complusoft.es

Capítulo 4

Estructuras y Términos

IMe gustaría explicar y aclarificar algunas estructuras y términos antes de empezar a hablar de la configuración.

Frontend

Con 'frontend' nos referimos a la parte pública, a las áreas del sitio web tal y como los visitantes o los usuarios registrados las ven. Un usuario registrado trabajará normalmente en el frontend. Es como en un comercio, en el que los artículos en venta se muestran en los escaparates y en las estanterías. Aquí puedes echar un vistazo a tu alrededor.

Backend

Esta es tu área de administración, y por eso a veces la llamaremos directamente 'administración' o 'zona de administración'. Puedes otorgar a usuarios registrados los permisos necesarios para trabajar en tu backend. Este privilegio suele estar limitado a unos cuantos empleados, que deben gestionar ciertas tareas del sitio web. Puedes acceder al formulario de acceso de la zona administrativa a través del directorio /administrator

http://localhost/administrator
Ahí puedes iniciar sesión con tus datos de acceso y elegir tu idioma preferido (Figura 1).

Figura 1:Acceso a la administración de Joomla!

Una vez has iniciado sesión correctamente, tendrás acceso a la administración, que estará estructurada de acuerdo a tus permisos de usuario (Figura 2).

Figura 2: Administración

Puedes acceder a cada función bien usando el sistema combinado de menús y pestañas o bien simplemente haciendo clic en los iconos de la pantalla de inicio.

Archivos

Joomla! está formado por cientos de archivos: imágenes, scripts PHP, archivos CSS, archivos Javascript y muchos más.

Probablemente ya te has dado cuenta de esto cuando has descomprimido el paquete de instalación y has copiado los archivos resultantes en la carpeta htdocs. Básicamente, ya has instalado dos paquetes Joomla!: uno para el frontend y otro para el backend. El 'backend de Joomla!' está localizado dentro del directorio administrator (Figura 3).

Este directorio es el que se usa cuando llamas a tudominio.com/administrator en el navegador. Dentro de él hay otros directorios, como cache, components, language, modules y templates. Los archivos específicos de los distintos componentes del backend están almacenados dentro de esos directorios.

Encontrarás muchos nombres de carpeta 'repetidos' fuera del directorio administrator. Estos directorios contienen los archivos del frontend. En realidad, no es que haya dos paquetes de Joomla!, pero hay una separación clara entre los archivos del frontend y los del backend. Por ejemplo, todos los archivos subidos con el Gestor Multimedia se almacenarán en el directorio /media. Cuando hagas copias de seguridad, necesitarás guardar todos los archivos, tanto los del backend como los del frontend.

Figura 3: Archivos y directorios de Joomla!

Base de datos

Además de los archivos (gráficos, documentos, archivos de sistema, etc.) Joomla! también necesita una base de datos. Durante el procedimiento de instalación, el instalador web de Joomla! crea 33 tablas en la base de datos que le especifiques (Figura 4). En estas tablas, todo el contenido del sitio será gestionado.

Figura 4: Las tablas de la base de datos de Joomla!

Cuando digo contenido me refiero a textos y a opciones de configuración. Las tablas que aparecen en la captura de pantalla son las que muestra la aplicación phpMyAdmin. Esta aplicación es parte de XAMPP y MAMP, y puede ser accedida desde http://localhost/phpMyAdmin

Normalmente, no es necesario realizar ningún cambio a estas tablas. En caso de que olvides tu contraseña de administrador, phpMyAdmin puede ser de gran ayuda.

Este software puede ser usado también para respaldar tu base de datos, creando lo que se denomina un volcado SQL (SQL dump), ya que debes respaldar tus tablas regularmente. En el capítulo Extensiones imprescindibles conocerás una opción más adecuada para respaldar tu base de datos.

Elementos de Joomla!

La estructura de Joomla es simple, sofisticada y eficiente.

Artículo

Joomla! da por hecho que quieres escribir un artículo. Un artículo normalmente consta de un título, un texto y algunas opciones de configuración.

Los artículos pueden ser mostrados individualmente o como parte de una lista.

En la página principal de tu Joomla! recién instalado verás estos cuatro artículos (Figura 5).

Figura 5: Artículos en la página principal

Los artículos son ordenados de cierta manera. El primer artículo es mostrado usando el ancho completo del sitio. Los otros artículos son colocados debajo en tres columnas. Si los artículos son demasiado largos, puedes insrtar un enlace Leer más. Esta representación es una vista de lista. Haciendo clic en el enlace leer más serás redirigido a una representación individual de ese artículo (Figura 6). El tipo de representación puede ser cambiado modificando las opciones en el backend, siempre y cuando el usuario tenga los permisos de acceso necesarios.

Figura 6: representación individual de un artículo

Los artículos pueden estar publicados (publicar) o no publicados (despublicar). Puedes destacar artículos en tu página principal, puedes archivarlos o ponerlos en la papelera y recuperarlos de ella. Puedes copiarlos y moverlos.

Categorías

Para poder mostrar los artículos de forma clara, debes crear categorías, y después asignar cada artículo a una de ellas. Cada artículo sólo puede ser asignada a una única categoría (Figura 7). Las cetegorías pueden anidarse hasta cualquier profundidad. Los artículos de una o múltiples categorías pueden ser asignados a un elemento de menú, y ser mostrado de diversas maneras. Haciendo clic en el elemento de menú, todos los artículos de diferentes categorías serán mostrados. Este principio es el mismo que utlizan los periódicos online, por ejemplo. Haciendo clic en Deportes verás todos los artículos categorizados dentro de este tema. Si el periódico distingue entre distintos deportes, usaran árboles de categorías anidadas:

•Deportes

•Fútbol

•Balonmano

•Política

•Local

•Europa

•Mundo

• 

Figura 7: Asignación de categorías

Usuario

Se necesitan usuarios para producir contenido. El menos un usuario está registrado en cada sitio Joomla!, concretamente el que creaste durante la instalación, con los permisos para configurarlo todo en tu sitio. Dependiendo de los permisos del usuario, puede trabajar en el frontend y/o el backend para escribir un artículo. Cada usuario necesita un nombre de usuario, una dirección de correo electrónico y una contraseña. Cada usuario puede ser asignado a cualquier grupo, así como a cualquier nivel de acceso. Esto permite al usuario crear artículos que sean visibles únicamente para cierto grupo de usuarios.

Navegación

Para encontrar tu camino a lo largo del sitio web, necesitarás elementos de navegación con los enlaces necesarios. En Joomla! llamamos a esto menú. Puedes crear tantos menús como desees, y anidarlos de tantas maneras como quieras. Cada menú es un módulo que puede ser situado en cualquiera de las posiciones proporcionadas por la plantilla.

Módulo

Explicado de una forma simplista, un módulo es algo que puedes colocar junto a un artículo. Un menú, por ejemplo, es un módulo. El pequeño bloque de registro que hay en la parte izquierda es también un módulo. Puedes crear tantos módulos con funciones inteligentes como necesites, y colocarlos en cualquiera de las áreas predefinidas de la plantilla.

Plantillas

Una plantilla es el patrón gráfico de tu sitio web. Consta fundamentalmente de archivos HTML y CSS. Joomla! viene de serie con varias plantillas entre las que elegir (y hay cientos de ellas disponibles, tanto gratuitas como comerciales). Las plantillas son configurables, lo que te permite subir un logo diferente, cambiar el color de fondo, etc. Cada plantilla proporciona áreas en las que poder colocar los módulos (Figura 8).

Figura 8: Posiciones de la plantilla

Puedes agrupar los módulos en torno a uno o más artículos.

Plug-ins

Un plug-in (literalmente, "enchufable" o "conectable") proporciona servicios prácticos, pero normalmente es invisible para los usuarios del sitio. Un editor WYSIWYG, por ejemplo, es un plug-in. Los plug-ins son extensiones, que pueden ser instaladas tantas veces como se quiera. El paquete del núcleo de Joomla trae un buen número de plug-ins muy útiles.

Componentes

Los componentes son los pequeños paquetes sorpresa que te ayudan a crear prácticamente cualquier cosa en tu sitio web. ¿Quieres tener un sistema de reserva para talleres? ¿Una plataforma para vender propiedades? ¿Un foro? ¿Una galería de imágenes? ¡No tienes más que encontrar e instalar el componente adecuado!

El paquete del núcleo de Joomla! trae varios componentes, como por ejemplo el componente de contactos, que te permite integrar formularios de contacto en tu sitio. Existen muchos componentes para ampliar y mejorar tu sistema Joomla!.

Opciones

Necesitarás ajustes individuales de configuración para tu sitio web; los llamamos opciones. Estas opciones se aplican al sitio entero, para usuarios, categorías, móduloes, compontenes. Siempre encontrarás un icono llamado Opciones como, por ejemplo, este (Figura 9), que te da la posibilidad de ver la posición de los módulos (Figura 8) insertando la variable ?tp=1 en la URL de tu sitio: http://localhost/index.php?tp=1

Las letras 'tp' vienen de 'template position' (posiciones de la plantilla).

Figura 9: Opciones

Otras estructuras

Existen también otras estructuras para las interfaces de usuario, plantillas y relaciones técnicas. Por el momento, estarás bien equipado si recuerdas las que acabamos de describir.

Advertisement

http://complusoft.es

Capítulo 5

¿Qué novedades hay en Joomla! 1.7

El 19 de julio vio la luz Joomla 1.7, una versión muy especial por varias razones. Antes de entrar en detalles, me gustaría mencionar algunos de los diversos tipos de usuarios que usan Joomla!.

Tipos de usuarios Joomla!

El 2.8% de todos los sitios web existentes están hechos con Joomla!. Esto significa que hay miles de usuarios distintos usando el CMS con unos fines específicos. Estos fines pueden ser categorizados a grandes rasgos, dando como resultados varios "tipos" de grupos de usuarios. Mencionaré algunos de ellos a continuación.

Novatos

Si necesitas un sitio web y acabas de aterrizar en Joomla!, puedes descargarte el CMS e instalarlo, y crear un sitio web de una manera realmente sencilla, incluso si te limitas a usar el paquete "base", el núcleo de Joomla, e incluso si no tienes ningún conocimiento de tecnologías web. Si necesitas ayuda para empezar, aquí tienes un enlace http://cocoate.com/j17/es

¡Que te diviertas!

Creadores de sitios, diseñadores web

Un creador de sitios normalmente tiene varios sitios web basados en distintas versiones de Joomla!. De modo que sus intereses estarán más bien en preguntas como:

•¿Hay nuevas funcionalidades para mis clientes?

•¿Hay algo dentro que me ayude a ser más productivo?

•¿Hay una forma de actualizar sencilla?

Desarrolladores

•Conocen los lenguajes de programación PHP y Javascript, y les gusta usarlos.

•Crean nuevas extensiones más allá de las que incluye el núcleo de Joomla!, bien gratuitamente o bien como negocio para obtener un beneficio.

•Los desarrolladores siempre están pensando en nuevas funcionlaidades y en productividad.

Proveedores de servicios

Llevan un negocio y proveen servicios como alojamiento web, formación y desarrollo de plantillas y extensiones.

Arquitectos

Siempre están pensando acerca de seguridad, velocidad y calidad de código.

Los grupos de liderazgo de Joomla!

Lideran el proyecto de cierta manera, y deberían comunicar una visión clara.

La Comunidad Joomla!

Todos los grupos arriba mencionados son, o podrían ser, miembros de 'la Comunidad Joomla!'. Pregúntate a ti mismo: ¿qué es lo que espero de la siguiente versión mayor?

La mayoría de los miembros de esos grupos se están preguntando:

•¿Es Joomla! la solución adecuada para mis necesidades?

•¿Puedo hacer dinero con ello?

Qué novedades hay en Joomla! 1.7

Para la gente que examina la interfaz de usuario en busca de nuevas funcionalidades 'visibles' tengo una respuesta rápida. En la interfaz de usuario de la versión alfa que examiné, sólo se añadía una única casilla de verificación en el componente de correo masivo. Ahora es posible incluir o excluir usuarios bloqueados en un correo masivo. Es una funcionalidad interesante, pero tampoco es para volverse locos.

Introducción de un nuevo Ciclo de Desarrollo

No es nada nuevo, pero es muy importante tenerlo claro. En 2010 se introdujo en el proyecto Joomla! un nuevo ciclo de desarrollo basado en versiones de ciclo corto y versiones de ciclo largo. Cada seis meses se lanzará una nueva versión de Joomla!. Este nuevo ciclo comenzó con Joomla! 1.6 en enero de 2011 como primera versión de ciclo corto, y continúa ahora con Joomla 1.7! como la segunda versión de ciclo corto.

Cada tres versiones de ciclo corto, aparecerá una versión de ciclo largo.

Esto significa que aparecerá una versión de Joomla! de ciclo largo cada 18 meses.

La primera versión de ciclo largo de esta nueva estrategia de desarrollo será Joomla! 2.5, que será lanzada en enero de 2012.

He encontrado dos infografías, una de Open Source Support Desk (http://twitter.com/osSupportDesk/) y otra de Sander Potjer (http://twitter.com/sanderpotjer que ayudan a visualizar de manera más clara los ciclos de desarrollo (Figura 1, Figura 2).

Figura 1: Infografía

Figura 2: Infografía sobre la nueva estrategia de desarrollo de Joomla!

Soporte

¿Cómo funciona el soporte con este nuevo ciclo de desarrollo?

Versiones de ciclo largo

Si consideramos Joomla! 1.5 como una versión de ciclo largo, su suporte continuará hasta tres meses después del lanzamiento de la próxima versión de ciclo largo. Esto significa que aún no tendrás que actualizar tu sitio basado en Joomla! 1.5 a Joomla! 1.7. Pero en enero de 2012, cuando la siguiente versión de ciclo largo llegue tendrás que empezar a pensar en actualizar, y finalmente en abril de 2012 no será una opción a considerar, sino más bien una necesidad.

Versiones de ciclo corto

El soporte de las versiones de ciclo corto finaliza un mes después del lanzamiento de la siguiente versión de ciclo corto.

Actualizar/Migrar

•Si usas la versión más nueva de Joomla!, que en estos momentos es la 1.7.1, el proceso de actualización es tan sencillo como hacer un par de clics en el backend. Incluso para cualquier versión entre Joomla 1.6.0 y Joomla 1.7.0, el proceso es sencillo.

•Sin embargo, si estás usando una versión maś antigua de Joomla la cosa es algo más complicada, aunque afortunadamente no es imposible con la ayuda de la herramienta jUpgrade, desarrollada por Matías Aguirre. Ten en mente que no es obligatorio aún actualizar un sitio basado en Joomla! 1.5 a Joomla! 1.7, aunque si lo haces ya te ahorrarás un montón de trabajo más adelante, cuando Joomla! 2.5 vea la luz.

Introducción de la Plataforma Joomla

Joomla! 1.7 es la primera versión del CMS en la que el paquete del núcleo consta de dos partes independientes

•la Plataforma Joomla (Joomla! Platform)

•el Gestor de Contenidos Joomla!

Joomla! Platform 11.2

La idea de esta separación nació tras el lanzamiento de Joomla! 1.0 en el año 2005, y ha requerido casi 6 años para ser implementada.

Fue lanzada el 4 de julio de 2011, y cambiará la forma en la que los desarrolladores, arquitectos y proveedores de servicios tratarán con Joomla! en el futuro.

Figura 3: Creada por http://cmsexpo.net/joomla-concept

Bueno, 'volverse Gaga' es definitivamente una descripción acertada :)

Echemos un vistazo más de cerca.

Numeración

Lo que más me confundió cuando probé esta versión fue la numeración. Pero encontré una respuesta muy sencilla.

La versión 11.1 es la primera versión de la Joomla! Platform, aunque la primera versión 'importante' será la 11.2. El esquema de numeración de la plataforma consiste en el año seguido por un número 'ordinal'. Así, la 11.1 fue la primera versión de 2011. La segunda fue la 11.2 en julio del mismo año. En octubre se lanzará la 11.3.

La primera versión que aparezca en 2012 será la 12.1.

Ciclo de desarrollo

Se liberará una nueva versión de la Joomla! Platform cada tres meses.

Contenido del paquete

El paquete de la Plataforma consiste en los archivos almacenados en los directorios /libraries y /media. La Plataforma no tiene interfaz de usuario.
El código fuente de la plataforma está disponible en el sistema de control de versiones Git GitHub.

código: https://github.com/joomla/joomla-platform

miembros:https://github.com/joomla/joomla-platform/network/members

Ventajas y beneficios de la separación

1.Permite a los desarrolladores usar la plataforma de manera independiente al CMS.
Esto significa que tendrás la opción de elegir entre diferentes CMSs que correrán sobre la Joomla! Platform en el futuro. ¡Esto es realmente revolucionario! Joomla! es el único sistema de su clase del mundo que permite hacer esto.
El proyecto Joomla! seguirá desarrollando el CMS, desde luego, pero otros proyectos como Molajo podrán usar la Joomla! Platform como base.

2.Permite a los desarrolladores contribuir/añadir nuevas caracterísitcas más fácilmente.
En el pasado era muy frustrante experimentar que código de calidad no era siempre incluido en el núcleo de Joomla!. Con la Joomla! Platform almacenada en GitHub es muy fácil hacer un "fork" de ella para tus propios fines, y es mucho más fácil volver a integrar ese nuevo código en la rama principal.

3.Ciclo de desarrollo de 3 meses
Con teste ciclo de desarrollo tan corto es posible añadir nuevas características a la plataforma más rápido que al CMS. Esto es muy útil para los desarrolladores de extensiones, que ahora podrán añadir más fácilment al núcleo características que sean necesarias para sus extensiones.

4.Fomenta el reclutamiento de más desarrollaores, incluyendo grandes compañías, que de otra manera no habrían contribuído.
Este punto es cricial, y funcionará cuando el grupo responsable de la Plataforma empiece a aceptar esas nuevas caras.

Conclusión

El lanzamiento de Joomla 1.7 y de la Joomla! Platform 11.2 no ha introducido nada que sea técnicamente nuevo, pero supone el inicio de una nueva fase para el Proyecto Joomla!.

Volviendo al titular.

Desde mi punto de vista, la Joomla! Platform es el latido del corazón del proyecto.

Es fácil escribir un CMS, pero es muy complicado imaginar, construir y mantener una plataforma a largo plazo.

Quizá estemos ante el auténtico inicio del Proyecto Joomla!. ¡¡Involúcrate!!

Advertisement

Capítulo 6

Administrando el Contenido

Un sistema gestor de contenidos está diseñado para gestionar contenidos - ¿¡quién lo habría dicho!?

Así que la siguiente pregunta es: ¿qué es el contenido?

In media production and publishing, content is information and experiences that may provide value for an end-user/audience in specific contexts (Wikipedia ²⁵).

(En producción multimedia y publicaciones el contenido es la información y experiencias que pueden dar valor para un usuario/audiencia en un contexto específico.)

¿Y qué es eso que tiene valor?

Esta pregunta en difícil de responder y muy individual, pero creo que ahora tenemos una idea de que es el contenido y que es un sistema de gestión de contenidos como Joomla.

Un sistema de gestión de contenidos es muy útil para administrar la información que tiene valor para tu audiencia (Hagen Graf :-) ).

Tipos de contenidos

En el core de Joomla tenemos los artículos, categorías, enlaces, banners, contactos y feeds. No estoy seguro que se pueda crear valor con los banners, pero los banners son un tipo de contenidos. Los módulos también pueden ser utilizados para crear contenidos. A menudo, querrás enriquecer el contenido con archivos como imágenes u otros tipos multimedia. Para esto Joomla tiene el gestor multimedia. Esta es la herramienta que gestiona esas pequeñas piezas que aportan valor a tu audiencia. Vamos a ver estas herramientas en los siguientes capítulos.

Si no tienes suficiente siempre puedes mejorar los contenidos de Joomla con los denominados CCKs (content construction kits)²⁶ como K2²⁷, FlexiContent²⁸ o CCK jSeblod ²⁹ entre otras extensiones, pero eso nos daría para un libro completo.

Cómo crear una página ‘Sobre nosotros’

To give you a first real challenge, let's create a first page on your new website. It will be an about us page on which you can write about your company, your project, or yourself. Most of the time, a page like this contains a title, text and perhaps a few images.

Contenido estático vs. dinámico

Una página del tipo "sobre nosotros" normalmente sólo se crea una vez, es accesible a través de un enlace de menú y, en el futuro, todo lo que tendrás que hacer será actualizar un poco su contenido a medida que sea necesario. Tiene un carácter estático. Una nota prensa o una entrada de blog, sin embargo, tienen un carácter dinámico.

•Para páginas estáticas, en contraste con las dinámicas, la fecha de creación y el autor no interesan en absoluto.

•Las páginas estáticas normalmente son accesibles a través de un elemento de menú, mientras que las páginas dinámicas pueden ser accedidas a través de listas.

El plan

La página 'sobre nosotros' debería constar de los siguientes componentes:

•un título,

•un texto,

•una imagen

•La página no debería aparecer en la página principal.

•Queremos un enlace a la página en el menú horizontal superior.

Esto puede sonar simple en principio :-). Sigue adelante e inicia sesión en el área administrativa del sitio.

Paso 1 - Crear contenido

Ve al Gestor de artículos (Contenido → Gestor de Artículos). Ahí debería estar aún tus datos de muestra despublicados (Figura 1).

Figura 1: Gestor de artículos

Haz clic en el icono "nuevo" para acceder al formulario de edición correspondiente, y añade el título y el texto. En el panel superior, debajo del título, selecciona la categoría "uncategorized" (sin categorizar). Esta categoría fue instalada junto con los datos de muestra. El campo Destacado indica si quieres que el contenido se muestre en los elementos de menú del tipo "Mostrar todos los artículos destacados", que suele ser el más utilizado para crear páginas de inicio. Esto se introdujo con Joomla! 1.6, y sigue siendo válido para Joomla! 1.7, aunque los términos pueden ser confundidos fácilmente. Selecciona No para este campo. En la ventana del editor, puedes introducir ahora tu texto. Joomla! viene por defecto con el editor TinyMCE (Figura 2).

Figura 2: Formulario de edición de artículo

Insertando una imagen desde una URL

Como un primer ejemplo, vamos a usar una imagen que ya existe en la web.

Por ejemplo, esta: http://farm2.static.flickr.com/1198/898250237_78a0e75cba_m.jpg (Figura 3)

Figura 3: Imagen de ejemplo

Mueve el cursor a la posición del texto en la que quieres insertar la imagen. Haz clic en el icono de imagen en la barra de herramientas del editor y pega la URL de la imagen en la ventana emergente que aparece. Configura la imagen con alineamiento a la izquierda, y usa un espacio vertical y horizontal de 10 píxeles (Figura 4).

Figura 4: Insertar imagen

La imagen aparecerá en la ventana de tu editor. Haz clic en Guardar y tu contenido será almacenado. Hay varias maneras de guardarlo:

•Guardar - El contenido es guardado. El formulario no se cierra. Se usa para guardar cuando quieres seguir trabajando en este contenido.

•Guardar y cerrar - El elemento es guardado y el formulario se cierra.

•Guardar y nuevo - El elemento es guardado, el formulario cerrado y se abre un nuevo formulario vacío para crear un artículo nuevo.

•Sal del formulario.

Paso 2 - Creando un enlace de menú

El artículo ha sido creado, pero no aparece en el sitio web. Para que aparezca, necesita un enlace.

Haz clic en el icono Nuevo del Gestor de menús en el menú Top (Menú → Top).

Nota: Top es el nombre de la posición en la plantilla por defecto. Si no vas a usar esta plantilla ni los datos de muestra, el menú Top no existirá, o tendrá otro nombre.

Haz clic en el botón Seleccionar junto al campo Tipo de elemento del menú. Aparecerá una ventana con varios enlaces. Haz clic en el enlace Mostrar un solo artículo (Figura 5).

Figura 5: Seleccionar un tipo de elemento de menú

Ahora necesitas elegir el artículo al que enlazará este elemento de menú. Haz clic en el botón Seleccionar / Cambiar en el panel de la derecha (junto a Seleccionar artículo) para elegirlo. Verás un cuadro de búsqueda con todos los artículos. En el caso de que no puedas encontrar tu artículo directamente, puedes filtrar la lista escribiendo parte del título del artículo en el cuadro de búsqueda y a continuación haciendo clic en el título del artículo correcto de la lista de resultados (Figura 6).

Figura 6: Tipo de elemento de menú - Mostrar un solo artículo - Seleccionar artículo

Introduce un título para el enlace "Sobre nosotros" y asegúrate de que en Menú está seleccionado Top. Podemos dejar el resto de opciones con su configuración por defecto por ahora.

Paso 3 - 'Sobre nosotros' en el sitio web

Si cargas ahora el frontend del sitio web, descubrirás un enlace nuevo en el menú superior. Haz clic en él y verás el contenido de Sobre nosotros - ¡Felicidades por haber creado tu primera página! (Figura 7).

Figura 7: Página 'Sobre nosotros'

Paso 4 - Subir una imagen

Si tu imagen no está ya disponible en Internet, necesitarás subirla desde tu PC. Veamos juntos un ejemplo. Ve al Gestor de artículos (Contenido → Gestor de artículos). Si no puedes encontrar tu artículo, localízalo fácilmente usando el cuadro de búsqueda. Selecciona el título del artículo y se abrirá el formulario de edición. Elimina del texto la imagen enlazada.

Debajo de la ventana del editor encontrarás el botón Imagen. Este botón lanza un cuadro de diálogo para subir una imagen. Puedes elegir entre las imágenes existentes en el servidor o subir alguna nueva (Figura 8).

Figura 8: Subir imagen

Una vez que la imagen ha sido introducida en el texto, su formato puede cambiarse usando el icono de imagen de la barra de herramientas del editor. Esta separación de funciones en Joomla! fue elegida a propósito, porque así tienes la posibilidad de usar diferentes editores. El botón Imagen de Joomla! permanecerá siempre en el mismo sitio, pero el icono de edición del formato de la imagen del editor puede cambiar.

Atención: Joomla! usa las imágenes tal y como son. ¡No las redimensionará automáticamente!

Para solucionar este problema, echa un vistazo a la entrada del blog de Brian Teeman titulada: Making Joomla Idiot Proof³⁰ (haciendo Joomla! a prueba de idiotas) - Es posible que FBoxBot³¹ esté disponible para Joomla! 1.7 cuando estés leyendo estas líneas.

Advertisement

http://complusoft.es

Un artículo típico

Es interesante tener en cuenta las siguientes consideraciones a la hora de crear artículos para un sitio web:

•Un texto con una o más imágenes.

•Un texto de introducción para los listados de artículos con un enlace leer más apuntando al artículo completo.

•El artículo debería aparecer en la portada sin la necesidad de un enlace de menú.

•Requisito deseable: una fecha de publicación programada.

•Requisito deseable: una versión imprimible del artículo para los usuarios que lo deseen

•Requisito deseable: una opción de enviar el artículo por email.

Comenzamos

El artículo debería aparecer en la página principal del sitio. Si has eliminado, no has instalado o has modificado el contenido de muestra, el frontpage de Joomla debería tener el aspecto de la Figura 1. Desde luego, si los artículos apareces tampoco es problema alguno. :-)

Figura 1: Sitio web vacío

Cuando haces login en el área de administración verás un icono llamado Añadir Nuevo Artículo. Puedes crear un artículo desde el panel de control o utilizando la barra de navegación Contenido → Gestor de artículos → Añadir nuevo artículo (Figura 2)

Figura 2: Área de administración

Formulario de inserción de artículo

Ahora estás en el formulario de inserción de artículo, en el que probablemente escribirás todos los artículos que añadas a sitios Joomla!. Es por tanto un lugar importante. El formulario se estructura como puede verse en la Figura 3.

Figura 3: Formulario de introducción de artículos

Los requisitos mínimos para un artículo son el título (1), una categoría (2) y el texto (3). Si te fijas bien en el formulario te darás cuenta que aparecen mensajes de ayuda cuando sitúas el ratón sobre la descripción de un campo. He marcado cada zona del formulario con un número para explicártelas.

1. Título

La parte más importante es el título o cabecera. El título aparece como la cabecera del sitio (normalmente con la etiqueta HTML <h1>, la de mayor tamaño) y en el título de la barra del navegador (se puede activar y desactivar este comportamiento). El título se emplea también como base para rellenar el campo de alias. El alias es generado automáticamente por Joomla cuando se guarda el archivo por primera vez, pero si lo deseas puedes personalizarlo. Básicamente el propósito del campo alias es tener una URL simple, corta y legible para la página, de forma que pueda ser así utilizada en emails o chats de forma sencilla. En la siguiente URL de ejemplo http://ejemplo.com/primer-articulo, la cadena "primer-articulo" es el alias.

2. Categoría

Esto va acerca de la clasificación o categorización del artículo. Todo elemento de contenido DEBE estar asignado a una categoría. Si explícitamente no quieres categorizar el artículos, puedes asignarlo a la categoría uncategorized (sin categoría). Esto es especialmente útil para páginas de contenido más estático, como los avisos legales o la página Sobre nosotros. En este área pueden confogurarse otros atributos importantes, incluyendo el Estado (publicado o no), quién tiene acceso (estos permisos dependen de varias configuraciones), idioma y destacado. Este último reemplaza al antiguo atributo "frontpage" (página principal) y asegura que los elementos de contenido están en un diseño tipo blog predefinido para la página principal de tu sitio web. La ID de artículo es creada tras guardar el artículo, y consiste en un número de serie.

3. Texto

En esta sección puedes escribir tu texto, que debería ser valioso para tu audiencia. Suena realmente fácil, ¿no? :-)

Técnicamente, aquí estás enfrentándote con un editor WYSIWYG (What You See Is What You Get - Lo que ves es lo que obtienes). El editor convierte el texto que escribes en formato HTML. Joomla! usa como configuración por defecto el editor TinyMCE³² es un proyecto de software libre independiente, que tiene tantas funciones que podría escribir un libro aparte para él. (Puede que no sea una mala idea)

Básicamente funciona como cualquier otro procesador de textos: escribe texto, resalta texto, haz clic en un icono de la barra de herramientas y se aplica una función al texto o aparece un cuadro de diálogo.

Los botones que hay bajo el área de entrada son extraños, y pueden ser confusos en ocasiones. Esos botones son específicos de Joomla! y tienen únicamente una relación indirecta con el editor. El núcleo de Joomla! viene con 5 de estos botones adicionales tan prácticos.

Puedes añadir más botones instalando nuevas extensiones de Joomla!:

1.Artículo: te permite enlazar a otros artículos existentes de Joomla!

2.Imagen: Puedes insertar una imagen existente o una foto desde el Gestor multimedia o subir una nueva imagen.

3.Salto de página: inserta un salto de página en tu artículo

4.Leer más: te permite estipular dónde colocar el enlace leer más

5.Cambiar editor: activa o desactiva el editor. Cuando se desactiva, verás el código HTML de tu artículo.

4. Opciones

Lo que se llamaba Parámentros en Joomla! 1.5, ahora se llama Opciones desde Joomla! 1.6 como, por ejemplo, las Opciones de publicación. Aquí puedes especificar quién escribió el artículo (Creado por). El usuario que creó el artículo normalmente tiene permiso para (y es el responsable de) hacer cambios en él más adelante. El nombre mostrado realmente bajo el título de la página web se configura en Creado por alias. Los tres campos a continuación te permiten planificar la publicación. Simplemente introduce las fechas apropiadas y Joomla! se encargará del resto.

5. Más opciones

En esta sección podrás configurar muchas opciones activándolas o desactivándolas. Puedes cambiar el diseño del artículo para que se ajuste a las necesidades del lector y del motor de búsquedas. Simplemente empieza a experimentar - es la mejor manera de aprender.

6. Permisos

La sexta y última zona incluye todo lo relativo a los permisos para este artículo. Esta selección nos ayudará en muchos lugares de Joomla! 1.7, y cubriremos su uso a fondo en el capítulo Permissions.

Artículo de muestra

Vamos a crear un artículo que ilustre todo lo que acabamos de comentar junto:

Un texto con una o más imágenes

Escribe tu texto. Para añadir una imagen o imágenes hay muchas posibilidades:

1. La imagen ya está disponible online, por ejemplo, en Flickr³³.

En este caso, haz clic en el icono imagen en la barra de herramientas del editor y copia la URL de la imagen en el cuadro de diálogo.

2. La imagen ua está en el Gestor multimedia de Joomla!

En este caso, haz clic en el botón imagen bajo el área de edición para seleccionar la imagen e insertarla en tu texto (Figura 4).

Figura 4: Insertar imagen desde el gestor multimedia

3. La imagen está en tu disco duro

Este es el caso más complejo. Básicamente, usarás tamvién el botón de imagen bajo el área de edición. Ahí encontrarás un diálogo de subida a través del cual podrás subir tu imagen "fácilmente". Recuard que Joomla! NO redimensionará la imagen. Si subes una foto de tu cámara digital, será mostrada en su tamaño orginal completo (ancho > 3000 píxeles). Debes redimensionar la imagen antes de subirla.
Si todo va bien... ¡felicidades!
Si no, podría ser debido a diversos motivos, como por ejemplo la falta de los permisos necesarios de escritura en los directorios del gestor multimedia. En el mejor de los casos, obtendrás un mensaje de error. Si aún no funciona, inténtalo escribiendo un comentario aquí :-).

Una vez que has insertado la imagen, puedes seleccionarla y darle formato haciendo clic en el icono de imagen de la barra de herramientas del editor.

Un texto introsuctorio para vistas tipo lista con un enlace leer más al artículo completo

Esto es fácil. Mueve el cursor a la posición en la que el enlace leer más debería aparecer y haz clic en el botón leer más bajo el área de edición de texto.

El artículo debería aparecer en la página principal y no necesita en enlace de menú

Slecciona Sí en el campo destacado en el área 2.

Una publicación planificada no estaría mal

Evita esto en principio, de modo que no tengas que esperar para ver aparecer el arículo en tu sitio web :-). Si quieres intentarlo más adelante con otro artículo, simplemente rellena los campos Inicio de la publicación y Finalización de la publicación con la información apropiada o selecciona las fechas haciendo clic en el icono de calendario.

Una versión del artículo adaptada a un formato de impresión

Si en este momento no sabes dónde está localizada la configuración global, echa un vistazo al capítulo Configuración del sitio y de los contenidos y verifica la configuración actual. En el área 5, puedes cambiar el parámetro Mostrar icono 'imprimir' a 'Mostrar'.

Envío del artículo por e-mail

Simplemente establece las opciones en el área 5, cambiando el parámetro Mostrar icono 'correo' a 'mostrar'.

Resultado

Tras guardar puedes recargar tu sitio y verás tu artículo en la página principal como en la Figura 5.

Figura 5: Artículo en la página principal

El Gestor Multimedia

El gestor multimedia es el pequeño Digital Asset Management System (DAM)³⁴ de Joomla. Si estás gesionando contenido, necesitarás un lugar en el que almacenar los archivos. Estos ficheros son todas las imágenes, PDFs y cualquier otro formato que decidas incluir en tu contenido. Normalmente estos recursos digitales consisten en un archivo y meta datos adicionales. En ese caso, necesitamos una herramienta fácil de usar para gestionar nuestros archivos. Echemos un vistazo a lo que es posible hacer con el gestor multimedia del núcleo de Joomla!.

Cómo funciona

Para mí se parece más a un gestor de archivos. Todo el mundo conoce el explorador de Windows o el "finder" de OSX. En Joomla! se llama "gestor multimedia". Tiene un directorio base en el que se almacenan todos los archivos. Puedes examinar tus archivos de dos maneras diferentes usando tu navegador: a través de la Vista en miniaturas (Figura 1) y de la Vista en Detalle (Figura 2). Es posible navegar a través de las carpetas haciendo clic en ellas.

Figura 1: Gestor Multimedia - Vista en Miniaturas

Figura 2: Gestor Multimedia - Vista en Detalle

Puedes crear tantas carpetas adicionales como quieras. En la Vista en Detalle, puedes borrar archivos y carpetas. En el backend de administración de Joomla! encontrarás la misma estructura que puedes ver en tu cliente FTP (Figura 3), pero debes tener cuidado: en el núcleo de Joomla! encontrarás también del directorio media. Este directorio NO es el directorio base del gestor multimedia.

Figura 3: Directorio del Gestor Multimedia en un cliente ftp

Si miras en la barra de herramientas descubrirás el icono Opciones - adelante, haz clic en él (Figura 4).

Figura 4: Opciones del gestor multimedia

Si echas un vistazo a las opciones, te darás cuenta de que puedes limitar el tipo de archivo según su extensión, ajustar el tamaño máximo de archivo permitido o también separar las imágenes del resto de archivos. Bueno, una imagen es un archivo también, pero me gusta la idea de poder separarlos. La vista en miniaturas, por ejemplo, tiene mucho más sentido para imágenes, pero no para el resto de archivos. La mayor ventaja de esta separación es posiblemente la posibilidad de Restringir Subidas a usuarios con un rol inferior al de manager. Puedes permitir a los usuarios registrados subir imágenes, pero no tienes por qué darles permisos para subir otro tipo de archivos. En determinados casos, esto puede ser muy útil. Las siguientes opciones que serás son los MIME³⁵ types, hoy en día llamados a menudo Internet Media Type. Si eres un usuario de Windows, normalmente sólo distinguirás los distintos tipos de archivo por su extensión. Internet Media Type es otra forma para reconocer el tipo de un archivo incluso sin necesidad de que tenga extensión de archivo. Puedes pemitir o prohibir tantos tipos de archivo como quieras.

El Cargador de archivos Flash (Flash Uploader) es una de las caracterísitcas más sofisticadas que a menudo es olvidada. En Joomla! 1.5 no siempre funcionaba bien del todo, pero la versión que viene en el núcleo desde Joomla! 1.6 es excelente para subir más de un archivo al mismo tiempo. El Cargador de archivos Flash funciona y es sencillo de usar, inclusi en Joomla! 1.7 :). ¡Pruébalo! (Figura 5).

Figura 5: Media manager Flash Uploader

As you notice, the Joomla! media manager is no rocket science³⁶ but it is a reliable, easy to use tool to manage your images and other files.

Como habrás notado, el gestor de multimedia de Joomla! no es física cuántica, pero es una herramienta fiable y fácil de usar para gestionar tus imágenes y otros archivos.

Si necesitas un producto más sofisticado, Joomla! ofrece otras soluciones en el directorio de extensiones, en la categoría File Management ³⁷.

El gestor multimedia y el editor

Ahora ya conoces el lugar en el que se almacenan tus archivos, y sabes cómo gesitonarlo, pero, ¿cómo puedes hacer para conectar esos archivos con tu contenido?

En cualquier sitio donde veas un editor en Joomla!, normalmente será posible añadir archivos multimedia desde el gestor multimedia haciendo clic en el botón Imagen que hay debajo. Ya hablamos de esto cuando crearmos un artículo típico con una foto (Figura 6).

Figura 6: Gestor multimaedia en áreas de contenido

El gestor multimedia en otros lugares

Hay otros lugares en los que el gestor multimedia puede jugar un papel, como por ejemplo en las categorías. Es posible enlazar una imagen a una categoría(Figura 7).

Figura 7: Gestor multimedia en una categoría

Esta imagen aparecerá en la lista de categorías su lo configuras así en las Opciones del Elemento de menú.

El Formulario de Contacto

Con un formulario de contacto emerge la siguiente pregunta: "¿Es esto contenido?" Yo creo que sí, y ese es el motivo por el que lo he separado como un subcapítulo de "gestionar el contenido".

En un formulario de contacto lo primero que resulta obvio es que algo como un CMS está siendo usado. Las páginas de HTML creado a mano no pueden enviar correos electrónicos, ya que esto requiere un lenguaje de scripting como PHP, por ejemplo, y un servidor correctamente configurado. Los scripts PHP pueden incrustarse como formularios en las páginas HTML, pero entonces esa parte del sitio web se verá habitualmente distinta al resto del sitio. En Joomla! el formulario de contacto ya está integrado y tú "solo" tienes que configurarlo.

Normalmente, su tu Joomla! está corriendo en un servidor web remoto de un proveedor, no tendrás problemas al enviar correos electrónicos. Localmente es un poco más difícil, porque debes configurar un servidor de correo primero. Generalmente esto no es un problema, pero no es realmente necesario ;-).

Joomla! envía correos electrónicos de diferentes maneras. Verás un resument de esto en Configuración global → Servidor (Figura 1). Lo normal es que uses la función de correo de PHP estándar (ver el capítulo (read more: Configuración del sitio y de los contenidos)).

Figura 1: Configuración del servidor de correo

Creando un contacto

Para incluir un contacto en tu sitio web necesitarás al menos:

•una categoría de contactos

•un contacto

•un enlace de menú

Quizá tengas aún una categoría de los datos de muestra (Sample-data contact). Si no, crea una tú mismo. En el siguiente paso crearás un nuevo contacto. Para hacerlo, abre Componentes → Contactos en tu zona de administración y haz clic en el icono Nuevo. Después rellena el formulario que aparece (Figura 2). He etiquetado algunas áreas en la captura de pantalla para una mejor orientación.

1.Nombre y apellido de la persona de contacto, o el nombre del departamento o compañía si no es una persona. El contacto puede estar conectado con una cuenta de usuario existente. Debe estar asignado a una categoría, debería ser público (Estado = Publicado) y presumiblemente no aparecerá en la página principal (Destacado = No).

2.El área de texto puede usarse para información adicional, como por ejemplo los horarios de apertura o la jurisdicción.

3.Las Opciones de publicación se refieren al usuario que posteriormente podrá hacercambios a ese contenido, quién creó el contenido y las fechas de publicación. Esto último se usa bastante poco en sitios web 'normales'.

4.En Detalles del contacto hay numerosos campos disponibles, que puedes elegir rellenar o dejarlos en blanco.

5.En Opciones de visionado decides qué campos del formulario serán mostrados.

6.El área Formulario de contacto es muy importante, ya que aquí especificas si el propio formulario será mostrado o no (Mostrar formulario de contacto). También puedes especificar si la persona que envía el mensaje recibirá por correo electrónico una copia, y podrás configurar algunas opciones de protección contra spam (Direcciones de correo bloqueadas, Asunto bloqueado...). Sin embargo, contra los spammers "reales" esta protección es más bien "patética".

7.En el campo Redirección del contacto, puedes introducir otra dirección de correo electrónico a la que serán enviados los contenidos del formulario.

8.La Opciones de metadatos están. como las Opciones de publicación, disponibles en cada página individual (ver el capítulo Optimización para motores de búsqueda).

Creando un elemento de menú

Ahora tienes un contacto, pero aún no hay ningún formulario en tu sitio web. Esto es exactamente lo que vamos a crear en este paso. Debido al hecho de que puedes enlazar categorías anidables a contactos, puedes tener bien un único formulario de contacto o varios. Definitivamente es posible crear un formulario de contacto para cada empleado de una gran compañía como Volkswagen (aproximadamente 370000 empleados). ¿Cómo hace un CMS dinámico para mostrar esto en un sitio web?

Para gestionar esto, Joomla! tiene su propio Gestor de menús con diferentes diseños. En el Gestor de menús, decides si quieres tener formularios de contactos de una lista de contactos o categorías o simplemente un único formulario. A primera vista esto puede parecer un poco confuso, pero está bien pensado y es muy útil.

Enlacemos un único formulario en el menú para el contacto que acabamos de crear. Abre Menús - Top y haz clic en el icono Nuevo. Necesitarás tres cosas para un enlace de menú:

1.el Tipo de elemento del menú (tipo de enlace) para ser mostrado en el sitio y, dependiendo de tu elección, un contacto o categoría

2.un texto para ser mostrado como enlace

3.el menú, en el que deberá aparecer el enlace

Para el número 1, haz clic en el botón Seleccionar junto al campo Tipo de elemento del menú. Se abrirá una ventana y verás una lista en la que podrás seleccionar el tipo. Haz clic en Mostrar un solo contacto (Figura 3).

Figura 3: Elección del tipo de elemento de menú

La ventana se cerrará de nuevo. Ya que sólo quieres un contacto, ahora tendrás que elegir dicho contacto en las Opciones obligatorias (Figura 4).

Figura 4: Elegir contacto

Por último, inserta el texto para el enlace (Título del elemento del menú) y a continuación guárdalo todo. El menú ya está correctamente registrado abriendo el formulario. En tu sitio web debería aparecer un nuevo enlace en el Top Menú, enlazando al correspondiente contacto (Figura 5). Puedes ir al formulario real haciendo clic en el signo "más" en el campo de la derecha. Ahora puedes enviar mensajes a través de tu sitio web.

Figura 5: Contacto en el sitio web

Figura 6: Formulario de contacto

Advertisement

Capítulo 7

Estructurar el Contenido en Categorías

Los artículos en Joomla pueden ser clasificados por categorías. En general se dice que la categorización es el proceso de reconocer, diferenciar y comprender algo a través de la abstracción. Esto puede sonar algo complicado, pero es muy útil en la gestión de artículos.

Joomla ofrece la posibilidad de crear tantas categorías como sean necesarias. Es posible construir categorías anidadas y un artículo puede ser relacionado con cualquiera de ellas.

Los periódicos, por ejemplo, utilizan categorías para diferenciar mejor sus artículos. Aquí tienes un ejemplo de categorización en un plantilla de Joomla! ³⁸ (Figura 1).

Figura 1: Gavick Template December 2009

Se está utilizando la categoría Noticias del mundo y como subcategorías tenemos Política Mundial, Guerra, Desastres, y algunas más. En ocasiones dos niveles son suficientes como en este ejemplo, pero en otras ocasiones quizás necesites más. En Joomla 1.5 no era posible tener más de dos niveles de categorización. Con Joomla 1.7 se pueden tener tantos niveles como se necesiten.

En el Gestor de Categorías (Administración → Contenido → Gestor de Categorías), se puede administrar el árbol de categorías y aplicar filtros hasta diez niveles (Figura 2).

Figura 2: Gestor de Categorías

Al igual que un artículo, una categoría consta de un título, una descripción y un buen número de atributos y opciones. Puede tener una imagen adicional que puede ser usada en distintos diseños, La imagen puede ser seleccionada desde las opciones básicas. Una categoría también puede contener imágenes en la descripción (Figura 3).

Figura 3: Formulario de edición de categoría

Cuando accedes a tu sitio Joomla! puedes ver exactamente estas categorías en los datos de ejemplo. La navegación utiliza enlaces a las categorías para mostrar todos los artículos y subcategorías (Figura 4). Incluso la navegación de "miga de pan" refleja esta estructura.

Figura 4: Categorías como enlaces de menú en el sitio web

En el Gestor de Menús (Administración → Menú → Acerca de Joomla!), puedes ver estos elementos de menú, que enlazan a los artículos de una categoría (Figura 5).

Figura 5: Categorías como enlaces de menú en el sitio web

Puedes elegir entre diferentes diseños para los artículos. En la Figura 5 puedes ver qué diseño está siendo usado para cada enlace. Puedes seleccionar el diseño el el formulario de edición de un elemento de menú (Figura 6).

Posibles diseños:

•una lista de todas las categorías

•disposición tipo blog (como en la página principal)

•una lista de los artículos de la categoría

Dependiendo del diseño tienes cantidad de opciones para configurar la apariencia y comportamiento de las subcategorías y artículos.

Figura 6: Diseños de categoría

Mostrar todas las categorías

Este diseño lista todas las subcategorías de la categoría seleccionada (Figura 7).

Figura 7: Diseño 'Mostrar todas las categorías'

En este caso se muestra la descripción de la categoría del nivel más alto, Extensions (la categoría 'padre'). Un nivel de subcategorías con sus descripciones también es mostrado en la página, incluso con las categorías vacías. Los artículos de la categoría del nivel superior son ocultados. Ejemplo: Administration → Menus → About Joomla! → Using Extensions → Edit.

Mostrar una categoría en formato blog (como en la página principal)

El diseño tipo blog lista todos los artículos de una categoría seleccionada (Figura 8).

Figura 8: Mostrar una categoría en formato blog

En este caso se muestra también la descripción de la categoría Components. Todos los artículos relacionados con omponents son mostrados con su texto de introducción. Es posible separarlos en más columnas. Los primeros siete artículos de la categoría superior están ocultos. Ejemplo: Administración -> Menús -> Componentes -> Editar (Figura 9).

Figura 9: Layout Blog settings

Mostrar una categoría en formato lista

Este diseño muestra una lista de todos los artículos de la categoría elegida, en un formato tipo tabla (Figura 10)

Figura 10: Diseño 'Mostrar una categoría en formato lista'

En este caso la descripción de la categoría llamada Joomla! puede verse. Todos los artículos relacionados con esta categoría se muestran en una tabla configurable. Puedes elegir ocultar partes de la tabla, y hay disponibles diversas opciones para ordenarla. Ejemplo: Administración → Menús → Components → Article Category list →Editar.

Conclusión

El sistema de categorías introducido con Joomla 1.7 es muy potente y fácil de usar. Puedes estructurar de manera sencilla todo tu sitio web usando un conjunto de categorías anidadas de una manera muy amigable con el usuario. Eso sí, un artículo concreto sólo puede ser asignado a una única categoría.

Advertisement

http://complusoft.es

Capítulo 8

Estados, Papelera y Desbloqueo

En Joomla! tu contenido puede encontrarse en diversos estados. Dependiendo del ripo de contenido puede haber un mínimo de tres: publicado, despublicado y movido a la papelera. ¿Qué significa esto? Una vez que guardas tu contenido nuevo por primera vez, se crea una entrada para él en la base de datos de Joomla!, y dependiendo de su estado aparecerá (o no) en diferentes áreas de tu sitio web.

El ciclo de vida normal del contenido en Joomla! es:

•Despublicado hasta que se completen las fases de edición y revisión

•publicado o programado (y posiblemente destacado el la página principal)

•aún publicado pero ya no aparece en la página principal

•archivado

A veces es necesario despublicar contenido y en ocasiones puedes enviarlo a la papelera. El contenido, por supuesto, seguirá existiendo. No ha sido eliminado. Puedes filtrar la mayoría de las tablas de la interfaz de administración de acuerdo con el estado deseado y asignar diferentes estados a tu contenido tan a menudo como quieras.

Despublicado

Ningún visitante del sitio web puede ver el contenido. Es la fase en la que editas y revisas tu contenido.

NOTA: La palabra "despublicar" no existe en español. Se trata de un extranjerismo³⁹ proveniente de la palabra inglesa "unpublish". Lo más correcto sería algo como "retirar la publicación", pero a la hora de crear menús, botones o accesos rápidos la ventaja de usar una sola palabra es evidente. Además, parece que esta palabra se está conviertiendo en un "estándar" en ciertos ámbitos, y todo el mundo entiende a qué nos referimos al usarla. Por ello, hemos decidido dejarla tal cual.

Publicado

Dependerá de los permisos de usuarios y visitantes el que puedan o no puedan ver el contenido, pero generalmente el contenido de tu sitio web debería ser visible... ¡para eso fue publicado!

Destacado

La función 'destacado' es una especie de interruptor que puedes usar para tu contenido más importante y reciente, y que permitirá que éste se muestre en la página principal. Es un estado adicional, ya que sólo afecta a los artículos. Esta es la razón por la que es posible que un artículo esté marcado simultáneamente como despublicado y destacado.

Archivado

Llegará un momento en el que empezarás a pensar sobre un archivo para tus artículos. Simplemente establece el estado de uno o más artículos como archivado y prácticamente habrás creado ese archivo. Joomla! conoce la fecha de creación de tus artículos y ofrece un módulo de archivo para mostrarlos en tu sitio. Este módulo de archivo está incluido en los datos de ejemplo. Si no está disponible, simplemente crea uno en Extensiones → Gestor de Módulos → Nuevo → Artículos Archivados. Tus artículos será mostrados como se puede ver en la Figura 1. Puedes leer más sobre este módulo en el capítulo Módulos.

Figura 1: Archivo Joomla!

Papelera

El penúltimo estado que aparece en el filtro de estado del listado de artículos del gestor de contenido es movido a la papelera. Si un elemento de contenido termina con este estado, no ha sido eliminado, aún existe y puede ser recuparado. Puedes enviar a la papelera módulos, elementos de menú, categŕias, artículos, contactos e incluso otros tipos de contenido. Puedes ver el contenido de tu papelera seleccionando el estado enviado a la papelera en el listado de elementos que estés viendo, como por ejemplo en el gestor de artículos (Figura 2). En la vista filtrada, el icono Papelera de la barra de herramientas superior cambia a Vaciar papelera. Si haces clic en él, vaciarás la papelera, y ahora sí que los contenidos se borrarán totalmente de tu sistema.(Figura 2).

Figura 2: Papelera

Desbloqueo

El icono desbloqueo en Joomla! maneja una característica de seguridad a la hora de editar tu contenido. Tan pronto como un usuario empieza a editar contenido, Joomla! lo bloquea para el resto de usuarios. La ventaja de este comportamiento es que los cambios que están siendo realizados por un usuario nunca serán sobreescritos. Es una funcionalidad muy conveniente. Sin embargo, genera un gran problema cuando el usuario que está editando el contenido cierra accidentalmente la ventana del navegador, permite que la sesión expire o la central eléctrica corta el suministro de tu casa o... en fin, creo que ves por dónde quiero ir :-). En ese caso, el contenido queda bloqueado, y nadie más podrá editarlo.

Nadie (salvo un usuario con los permisos apropiados, por ejemplo tú como administrador) puede desbloquear el contenido denuevo para permitir a otros usuarios editarlo. Desafortunadamente, sólo podrás saber si hay contenido bloqueado examinado algún listado (por ejemplo, en el gestor de módulos o el de artículos), donde dicho contenido aparecerá con un pequeño candado junto a su nombre (Figura 3). Bueno, también podrás descubrirlo cuando un usuario llegue llorando en busca de ayuda :-).

Figura 3: Check In

Advertisement

http://complusoft.es

Capítulo 9

Configuración del Sitio y de los Contenidos

Joomla! tiene diferentes niveles de opciones de configuración. Estas opciones se transmiten desde los niveles más altos a los más bajos.

•Configuración global

•Opciones para artículos, componentes, módulos, plug-ins, idiomas y plantillas.

Configuración Global

En la sección Configuración Global puedes definir todas la opciones que afectarán a todo el sitio web. La mayoría de los valores de las variables serán almacenados en el archivo configuration.php. Información vital como el nombre de usuario sql, el nombre de la base de datos y la contraseña para el servidor de la base de datos, por ejemplo, y otros parámetros 'menores' como la longitud predeterminada de las listas, son almacenados en este archivo. El área de trabajo se divide en cuatro pestañas:

•Opciones del sitio

•Opciones del sistema

•Opciones del servidor

•Permisos

El área de trabajo de cada pestaña consta de docenas de campos, casillas de verificación, interruptores y áreas de texto.

La forma más fácil de obtener una noción de la función de cada campo es pasar el puntero del ratón sobre las etiquetas para leer el texto de ayuda, que aparecerá en un pequeño cuadro contextual amarillo (Figura 1).

Figura 1: Tooltips

Most of the options are self-explanatory. I'll mention a few settings that are new in Joomla! 1.6 with greater detail.

Opciones del sitio

Las Opciones del Sitio tienen un nuevo campo para establecer el nivel de acceso por defecto para nuevos usuarios. Los niveles de acceso configurables con una nueva caracterísitica (ver el capítulo Usuarios y permisos).

La Configuración de los metadatos contiene la opción añadir datos de Derechos del contenido. Joomla! añadirá tus datos a la meta declaración rights en tu código HTML. Dependiendo de tu 'religión' en optimización para motores de búsqueda (SEO), puede ser bueno o malo tener esta declaración en tu meta perfil. Ahora Joomla! permite las dos posibilidades :-).

<meta name="rights" content="© 2011 cocoate.com EURL, France" />

Figura 2: Opciones del sitio

En la Configuración SEO, las nuevas opciones son:

•Alias Unicode
Puedes establecer alias para títulos de artículos. Con esta característica, URLs como http://example.com/所有一起 son posibles.

•Incluir el nombre del sitio en el título de las páginas
Con esta característica el título del artículo aparecerá en la barra de título del documento en el bavegador.

La Configuración de las cookies proporciona opciones fantásticas para evaluar una cookie en distintos subdominios. Necesitarás esta característica si tienes un sitio (example.com) y uno o más subdominios (blog.example.com) y quieres ofrecer a tus usuarios la posibilidad de loguearse en example.com y publicar en blog.example.com. Sin esta característica, el usuario debería volver a loguearse para poder publicar algo en blog.example.com.

Opciones del sistema

La configuración de usuario y multimedia ya no están en este área. Ahora podrás encontrarlas en Usuarios y Gestor Multimedia.

Las opciones de caché son diferentes por que el sistema interno de caché ha sido reescrito, y ahora proporciona más posibilidades. En general, la caché hace tus sitios más rápidos a base de almacenar partes del HTML en archivos. El servidor web puede servir estos archivos extremadamente rápido. Es posible 'cachear' páginas, vistas de componentes y módulos. Puedes purgar y limpiar la caché desde Sitio → Mantenimiento.

Opciones de servidor

Todas las opciones de servidor son las mismas que en Joomla! 1.5. A pesar de ello, mencionaré la opción Forzar SSL. Esta opción está suscitando más y más atención. Puedes ofrecer a tus usuarios un sitio completamente seguro. Es necesario tener SSL configurado en tu servidor web, y también necesitarás un certificado SSL.

Figura 3: Opciones de servidor - SSL

Permisos

Este es el lugar para configurar los permisos globales para tus grupos de usuario. Afortunadamente, no siempre será necesario cambiar las opciones predeterminadas. Si cambias la configuración de un grupo, se aplicará tanto a él como a sus subgrupos, componentes y contenido. Básicamente, autorizas, deniegaso heredas los permisos Acceso al sitio, Acceso a la administración, Acceso fuera de línea, Super administrador, Acceso al componente, Crear, Borrar, Editar, Editar estado y Editar propios. Cada grupo tiene su propio conjunto de permisos (Figura 4).

Figura 4: Permisos de grupo globales

Opciones para contenido, componentes, módulos, plug-ins, idiomas y plantillas

En cada gestor, encontrarás un icono Opciones desde el que puedes lanzar un formulario de configuración. En algunos casos la ventana de opciones tiene una pestaña adicional de permisos, como por ejemplo en los gestores de Categorías y Artículos. En esta pestaña de permisos, puede usar tus permisos globales para todo el sitio web o bien cambiarlos de acuerdo con tus necesidades para todas las categorías y artículos.

En ambos casos también encontrarás una pestaña llamada Filtros de texto (Figura 5). El filtro de texto es un concepto que te permite buscar patrones concretos en el texto subido por los usuarios, como por ejemplo etiquetas HTML, y filtrarlos. Es posible establecer filtros distintos para cada grupo diferente. Digamos que un usuario está autorizado a publicar texto con etiquetas HTML dentro, pero sin iframes. Sólo tu grupo 'iframers' tiene permiso para publicar iframes.

Figura 5: Opciones de artículo - Filtro de texto

Advertisement

http://complusoft.es

Capítulo 10

Plantillas (templates)

La plantilla (template en inglés) es una de las piezas más importantes de un sitio web. Proporciona al sitio su apariencia, su diseño. Motiva a los nuevos visitantes a quedarse en tu sitio y explorarlo. Los visitantes y usuarios habituales aprecian mucho estar en un sitio que tenga un diseño bonito y usable. Piensa en otros productos. Un coche necesita un buen motor y ruedas, pero una de las razones más importantes a la hora de comprarlo es, a menudo, el diseño. Incluso si el diseño no es la razón principal, en muchas ocasiones es un detonante de la idea de compra, y puede llevar a un potencial comprador a empezar a contemplar motivos más serios. Si el diseño está bien hecho, la gente dará por hecho que el resto de también lo estará (Figura 1, Figura 2)!

Figura 1: Coche con pegatinas (Richardmasoner CC BY-SA 2.0⁴⁰)

Figura 2: Cochazo rojo (FotoSleuth CC BY-SA 2.0⁴¹)

Los dos coches anteriores están hechos para diferentes públicos. Son un ejemplo de diferentes aproximaciones en diseño.

El diseño web es de alguna manera como la artesanía. Tener habilidades en técnicas como HTML, CSS, Javascript, PHP, edición de imágenes y muchas otras es imperativo. Joomla! es sólo una herramienta más en tu caja de herramientas.

Una buena plantilla no es solo colores y gráficos. La forma y distribución del contenido es tan importante o más. El sitio web debe ser fácil de usar y seguro. El reto de armonizar todas estas variables me recuerda de nuevo a los dos coches que veíamos un poco más arriba.

El diseño web es una profesión aún joven. El diseñador web tiene que lidiar a menudo con un ancho de banda escaso, navegadores incompatibles, editores de contenido inexpertos y otra gente involucrada en el proceso de crear un 'buen' sitio web. La creación de un sitio web Joomla! es a menudo un proceso, en el que cada una de las personas involucradas aprende mucho. El buen diseño web requiere trabajo duro :-).

Joomla! y las plantillas

Joomla! es conocido por su calidad y simplicidad. En Joomla!, una página individual es generada por la salida HTML de un componente, varios módulos y la plantilla. Cada página es accesible a través de una URL única. Tomemos por ejemplo el frontend. El componente 'content' produce la salida HTML para los artículos situados en la parte central (Figura 3). Los bloques junto a los artículos son distintos módulos. Puedes combinar la salida HTML de un solo componente con la salida HTML de cualquier cantidad de módulos. Además, los módulos pueden ser reutilizados en otras páginas.

Figura 3: Joomla! front page

Positions

Debes saber, claro está, en qué posiciones concretas puedes mostrar módulos. Con este propósito, cada plantilla proporciona lo que se denominan posiciones. Para poder ver la posiciones de tu plantilla tendrás que activar la opción 'Previsualizar la posición de los módulos' (Extensiones - Gestor de plantillas - Opciones).  A continuación, podrás acceder a tu sitio usando el parámetro tp=1 (http://localhost/index.php?tp=1). Verás resaltadas las posiciones de los módulos y sus nombres (Figura 4). En Extensiones - Gestor de módulos puedes asignar una de estas posiciones a cada módulo. Si necesitas mostrar el mismo módulo en distintas posiciones, puedes copiarlo (y asignarle una posición distinta a cada 'copia').

Figura 4: Module positions

Plantillas del núcleo

El núcleo de Joomla! trae de serie 3 plantillas para el frontend y 2 para la parte administrativa. Puedes verlas en Extensiones - Gestor de Plantillas - Pestaña Plantillas (Figura 5).

Figura 5: Site templates

La plantilla Atomic es un ejemplo del aspecto que tiene una plantilla básica. En el capítulo Crear una nueva plantilla usando Atomic, usaremos esta plantilla como base para crear una propia. La plantilla Beez5 es la versión HTML 5 de la veterana Beez2. Para la parte administrativa, tenemos otras 2 plantillas más (Figura 6)

Figura 6: Plantillas de la parte administrativa

Estilos

Los estilos fueron una característica incorporada con Joomla! 1.6. Ofrecen la posibilidad de crear y usar diferentes versiones de una misma plantilla. Cada plantilla tiene como mínimo un estilo. En él pueden llevarse a cabo diversas configuraciones, dependiendo de la plantilla, como por ejemplo cambiar los colores o subir un nuevo logotipo. Puedes establece el estilo por defecto para tu sitio en Extensiones → Gestor de plantillas → Estilos. Puedes filtrar entre estilos del Sitio y de Administrador mediante el filtro de localización. La plantilla por defecto Beez2 trae dos estilos predefinidos: default y Parks Site.

Puedes crear estilos adicionales copiando estilos existentes y modificándolos. Cada estilo puede ser asignado a uno o más elementos de menú. Si quieres un fondo verde para tu sitio cuando la gente haga clic en el elemento de menú A, por ejemplo, y un fondo azul cuando haga clic en el elemento de menú B, puedes hacerlo simplemente asignándoles estilos distintos (

(Figura 7).

Figura 7: Asignar un estilo a un elemento de menú

Puedes encontrar más acerca de las plantillas en Joomla en el capítulo Trabajando con Plantillas.

Advertisement

Hosting Joomla

Necesitas crear una Web sencilla? Ya conoces Joomla?
Nuestro Pack Joomla Pro te gustará! Se trata de una versión mejorada de Joomla, con múltiples añadidos a la versión original. 

Trabaja tranquilo con tu web en un servidor seguro y completamente adaptado para Joomla.

Web Joomla

Crea tu Web de forma rápida con la Aplicación Joomla Empresa. Solo has de sustituir los textos e imagenes de ejemplo, por tus contenidos.

No estarás solo, te ofrecemos soporte gratuito sobre Joomla en nuestro Foro.

La Aplicación Joomla Empresa y Joomlafácil incluyen un Hosting y Dominio gratis por un año.

Tienda Joomla

Instala nuestra Aplicación Tienda Joomla, y publica tu negocio online de forma rápida y profesional. En todo momento tendrás el soporte gratuito de nuestros técnicos para resolver tus dudas.

Prefieres que hagamos nosotros el trabajo ?
Selecciona uno de nuestros diseños recomendados, envíanos tus contenidos y nosotros nos encargamos de crear tu Tienda con el Servicio Joomlafácil.

http://webempresa.com/

Capítulo 11

Navegación

Todo sitio necesita una navegaciónfácil de entender, o de otra forma no será posible para un usuarios encontrar lo que que está buscando. Esto puede sonar somple, pero lo cierto es que no es fácil de hacer. En un mundo perfecto debería ser posible acceder a cualquier página de un sitio con dos o tres clics. Otro hecho es que habitualmente, si no siempre, tus visitantes llegarán desde un motor de búsqueda o desde el sitio de una red social y aterrizarán en cualquier sitio en tu web menos en la página principal. ¡Esta es una buena razón para plantearse tener un botón "Inicio" en todas las páginas de tu sitio!

Un sitio web a menudo tiene una navegación primaria y otra secundaria. La navegación primaria se encuentra habitualmente en la parte superior, a la izquierda del todo o a la derecha del todo en tu web. La navegación secundaria suele estar abajo del todo o arriba del todo, pero casi siempre con un tamaño un poco más pequeño que el de la primaria. Contiene enlaces como "Contacto", "Sobre nosotros" o "Aviso legal". La idea tras esto es tener esos enlaces en el sitio, pero no en una posición importante.

Como regla general, no pongas más de entre 4 y 8 enlaces en un nivel de navegación.

Ruta de navegación (breadcrumbs)

Una 'ruta de navegación' es una herramienta para ayudar al visitante del sitio a desplazarse por el mismo. En inglés se usa el término 'breadcrum trail', que literalmente significa 'rastro de migas de pan', en referencia al cuento popular de los Hermanos Grimm, Hansel and Gretel⁴²en el que Hansel utiliza un rastro de migas de pan para marcar el camino de vuelta a casa. Normalmente la barra de navegación está situada horizontalmente en la parte superior de la página web. Se usan dos estructuras:

•mostrar los enlaces de vuelta a cada página del sitio por la que ha pasado el usuario hasta llegar a la actual

•mostrar las páginas 'padre' de la actual

Las rutas de navegación son una manera de evitar que los usuarios se sientan perdidos en tu sitio. Idealmente, los visitantes deberían saber siempre dónde están exactamente dentro del sitio, y cómo volver atrás. Joomla! proporciona un módulo de 'navegación' para esta tarea, y la mayoría de plantillas tienen una posición 'breadcrumb' reservada para él (Figura 1).

Figura 1: Breadcrumbs

Menús de Joomla!

Los niveles de navegación en Joomla son creados por los denominados menús. Puedes crear tantos menús como necesites en tu sitio web. Cada menú puede contener cualquier número de elementos anidados, y puedes incluso filtrar por nivel. Cada elemento de menú es asignado a un componente o a una URL externa. Los módulos y los estilos de las plantillas pueden ser asignado a los elementos de menú. En los datos de ejemplo se muestran varios menús que ya han sido creados.

Echemos un vistazo a dos ejemplos de navegación primaria con páginas estáticas y categorías dinámicas.

Primer ejemplo: un catálogo estático o estructura de un libro

A veces necesitas una estructura de navegación para un libro, catálogo o guía. Puedes encontrar esta configuración en los datos de ejemplo en el menú Acerca de Joomla!. Digamos que estamos escribiendo un libro corto consistente en tres capítulos. La navegación debería estar presente en todas las páginas, y verse como en la figura 2.

Figura 2: Estructura estática de un libro

Preparation

Crea la estructura del libro con unos cuantos capítulos

•El libro de Joomla

•Introducción

•Contenido

•Cómo usar A

•Cómo usar B

•Plantillas

Antes de crear los elementos de menú, debes crear artículos individuales (páginas). Ve a Contenido → Gestor de artículos → Crear (Figura 3). Puedes asignar la categoría uncategorized a esos artículos, o bien puedes crear una nueva categoría libro antes, e ir asignándosela a los capítulos.

Figura 3: Seis 'capítulos de libro'

Paso 1: Creando el menú

Puedes usar un menú existente para tus enlaces primarios o puedes crear uno nuevo desde Menús → Gestor de Menús → Nuevo y rellenando el formulario de creación de menús (Figura 4).

Figura 4: Añadir un nuevo menú

Paso 2: Crear los elementos del menú

Ve a Menús  Enlaces primarios y añade los seis artículos como enlaces. Elige Mostrar un solo artículo como Tipo de elemento de menú. Selecciona el artículo (en la parte derecha) e introduce un Título de menú (Figura 5). Si has olvidado cómo hacerlo, echa un vistazo de nuevo al capítulo Cómo crear una página 'Sobre Nosotros'.

Figura 5: Elementos de menú primarios

Paso 3: Crear y asignar el módulo

Este paso puede ser un poco engorroso. En este momento tienes los artículos, el menú y los elementos de menú, pero necesitarás también un módulo para colocarlo en tu sitio. Sigamos adelante y creemos uno. Ve a Extensiones  Módulos  Nuevo módulo, elige un módulo tipo menú y rellena el formulario. Dentro de las Opciones básicas, en el campo Seleccionar menú elegiremos el menú que creamos en el paso 1, enlaces primarios y marcaremos Sí en el campo Mostrar los elementos del menú (Figura 6).

Figura 6: Módulo de enlaces primarios

El último paso es seleccionar la posición de la plantilla. Haz clic en el botón Seleccionar Posición, filtra por la plantilla Beez_20 y elige la posición position-4. Guarda todo y ya estás listo.

Figura 7: Seleccionar la posición de la plantila

Segundo ejemplo: enlazar a categorías (revista de noticias)

Es posible enlazar a unas cuantas páginas como en el primer ejemplo pero, ¿qué hacer si tienes miles de artículos? La respuesta es fácil en Joomla! 1.7: construir una estructura con categorías, asignar los artículos y enlazarla a un diseño de categoría.

Preparativos

Necesitaremos unas cuantas categorías con artículos:

Categories:

•Noticias

•Mundo

•África

•Europa

•Tecnología

•Internet

•Coches

Créalas o usa alguna categoría existente (Más información: Estructurar el contenido en categorías).

Paso 1: El menú

Ahora es cosa tuya el cómo continuar. La manera más fácil es usar el menú Enlaces Primarios. Pero si quieres, puedes crera un nuevo menú llamado Noticias, como he hecho yo.

Paso 2: Los elementos de menú

Cuando trates con categorías debes pensar sobre qué debería mostrarse una vez que hayas hecho clic en el enlace. El resultado que esperamos obtener en nuestro caso es

•Categoría Noticias = todas las noticias deberían aparecer

•Categoría Noticias → Mundo = queremos sólo las noticias del mundo

y así (Figura 8).

Figura 8: Elementos de menú en el menú Noticias

Para conseguir el comportamiento esperado, crea un elemento de menú del tipo Mostrar una categoría en formato blog. En las Opciones obligatorias, elige la categoría recién creada Noticias. En las Opciones del formato tipo blog o destacados, elige Incluir subcategorías - Todas y Cantidad de artículos de introducción - 0. Continúa creando los elementos de menú anidados para cada categoría adicional y ya estás listo (Figura 9).

Figura 9: Opciones de Categoría

Ahora puedes manejar miles de artículos. Tu estructura de navegación está preparada para ello, y tus visitantes entenderán el sistema inmediatamente (Figura 10).

Figura 10: Artículos en una estructura de categorías

Algunos ajustes

Como has visto, hay prácticamente infinitas posibilidades a la hora de configurar las opciones. Son posibles muchas cosas, y normalmente siempre habrá una forma de conseguir tus objetivos. En lo que se refiere al diseño de la estructura de navegación, es posible filtrar el nivel de los elementos de menú mostrados en el propio módulo. Es posible, por ejemplo, poner

•el primer nivel de nuestro menú Noticias en la posición superior, y los niveles segundo y tercero en las barras laterales izquierda o derecha.

•todo el menú en la parte superior, y usar menús desplegables (dependiendo de las capacidades de la plantilla)

Si juegas un poco con las distintas opciones, descubrirás una solución prácticamente para cada caso. El sistema de navegación de Joomla! puede ser un poco complejo por un lado, pero por el otro es un sistema muy potente.

Advertisement

Capítulo 12

Usuarios y Permisos

La gente simplemente intenta utilizar el sitio web Joomla! que has creado - ya sea de forma activa o pasiva. Cuanto mejor sea la experiencia que tenga al hacerlo, mejor valorado será tu sitio web.

Joomla! - como todos los CMS, diferencia entre visitantes y usuarios registrados con permisos diferentes. Los visitantes suelen llegar al sitio desde los motores de búsqueda o por recomendaciones en las redes sociales, y pueden convertirse en usuarios mediante un registro. Los usuarios ya registrados saben, en su mayoría, lo que están buscando y llegan a tu sitio con ciertas expectativas.

Cuantos más usuarios tiene tu sitio, más compleja se torna la gestión de usuarios y permisos. En las versiones anteriores a Joomla! 1.6, había un sistema estático constituido por grupos de usuarios, permisos y niveles de acceso que no se podían cambiar. Con Joomla! 1.7, este sistema aún se conserva en la configuración predeterminada (por defecto) de la llamada ACL, del inglés access control list (Lista de Control Acceso)⁴³.

Cada acceso al sitio será evaluado por un Grupo de Permisos, incluso el de los visitantes. Después de registrarse en el sitio web Joomla!, el usuario se convertirá automáticamente en miembro de un Grupo de Permisos. El grupo tiene permisos predefinidos y pertenece a un determinado nivel de acceso. Un nivel de acceso puede tener cualquier número de Grupos de Permisos. Un grupo puede tener cualquier número de usuarios / visitantes. Los permisos pueden ser heredados y reemplazados en varios lugares.

Empecemos por echar un vistazo al proceso de registro.

Registros e inicios de sesión

El primer proceso de registro en el ciclo de vida de tu sitio web fue completado al terminar la instalación de Joomla!. En el último paso te han pedido un nombre de usuario, una dirección de correo electrónico y una contraseña. La persona que instaló Joomla! es el superadministrador, quien tiene permiso para hacer cualquier cosa en el sitio. Es por eso que cada sitio web creado con Joomla! tiene al menos una cuenta de usuario. Solo este usuario puede modificar el comportamiento del sitio en la opción Usuarios - Gestión de Usuarios  (Users - User Manager - Options en la imagen 1).

Imagen 1: Opciones de usuarios 

En tu sitio web Joomla!, puedes crear tantos usuarios como desees. Asimismo puedes dejar que los mismos visitantes se registren. En dependencia de sus permisos, los usuarios pueden crear sus  propios contenidos y/o ver los contenidos que han sido creados especialmente para ellos. 

Opciones de usuarios 

El formulario de opciones de usuarios tienes 3 pestañas: 

•Component
En esta área puedes configurar un formulario de registro en caso de que decidas poner uno. Una de las nuevas características introducidas desde Joomla! 1.6 es la posibilidad de predeterminar cual grupo de usuarios invitados debería ser asignado, y cual grupo de usuarios recién registrados aparecerá por defecto.

•Mass mail
Existe la posibilidad de hacer un envío masivo de emails (mass mail) a tus usuarios. En esta pestaña puedes configurar la cuenta de correo estática.

•Permissions 
En esta pestaña puedes establacer los permisos para cada grupo de usuarios. 

Inicio de sesión (Log in)

Los visitantes registrarse en el sitio Joomla!, para eso existe este módulo de inicio de sesión (Login) que puede implementarse en el sitio  (Imagen 2). 

Imagen 2: Módulo de inicio de sesión (Login module)

Este módulo puede ser configurado con muchos parámetros adicionales tales como texto parametrizado (customized text), codificación SSL y redirección de inicio / cierre de sesión. Echa un vistazo en Extensiones- Gestor de Módulos (Extensions - Module Manager) en la Imagen 3.

Imagen 3: Opciones del módulo Login 

La ventaja de este formulario, que creas con el módulo Login, es que no necesitas hacer click antes de que aparezca el registro en el formulario. Si no necesita esto o no quieres tener el formulario de inicio de sesión en forma de módulo, puedes crear el formulario como un componente. Para hacer esto solo tienes que crear un menú con el tipo de menú deseado (Imagen 4).

Imagen 4: Tipos de menús para usuarios 

Campos adicionales en el perfil

Antes solo era posible crear campos adicionales en el formulario de registro añadiendo extensiones. Para resolver esta carencia y conectar los datos del usuario con el componente de contacto, Joomla! 1.7 trae incorporado un plugin (ver también  Contact component). Este módulo tiene varios campos adicionales, incluida la opción de Condiciones de uso, en la que los usuarios deben hacer click durante el proceso de registro para aceptar las condiciones de uso  (Imagen 5).

Imagen 5: Campos adicionales del perfil

User groups

La idea del grupo de usuarios es crear una serie de permisos.

"Si quieres ser autor en tu sitio, vas a necesitar los siguientes permisos”.  

En lugar de asignar los permisos a cada usuario por separado, estos son asignados a un grupo. El usuario individual

es entonces asignado a uno o varios grupos. Imagínate que tienes 10.000 usuarios en cuatro grupos diferentes. Es muy fácil para el administrador cambiar los permisos a cada uno de los grupos. De no tener grupos, hubieras tenido que hacer los cambios en cada cuenta de usuario manualmente. Sin embargo, cuando tienes grupos, solo tienes que cambiar los permisos una vez.

Con Joomal! 1.7 puedes crear tantos grupos de usuarios como quieras. En Gestión de Grupos de Usuarios (User Manager – Groups) puedes encontrar un resumen de todos los grupos que están en el core de Joomla! (Imagen 6).

Imagen 6: Grupo de usuarios 

La configuración predeterminada es la misma de Joomla! 1.5. Si te gusta esa estructura, no es necesario cambiar nada.

Permisos por defecto para los grupos de usuarios de la parte pública (frontend) del sitio web:

•Grupo registrado (Registered group)
Un grupo de usuarios registrados puede iniciar sesión, editar sus propios datos de registro y ver algunas partes del sitio que los usuarios no registrados no pueden ver. 

•Grupo autor ( Author group) 
El autor puede hacer todo lo que el usuario registrado puede hacer. Un autor puede también escribir artículos y modificar su propio contenido. Generalmente, hay un enlace en el menú para esto.

•Grupo redactor ( Editor group)   
El redactor puede hacer todo lo que puede un autor. Un redactor puede también escribir y editar todos los artículos de la parte pública del sitio (frontend).  

•Grupo editor ( Publisher group)  
El grupo editor puede hacer todo lo que el redactor. El editor puede asimismo escribir artículos y editar toda la información que aparece en la parte pública del sitio (frontend). Además, el editor puede decidir si los artículos son publicados o no. 

Permisos predeterminados para los grupos de usuarios de la administración:

•Gestor ( Manager group)
Un gestor puede crear contenido y ver alguna información del sistema. No estará autorizado a:

•Gestionar usuarios  

•Instalar módulos y componentes.

•Convertir un usuario en superadministrador o cambiar un superadministrator.

•Trabajar en la Configuración Global del sitio.

•Mandar un mensaje masivo (mass mailing) a todos los usuarios

•Cambiar y/o instalar plantillas y archivos de idiomas

•Administrador (Administrator) 
Un administrador no está autorizado:

•Elevar un usuario a superadministrador o cambiar un superadministrador  

•Trabajar en la Configuración Global del sitio.

•Mandar un mensaje masivo (mass mailing) a todos los usuarios

•Cambiar y/o instalar plantillas y archivos de idiomas

•Superadministrador o superusuario (Super Administrator or Super User)
Este usuario está autorizado para ejecutar todas las funciones en la administración de Joomla!. Solo el superadministrator puede añadir otros superadministradores.

Niveles de acceso

Los grupos de usuarios pueden ser asignados a un nivel de acceso. De manera que tenemos usuarios conectados a un grupo y grupos conectados a un nivel de acceso. (Imagen 7, Imagen 8)

Imagen 7: Niveles de acceso 

Imagen 8: Grupos asignados a un nivel de acceso 

¿Por qué niveles de acceso?

Como hemos visto, los niveles de acceso son un paquetes de grupos. Con la combinación de grupos de permisos y niveles de acceso, resolviendo cada caso de uso es posible. En un artículo, puedes limitar la accesibilidad a un nivel de acceso. (Imagen 9).

Imagen 9: Niveles de acceso en un artículo

Advertisement

http://complusoft.es

Capítulo 13

Gestión de extensiones

Hay un montón de cosas en el paquete del núcleo de Joomla!. Palabras como componentes, módulos, plug-ins, plantillas e idiomas ya las has oido antes. Además de estas partes bien conocidas, Joomla! también consta de algunas partes menos conocidas como librerías y paquetes. Puedes encontrar componentes, módulos e idiomas adicionales en el Directorio de extensiones Joomla! (Joomla! extension directory)⁴⁴. El proyecto Joomla! no tiene un directorio central librerías . El motivo de que esto sea así es simple: las librerías son desarrolladas fuera del proyecto Joomla, y muchas son usadas incluso por otros proyectos de código abierto. En cuanto a las plantillas, se está trabajando en un directorio de plantillas que verá la luz en los primeros meses de 2012.

Con el nuevo gestor de extensiones puedes instalar, actualizar, descubrir y gestionar extensiones directamente desde la zona administrativa de tu Joolma!

Gestionando extensiones

Echemos un vistazo a las 110 extensiones que tienes instaladas en Extensiones → Gestor de extensiones → Gestionar. Puedes filtrarlas de acuerdo a varios parámetros. Algunas extensiones están protegidas. Tu instalación Joomla! dejaría de funcionar su desinstalaras alguna de estas últimas (Figura 1).

Figura 1: Tabla con todas las extensiones instaladas en tu sitio

En este área puedes activar, desactivar y desinstalar extensiones. Activarlas y desactivarlas funciona exactamente igual que el interruptor de una lámpara. Simplemente enciendes o apagas la extensión, y todos los datos relacionados con ella serán conservados en cualquiera de los dos estados. Si desinstalas una extensión, será borrada. A menudo las extensiones, normalmente componentes, crean tablas adicionales en la base de datos al ser instaladas. El que dichas tablas sean eliminadas o no al desinstalar la extensión dependerá de las rutinas de desinstalación de la propia extensión. Comprueba el manual o el archivo léeme antes de desinstalar, para evitar sorpresas.

El último icono en la barra de herramientas es el icono de caché. Toda extensión es capaz de "cachear" datos. Puedes limpiar esta caché por separado para cada extensión. Su tu sitio Joomla! atrae muchos visitantes y no quieres limpiar toda la caché por motivos de rendimiento, puedes necesitar esta función.

Si filtras la lista por librerías, encontrarás esta cuatro con su correspondiente número de versión:

•Joomla! Application Famework, que es la 'Plataforma' en la que está basado el CMS Joomla! 1.7. Todas las demás extensiones están desarrolladas sobre este framework.

•PHPMailer⁴⁵ es una clase escrita en PHP, y que sirve para enviar emails. Se usa en el componente correo.

•SimplePie⁴⁶ es otra clase, también escrita en PHP, para gestionar canales electrónicos RSS y Atom. Se usa en el componente canales electrónicos.

•phputf8⁴⁷ es una librería compatible con UTF8⁴⁸ consistente en una serie de funciones que emulan a las propias funciones de cadenas de PHP. Puedes hacerte una idea de lo que hace esta librería leyendo este artículo: UTF-8 and PHP⁴⁹.

Si filtras la lista por paquetes, no encontrarás nada en el núcleo de Joomla!. Si instalaste otros idiomas además del inglés, encontrarás esos paquetes aquí.

Actualizando extensiones

En este área se listan extensiones de terceros y la versión del núcleo del propio Joomla!. Aquí puedes comprobar si hay actualizaciones disponibles haciendo clic en el icono Buscar actualizaciones. Si Joomla! encuentra una actualización para una extensión y quieres actualizarla automáticamente, tienes que rellenar la configuración de FTP en Configuración Global → Servidor → Configuración de FTP. Una vez tengas esto configurado, seleccionas la extensión que quieres actualizar y haces clic en el icono Actualizar. El proceso es completamente automático, y recibirás mensajes y explicaciones durante la instalación, dependiendo de la extensión de la que se trate.

Instalando extensiones

Puedes instalar extensiones de tres formas diferentes (Figura 2):

Figura 2: Instalando extensiones

•Subir paquete
Si has descargado un archivo zip a tu PC local que contiene una extensión Joomla!, puedes usar esta opción para subirlo e instalar dicha extensión.

•Instalar desde un directorio
Si has subido un archivo zip que contiene una extensión Joomla! al directorio raíz de su servidor, puedes usar esta opción para extraer e instalar tu extensión.

•Instalar desde URL  
Si conoces la URL de un archivo zip que contiene una extensión Joomla!, puedes usar esta opción para descargar, extraer e instalar dicha extensión directamente en tu servidor, sin necesidad de descargarla a tu PC local primero.

Encontrar extensions

A veces las cosas van mal durante el proceso de instalación, como por ejemplo archivos demasiado grandes, permisos que no están correctamente establecidos o alguna otra cosa extraña. En este área, Joomla! intenta encontrar extensiones que no están instaladas pero, a pesar de ello, se encuentran en el directorio de archivos de tu servidor. Si una o más extensiones son encontradas, puedes instalarlas usando FTP. No te olvides de configurar las credenciales de FTP correctas en Configuración Global → Servidor → Configuración de FTP.

¡Usando la opereción de descubrir, puedes instalar múltiples extensiones de una sola vez!

Avisos

Los mensajes de error relacionados con las instalaciones y actualizaciones aparecerán en esta zona. Si no puedes resolver el problema por ti mismo, 'googlea' el texto del mensaje, y normalmente encontrarás una solución... o al menos algún consejo o pista para poder hacerlo.

Advertisement

http://complusoft.es

Capítulo 14

Extensiones del Núcleo

Como ya hemos visto en el gestor de extensiones, el paquete de Joomla 1.7 trae varias extensiones integradas de serie. Ya hemos estado en contacto con alguna de ellas. Como usuario de sitios web, probablemente no te preocupes mucho acerca de la extensión que estás usando mientras dicha extensión funcione. Como administrador, sin embargo, debes conocer exactamente qué está ocurriendo. Ya hemos visto varias extensiones Joomla! como el componente content, que te permite escribir y gestionar artículos, así como publicarlos de diferentes maneras en tu sitio web. La extensión user tiene que ver con los usuarios, category con las categorías, etc.

En los siguientes capítuos, voy a cubrir la funcionalidad de extensiones adicionales que son parte del núcleo de Joomla! 1.7. En el menú Componentes, verás Anuncios, Contactos, Mensajería, Canales Electrónicos, Redirecciones, Buscar y Enlaces Web. Echaremos un vistazo a estos componentes, incluyendo sus módulos y plugins relacionados y, por último, pero no menos importante, a la funcionalidad de enviar Correo Masivo a los usuarios del componente User, que como su nombre deja entrever permite enviar masivamente un correo a todos los usuarios del sitio.

Anuncios (banners)

El componente "banners" (anuncios) proporciona la opción de mostrar anuncios en tu sitio. Un anuncio puede estar compuesto por gráficos o código HTML personalizado. Cada vez que se accede a tu sitio, un anuncio distinto será mostrado desde tu administración de anuncios. Puedes hacer clic en esos anuncios, que enlazan con el sitio del cliente. El componente de anuncios ofrece administración de clientes, categorías y anuncios, así como análisis detallados. A continuación te guiaré a través de un ejemplo real en este capítulo.

Si desearías vender anuncios en tu sitio web, necesitarás tres cosas: clientes, anuncios y páginas en tu sitio desde las que mostrar los anuncios. ¡Ah! me olvidé de una cosa más. También necesitarás tráfico hacia tu sitio. Mientras más tráfico, mejor.

Dependiendo de los términos del contrato que tengas con tus clientes, puedes necesitar también un resumen de seguimiento del sitio, con las impresiones y los clics.

Empecemos por el cliente. Vivo en un área turística, y los negocios locales quieren anunciar sus servicios. Joomla! ofrece suscripciones anuales, mensuales, semanales, diarias e ilimitadas. Puedes configurar el tipo de suscripción por defecto en Componentes - Anuncios - Opciones.

A mi cliente le gustaría pagar una cuota mensual para aparecer en todas las páginas con tres anuncios que irán rotando. Añado al cliente en Componentes - Anuncios - Clientes - Nuevo y relleno el formulario (Figura 1).

Figura 1: Añadiendo un cliente

Antes de que pueda crear anuncios individuales, lo primero es crear una categoría de anuncios. Las categorías son muy útiles, ya que más adelante en el módulo de anuncios podré elegir qué anuncios mostrar dependiendo de entre mi lista de clientes y categorías (Componentes - Anuncios - Categorías).

Figura 2: Tamaños estándar de anuncios web⁵⁰

Soy libre de elegir el tamaño de cada anuncio, pero normalmente se usarán los tamaños estándar de los anuncios web (Figura 2)

Al cliente le gustaría tener tres anuncios de tamaño "leaderboard" (728 x 90 píxeles). Los crearé en Componentes - Anuncios - Anuncios. Elijo la categoría y el cliente, subo el anuncio y relleno el tamaño. En Opciones de Publicación puedo configurar muchas características, como por ejemplo las fechas de inicio y fin de publicación del anuncio. Esto último es especialmente útil para planes de suscripción limitados en el tiempo. También está la opción de reestablecer a cero el número de clics y el de impresiones (Figura 3, Figura 4).

Figura 3: Formulario de adición de anuncio

Figura 4: Anuncios en Administración

El siguiente paso es crear y/o activar uno o más módulosd e anuncios. Para cada tamaño de anuncio necesitaré un módulo. En mi caso, todos los anuncios son del mismo tamaño, por lo que con un solo módulo será suficiente. Voy a Extensiones - Módulos y filtro por Anuncios. De momento no hay nada ahí, así que creo un módulo haciendo clic en el icono Nuevo. Dependiendo de la plantilla, tendré que elegir una posición. En mi caso, elegiré la posición position 12 de la plantilla Beez2. El anuncio aparecerá entonces por encima del contenido. En las Opciones básicas podrás configrar muchas más cosas. También es posible mostrar el módulo dentro de tu contenido (ver el capítulo: Módulos).

Buscar por etiquetas es una función interesante. Cuando está activada, el anuncio será mostrado cuando las palabras clave del anuncio (establecidas en la configuración del propio anuncio) y las palabras clave de la página mostrada (establecidas en el formulario de edición de artículo o en otros sitios, dependiendo del tipo de pàgina) coinciden. Otra opción para controlar la visibilidad del módulo y de los anuncios es la Asignación de menú. También es muy importante la posibilidad de escribir un texto de encabezado o pie. En algunos países, los anuncios deben estar etiquetados (Figura 5).

Figura 5: Módulo de anuncios

El anuncio aparecerá ahora en el sitio web. Dependiendo de la configuración y de la cantidad de anuncios, un anuncio diferente aparecerá cada vez que refresques la página. El propio anuncio está enlazado al sitio web del cliente, y si pasas el cursor del ratón por encima de la imagen, se mostrará un tooltip (cuadro de ayuda contextual)  con el título del anuncio (Figura 6).

Figura 6: Anuncios en el sitio web

Si se configuró correctamente, todas las impresiones del anuncio serán seguidas por el componente de anuncios. Este seguimiento puede verse en Componentes - Anuncios - Informes, y podrá filtrarse por fecha, cliente, categoría y tipo (clics o impresiones - Figura 7).

Figura 7: Seguimiento de anuncios

Contactos

Todo sitio web necesita un formulario de contacto. Dependiendo del proveedor del sitio, una veces con uno bastará, pero otras necesitarás varios. Si se trata de un sitio web para una compañía con más de un departamento, querrán tener un formulario de contacto para cada uno de ellos. Quizá te gustaría mostrar un formulario de contacto para cada empleado o para cada cuenta de usuario.

Todo esto puede hacerse usando el componente de contactos de Joomla!.

Como ya hemos visto (ver el capítulo El Formulario de contacto), es relativamente sencillo crear un formulario de contacto simple. Sencillamente, crea un contacto, asígnalo a una categoría y crea un elemento de menú para él.

Ejemplo

Si se necesitam muchos formularios, deberías plantearte primero la estructura subyacente para mostrarlos. Del mismo modo que con las categorías de artículos, es posible asignar categorías de contactos a los elementos de menú. Si creas un elemento de menú de este tipo, al hacer clic en él verás una lista de contactos asignados a esa categoría. Si haces clic en el nombre o el título de uno de esos contactos, verás más detalles sobre dicho contacto, así como el formulario de contacto propiamente dicho.

He probado diferentes escenarios con el componente de contactos, ¡y las posibilidades son increíbles! Como en todas partes en Joomla! 1.7 tienes la opción de crear categorías anidadas y diferentes tipos de elementos de menú. En las opciones (Componentes → Contactos → Opciones) puedes, por ejemplo, configurar la apariencia del formulario de contacto (deplegable, pestaña, plano) y configurar una cantidad impresionante de parámetros.

Como ejemplo, he creado una área de contacto para nuestra compañía con tres formularios de contacto para distintos tipos de consultas, y un formulario de contacto para cada miembro del equipo. Haciendo clic en los enlaces, aparecerán el formulario de contacto y detalles adicionales sobre dicho contacto (Figura 1).

Figura 1: Área de contaco

Para este ejemplo, he creado dos categorías: cocoate y team. La categoría team es una subcategoría de cocoate. Habría sido posible añadir una imagen y una descripción, pero he decidido rellenar únicamente el campo de título (Figura 2).

Figura 2: Categorías de contactos

Para cada formulario de contacto necesito un contacto con una dirección de correo electrónico. Los contactos pueden ser asignados a usuarios de Joomla o no (se pueden crear contactos independientes). Em este caso, he creado tres contactos independientes relacionados con la categoría cocoate sin enlazarlos a ningún usuario. También he creado dos contactos dentro de la categoría team, ambos vinculados a una cuenta de usuario (Figura 3).

Figura 3: Contactos

Si alguno de los datos cambia, como el número de teléfono por ejemplo, sería bueno que los usuarios relacionados pudieran hacer esos cambios directamente desde su perfil de usuario en el sotio web, sin necesidad de acceder al área de administración. Para esta tarea Joomla! proporciona el plug-in Perfil de Usuario. No tienes más que activarlo desde Extensiones → Plug-ins. En el perfil de usuario se mostrará un área nueva para los campos del perfil, que estará conectada al componente de contactos.

Mensajería

Mensajería es un componente del núcleo de Joomla! y un sistema de mensajería privada para los usuarios del backend. Te permite enviar y recibir mensajes a otros usuarios con permisos de acceso al área de administración del sitio.

El componente de mensajería es muy fácild e usar; sin embargo, los usuarios a menudo se olvidan de la posiblidad de configurarlo desde Componentes - Mensajería - Mi configuración. Puedes configurar el sistema para que te mande un correo electrónico cada vez que recibas un mensaje nuevo, para que los borre transcurrido un número determinado de días y puedes incluso bloquear tu bandeja de entrada.

Canales electrónicos (newsfeeds)

Los canales electrónicos son muy prácticos. Es posible suscribirse a ediferentes tipos de noticias e información. Desafortunadamente, incluso hoy día la gente no los usa por algún motivo inexplicable. Hace treinta años tenías que comprar y leer un periódico para conocer las "novedades". Hace quince años, abrías tu navegador y visitabas un sitio web tras otro para conocer esas mismas "novedades". Hoy todavía puedes hacer ambas cosas, pero también es posible usar un agregador de canales electrónicos. Google reader y la barra de marcadores dinámicos de tu navegador (por ejemplo, Firefox) son relativamente populares. El componente Canales electrónicos de Joomla! también es un agregador. No es tan sofisticado como Google reader, pero también resulta útil.

El componente de canales electrónicos te permite recolectar canales de otros sitios web y publicarlos en el tuyo.

En el mundo actual de "social media" probablemente todo el mundo tiene docenas de cuentas. A menudo los vídeos e imágenes son almacenados en Youtube o en Flickr. En una compañía, la situación es aún más compleja. Imagina cuánta información está disponible a través de canales electrónicos para un proyecto como Joomla!, o incluso acerca de tu propia compañía.

Un lector de canales electrónicos en tu sitio web

En el ejemplo que viene a continuación, queremos construir un lector de canales electrónicos en nuestro sitio web. Trataré de recolectar todas las piezas que existen en torno a nuestra compañía y las enumeraré en una tabla. Tenemos una cuenta de Vimeo para nuestros vídeos, una cuenta de Flickr para las imágenes, muchas cuentas de Twitter... y eso no es todo :-).

Primero, crearé una categoría de canales electrónicos llamada cocoate en  Componentes → Canales electrónicos → Categorías y a continuación, para cada canal y entrada en Componentes → Canales electrónicos → Canal electrónico (Figura 1). El único problema suele ser encontrar el enlace correcto para el canal. Por ejemplo, el enlace para nuestro canal de los vídeos de Vimeo se ve así: http://vimeo.com/cocoate/videos/rss. El enlace al canal de las fotos de Flickr se ve mucho más complicado (http://api.flickr.com/services/feeds/photos_public.gne?id=17963290@N00&lang=en-us&format=rss_200).

En las opciones de publicación tienes que introducir tantas entradas de canales como quieras mostrar, y los segundos que deberán transcurrir antes de que se refresque la caché. Joomla! únicamente almacena el número de elementos que configures en su caché. Este es un detalle importante, porque en algunos países no se permite almacenar contenido de un canal electrónico público en tu base de datos.

Figura 1: Una colección de canales electrónicos

Finalmente, tendrás que crear un elemento de menú en un menú de tu elección. El componente Canales electrónicos viene con tres diseños distintos:

1.Mostrar todas las categorías de canales electrónicos

2.Mostrar todos los canales electrónicos de una categoría

3.Mostrar un solo canal electrónico

Elijo el segundo porque tengo todos mis canales en una sola categoría. En el sitio web, Joomla! agrega mis canales, por ejemplo el canal de los vídeos de Vimeo (Figura 2)

Figura 2: Datos del canal electrónico

Cuando crear un canal electrónico, puedes configurar en las Opciones básicas entre otras cosas si quieres que se muestren las imágenes de los canales o no. También puedes limitar el número de caracteres del contenido que será mostrado. Esta caracterísitica es muy útil si el canal contiene artículos muy largos o si estás usando el módulo en una posición de tamaño reducido. Puedes crear un módulo nuevo en Extensiones - Módulos - Nuevo. Aquí está por ejemplo el canal del New York Times (http://feeds.nytimes.com/nyt/rss/HomePage). Configura el módulo en la position-4 y configura sus Opciones básicas (Figura 3).

Figura 3: Módulo canal eletrónico

El resultado en la página web se verá como en la Figura 4.

Figura 4: News feed module on website

Redirects

El gestor de redirecciones es una idea maravillosa. Redirige a un visitante a una página válida cuando introduce una ruta a tu sitio web que no existe. Es posible que existiera en el pasado, y que fuera añadida al índice de búsquedas de un motor de búsquedas, o que alguien la almacenara en otro sitio web. Este problema ocurre con frecuencia cuando se relanza un sitio web.

El componente de redirecciones es muy conveniente. Si alguien intenta acceder a una ruta que no existe, Joomla! mostrará la página 404 - No encontrado y simultáneamente creará una nueva entrada en el gestor de redirecciones.

Cuando accedas a Componentes → Redirección, verás todos esos enlaces (Figura 1). El plug-in Sistema - Redirección debe estar activo en Extensiones → Plug-ins.

Figura 1: Gestor de redirecciones

Ahora puedes edotar los enlaces y añadir una nueva URL de redirección. La próxima vez que se acceda a la ruta antigua, el componente de redirección se asegurará de que el visitante sea redirigido a la nueva dirección. Puedes crear redirecciones personalizadas si conoces cualquier ruta antigua que ya no exista.

El componente utiliza el sistema de reescritura del servidor. Actualmente, el componente sólo soporta Apache con el módulo mod_rewrite instalado. En Sitio → Información del sistema puedes ver qué servidor web estás usando. (Figura 2)

Figura 2: Información del sistema

Cuando uses Apache, ve a Configuración Global → Sitio → Configuración SEO → Usar la reescritura de URLs y cámbiala a "sí". A continuación, renombra el archivo htaccess.txt a .htaccess. En algunos casos no será posible renombrar este archivo, dado que empieza con un punto. Yo suelo usar mi cliente FTP o directamente acceso shell para renombrar el archivo (Figura 3).

Figura 3: .htaccess

Buscar

La gente espera ser capaz de buscar contenido en tu sitio.

Joomla! utuliza búsqueda de texto completo. Texto completo significa que Joomla! busca todas las palabras clave que introduzcas en la caja de búsqueda directamente en la base de datos.

Esto puede sonarle obvio a la mayoría de la gente, pero no lo es. Muchos motores de búsqeuda primero crean un índice de búsqueda consistente en palabras usadas en ti sitio web. Durante la búsqueda real, se "explora" el índice de búsqueda en busca de coincidencias. Estas coincidencias están enlazadas al contenido real. La página con los resultados de la búsqueda está basada en esas coincidencias y enlaces. La búsqueda basada en índices es más rápida que la de texto completo, pero el índice debe ser actualizado cada vez que el sitio web cambia; de otra modo, el contenido nuevo nunca podría ser encontrado. Para compensar la ventaja de rendimiento de las funciones de búsqueda basadas en índices, Joomla! es apliamente configurable.

Análisis del término de búsqueda

Para tener una primera impresión de lo que nuestros visitantes están buscando en nuestro sitios, tenemos que activar la funcionalidad de búsqueda (Componentes → Buscar → Opciones: Registro de búsquedas → Sí). A partir de ese momento, todos los términos introducidos por los usuarios en el cuadro de búsquedas serán grabados y listados en Componentes → Buscar. No olvides activar también Mostrar los resultados de búsqueda (Figura 1).

Figura 1: Estadísticas de búsqueda

Interfaz de usuario

Puedes elegir entre un cuadro de búsqueda que aparezca en varias páginas de tu sitio web y un enlace a un formulario de búsqueda. La extensión Buscar proporciona un módulo de búsqueda para la primera opción, y un diseño de búsqueda para la segunda. El módulo de búsqueda se activa por defecto, y la mayoría de las plantillas proporcionan una posición especial de búsqueda para él. Ofrece numerosas opciones, incluyendo configuración del texto de los botones, así como el ancho del cuadro de búsqueda (Figura 2).

Figura 2: Módulo de búsqueda

La página de resultados de búsqueda consiste en un formulario de búsqueda más detallado en la parte superior del a página, seguido de los resultados de búsqueda debajo (Figura 3).

Figura 3: Página de resultados de búsqueda

El usuario puede configurar los parámetros de búsqueda (todas las palabras, cualquie palabra, frase exacta) y cambiar el orden en el que se mostrarán los resultados. La búsqueda también puede limitarse a diferentes elementos de contenido como artículos o categorías.

Entre bambalinas

Puedes configurar la búsqueda en los plug.ins de búsqueda existentes. Echa un vistazo a Extensiones - Gestor de plugins y filtra por el tipo search (Figura 4).

Figura 4: Plugins de búsqueda

Hay un plugin para cada casilla de verificación bajo buscar únicamente. Puedes cambiar el orden de los plugins, activarlos o desactivarlos. Puedes configurar también opciones para cada los plugin, por ejemplo si se buscará en los artículos archivados o no.

Cada extensión adicional que instales puede contener un plugin de búsqueda que se integre a sí mismo en el proceso de búsqueda.

Con esta estructura de búsqueda basada en plugins, el componente de búsqueda de Joomla! es fácil de usar y fácil de extender.

Enlaces web

Con el componente enlaces web puedes crear una lista de enlaces o una sección de descargsa que puedes integrar en tu sitio web. Para hacer esto, Joomla! proporciona un siste a de categorías anidadas, y permite contar los impactos individuales en cada enlace. Este componente es útil para catálogos de enlaces. Crea tantas categorías de enlaces como necesites, añade tantos enlaces web como tengas y conecta ambos asignando cada enlace a una categoría. Añade un enlace de menú, elige un diseño y configura las opciones.

El componente de enlaces web proporciona tres tipos de diseños de elementos de menú: Mostrar todas las categorías de enlaces web, Mostrar todos los enlaces web de una categoría y Mostrar un formulario para crear y enviar un enlace web. Ya hemos visto los dos primeros diseños en los capítulos dedicados a artículos y categorías. Usando el tercero, puedes involucrar a tus usuarios en la creación de un catálogo conjunto. Crea un elemento de menú del tipo 'Mostrar un formulario para crear y enviar un enlace web' en el menú de usuario y establece los permisos en Componentes → Enlaces web → Opciones para parmitir a los usuarios registrados crear enlaces. El área Opciones proporciona seis pestañas repletas de opciones de configuración. 

Los datos de ejemplo incluyen un catálogo de enlaces (Figura 1).

Figura 1: Catálogo de enlaces

En el gestor de módulos, encontrarás un módulo de enlaces web, que muestra enlaces de una categoría concreta en una posición de tu sitio web.

Envío masivo de correos

A veces quieres enviar un mensaje por correo electrónico a todos tus usuarios. A veces quieres enviar ese mensaje únicamente a un grupos de usuarios, o sólo a aquéllos con acceso al backend. Enviar mensajes siempre es delicado. Nadie quiere ser un SPAMMER y nadie quiere recibir SPAM, de modo que ¡sé cuidadoso!

Para poder usar el componente de envío masivo de correos, debes configurar Joomla! para enviar emails en Configuración Global → Servidor → Configuración de correo. Una vez hecho esto, podrás configurar el Prefijo del asunto y el Sufijo del texto de correo en Usuarios → Correo masivo: Opciones → Correo Masivo.

El interfaz de usuario de componente Correo Masivo es fácil de entender. Puedes elegir el grupo de usuarios de aquellos usuarios que deberían recibir el correo. Desde Joomla! 1.7 es posible decidir si los usuarios desactivados (bloqueados) deberían recibir el correo o no.

Puedes determinar si los subgrupos del grupo de usuarios seleccionado recibirán los correos o no, si el correo se enviará en formato HTML o texto plano, y si todos los receptores serán listados en el correo o marcados como BCC (Blind Carbon Copy - Copia privada). El mensaje tendrá un título y un cuerpo principal. Puedes usar HTML, pero no se proporciona ningún editor WYSIWYG

(Figura 1).

Figura 1: Mass mail form

No es posible almacenar correos masivos en Joomla!. Tras rellenar el formulario, haz clic en el icono "Enviar email". Una vez hecho esto, los correos serán enviados.

Advertisement

http://complusoft.es

Capítulo 15

Módulos

Un módulo es un elemento de contenido que puede ser situado junto a un artículo. Por ejemplo, un menú es un módulo. El pequeño bloque de registro de la parte izquierda, también es un módulo. Puedes crear tantos módulos como quieras, y colocarlos en distintas áreas predefinidas de la plantilla.

Los módulos son elementos de diseño en cada plantilla. La mayor parte de las veces, los módulos de búsqueda y "miga de pan" (breadcrumbs) tienen posiciones y estilos predefinidos específicos en cada plantilla. Esto también ocurre con el módulo de navegación de la cabecera de cada página, posición que habitualmente es llamada "top".

Similitudes entre todos los módulos

Every module has

•un título, que puede mostrarse como encabezado u ocultarse,

•una posición dentro de la plantilla,

•un selector para publicar o no el módulo,

•un número de posición, que permite ordenar los módulos que se muestran en la misma posición de la plantilla, y que habitualmente se usa en los módulos de las barras laterales,

•un selector de planificación, con una fecha de inicio y fin de publicación, lo que permite programar un rango temporal durante el que se mostrará el módulo,

•la opción de asignar un idioma al módulo. Una vez seleccionado uno concreto, el módulo únicamente se mostrará cuando el usuario haya seleccionado ese idioms (ver el capítulo Sitios Web Multi-lenguaje)

•la opción de añadir una nota al módulo, que permite a los administradores del sitio recordar o transmitir a otros administradores información relevante

•el mismo sistema de asignación de menú que las plantillas, que permite limitar la aparición del módulo únicamente a los elementos de menú seleccionados.

Opciones avanzadas

Desde las Opciones Avanzadas, podrás además

•elegir de entre diferentes estilos de plantilla, en el caso de que tu plantilla ofrezca esta posibilidad.

•añadir un sufijo de clase de módulo, que será añadido delante de las clases CSS usadas por el módulo. Esta funcionalidad es muy útil para aplicar estilos individualizados a los módulos.

•activar o desactivar el sistema de cacheo de Joomla, y establecer el tiempo que pasará antes de que el módulo sea "re-cacheado" cuando esté activo.

Módulos del núcleo

El paquete básico de Joomla! 1.7 contiene 23 tipos de módulos diferentes. A continuación tienes un listado de todos ordenados alfabéticamente, y acompañados de una pequeña descripción (las descripciones están tomadas en parte de la ayuda oficial de Joomla!, y los nombres de los menús se corresponden a los de la traducción al español acreditada):

•Ya hablamos del módulo de Artículos Archivados en el capítulo Estados, Papelera y Desbloqueos, y como recordarás sirve para mostrar una lista de meses, desde la que, pinchando en cada mes, accederemos a un listado de todos los artículos del archivo que fueron publicados en dicho mes.

•Categorías de Artículos muestra una lista de las categorías que hay dentro de una categoría padre específica.

•Artículos de la Categoría muestra un listado de artículos de una o más categorías.

•Artículos - Noticias de actualidad mostrará un número fijo de artículos de una o varias categorías. Puedes configurar el orden de dichos artículos, su cantidad, el enlace "leer más" y muchas otras cosas.

•El módulo Artículos - Artículos Relacionados muestra otros artículos que están relacionados con el que se está mostrando actualmente. Estas "relaciones" es establecen a través de las metapalabras clave.
Todas las palabras clave del artículo que está siendo visionado se comparan con las de todos los artículos publicados. Por ejemplo, pongamos que tienes un artículo titulado "Alimentación de loros", y otro titulado "Cría de Cacatúas Negras". Si incluyes la palabra clave "loro" en ambos artículos, el módulo Artículos relacionados mostrará en su lista "Alimentación de loros" cuando se esté visionando "Cría de Cacatúas negras", y viceversa.

•El módulo Anuncios muestra los anuncios activos, algo que como recordarás ya vimos en detalle en el capítulo Anuncios (banners)

•El módulo Ruta de Navegación (breadcrumbs) muestra, como su nombre indica, la ruta de navegación a través de los menús desde nuestra posición hasta la página de inicio. También hablamos ya de esto en el capítulo Navegación.

•HTML personalizado te permite insertar tu propio código HTML y mostrarlo en la posición de la plantilla que desees (siempre dentro de las disponibles, claro). En las Opciones básicas, este módulo dispone de una funcionalidad tremendamente útil: Preparar el contenido. Joomla! ofrece la posibilidad de aplicar funciones adicionales al contenido de los artículos, como por ejemplo el enmascaramiento de correo, y para ello dispone de un sistema de (plug-ins). Si activas la opción Preparar el contenido, el código HTML que introduzcas en el módulo será tratado como el contenido de cualquier artículo, pudiendo por tanto beneficiarse del uso de estos plug-ins.

•El módulo Canales electrónicos (newsfeeds) permite mostrar canales electrónicos de noticias. Ya lo vimos en el capítulo Newsfeeds.

•Pie de página tiene la finalidad de mostrar la información de copyright de Joomla!. No existe ningún problema legal si se desactiva, aunque por supuesto puedes activarlo y mostrar así tu apoyo al proyecto.

•El Selector de Idioma fue una novedad introducida con Joomla! 1.7 - Muestra una lista de los idiomas disponibles para el contenido para poder cambiar de uno a otro. Puedes leer más acerca de sus funcionalidades y su uso en el capítulo Sitios Web Multi-lenguaje.

•El módulo Últimas Novedades (latest news) muestra una lista de los artículos publicados más recientemente. Puedes filtrarlos por categoría y autor, así como mostrar únicamente los artículos destacados.

•El módulo Usuarios Recientes muestra los útlimos usuarios que se han registrado en tu sitio. Puedes configurarlo para que cada nombre sea un enlace al perfil de ese usuario, limitar la cantidad de usuarios mostrados o incluso elegir mostrar distintos tipos de información de usuario.

•El módulo Datos de acceso (login) muestra un pequeño formulario para introducir un nombre de usuario y una contraseña. También muestra un enlace para recuperar contraseñas perdidas. Si el registro de usuarios está habilitado en el sitio (Gestor de usuarios → Opciones), se mostrará un segundo enlace que llevará al formulario de alta de nuevos usuarios. También ofrece la opción de añadir textos descriptivos al formulario, redireccionar a páginas concretas a los usuarios cuando inicien o finalicen sesión e incluso para encriptar el formulario de acceso mediante SSL, si bien para esto último es necesario primero que el servidor web que aloja el sitio nos proporcione esta funcionalidad.

•El módulo Menú es básicamente un contenedor que muestra los elementos de un menú existente. Un menú puede estar formado por elementos "anidados", y gracias a este módulo puedes filtrar estos elementos dependiendo de los niveles de inicio y fin. Por ejemplo, puedes mostrar únicamente los elementos de los niveles segundo y tercero. También es posible elegir si, al situarnos en un elemento concreto, se mostrarán sus subniveles o no en este módulo.

•El módulo Los más populares muestra una lista de los artículos con el mayor número de visitas de entre los que están actualmente publicados. Puedes filtrar los artículos mostrados por categorías, o bien limitar el número de artículos mostrados.

•Imagen aleatoria muestra al azar una imagen de las existentes en el directorio elegido. Habitualmente, se usará el gestor multimedia para alamcenar estas imágenes. Puedes configurar el formato de archivo de la imagen, una URL a la que redirigir si se pincha en la imagen e incluso puedes ajustar el ancho y alto de todas las imágenes que se mostrarán en el módulo. Sin embargo, debes tener cuidado con esta última opción, ya que Joomla no crea una imagen escalada a partir de la original, sino que se limita a añadir los atributos de ancho y alto a la etiqueta img.

•El módulo Buscar muestra una caja de búsqueda. Puedes configurar el diseño de la caja, su posición y el texto del botón. Ya lo vimos en detalle en el capítulo Buscar.

•El módulo Estadísticas muestra información acerca del servidor junto a estadísticas de los usuarios del sitio, el número de artículos almacenados en la base de datos y el número de enlaces web disponibles en el componente Enlaces Web.

•El módulo Sindicación del sitio crea un canal de sindicación de artículos para la página en la que se muestra el módulo. Mostrará un icono, junto al que puede añadirse opcionalmente un texto. También se puede elegir el formato del canal (RSS 2.0, Atom 1.0).

•El módulo Enlaces web muestra enlaces de una de las categorías definifas en el componente de Enlaces Web.

•Quién está en línea muestra el número de usuarios anónimos (o sea, invitados) y de usuarios registrados (que han iniciado sesión) que están accediendo al sitio en ese momento concreto.

•El módulo URL embebida muestra una ventana tipo iFrame embebida dentro de una posición específica de la plantilla. Puedes configurar la URL externa de la página que se cargará en el iFrame, activar o desactivar las barras de scroll, definir el ancho y el alto de la ventana y asignar un "target name" al iFrame.

•

Advertisement

http://complusoft.es

Capítulo 16

Plug-Ins

Un plug-in (literalmente, "enchufable") añade funcionalidades adicionales específicas a un componente concreto. El término plug-in no es exclusivo de Joomla, y puedes encontrarlo en otros lugares. Por ejemplo, los navegadores web utilizan plug-ins para reproducir vídeos. Uno muy conocido es el Reproductor Flash de Adobe.

Un buen ejemplo de cómo funcionan los plug-ins en Joomla! es el componente de búsqueda. Cinco plug-ins trabajan conjuntamente para encotrar contenido en diferentes componentes.

En Joomla! existen ocho tipos de plug-ins: autentificación (authentication), contenido (content), editores-ext (editors-xtd), editores (editors), extensión (extension), búsqueda (search), sistema (system) y usuario (user). Indicamos entre paréntesis la donominación en inglés porque en el gestor de plug-ins es la que se utiliza independientemente del idioma; además, esos nombres coinciden con los de los subdirectorios del servidor en los que están localizados los plug-ins de cada tipo. Por ejemplo, los plugins de autentificación se encuentran en el subdirectorio plugins/authentication.

Al contrario que ocurría con los módulos, tal y como vimos en el capítulo Módulos [283], no es posible (ni necesario, dicho sea de paso) crear plugins para el área administrativa del sitio. Sin embargo, al igual que los módulos y que el resto de extensiones, los plugins se instalan también a través del Gestor de Extensiones.

Autentificación

En Joomla, la autentificación, o más correctamente en español, la acreditación, es el proceso de verificar si los credenciales de un usuario que trata de iniciar sesión en el sitio son correctos, esto es, se corresponden con los que proporcionó al registrarse. La autorización, que es el proceso que sigue a la acreditación, verifica que un usuario acreditado tiene permiso para hacer algo concreto en el sitio (acceder a un contenido, ejecutar cierta extensión...). Puedes acreditarte en un sitio Joomla! con tu nombre de usuario y tu contraseña y, una vez acreditado, tus autorizaciones en el sitio vendrán determinadas por el grupo o los grupos de permisos de los que tu usuario sea miembro (ver el capítulo Usuarios y Permisos).

Joomla! ofrece tres posibilidades para acreditarse en el sitio (ver la Figura 1), las tres a través de plug-ins. Debes tener cuidado a la hora de desactivarlos, pues si no dejas al menos uno activo perderás por completo el acceso al sitio.

Figura 1: Plugins de acreditación

Joomla!

Este plugin proporciona el método "estándar" de acreditación en Joomla!. Los usuarios deberán rellenar el formulario de acceso con su nombre de usuario y contraseña, y esta información será verificada contra la tabla de usuarios para conceder o no la acreditación en el sitio.

GMail

Si activas el plug-in GMail, los usuarios podrán iniciar sesión en tu sitio usando su dirección de Gmail y su contraseña. No es necesario que se hayan registrado en tu sitio previamente. Cuando inicien sesión con éxito por primera vez, el plug-in Joomla! creará una cuenta de usuario en la tabla de usuarios de la base de datos. La contraseña de Gmail será enctriptada antes de ser almacenada, por lo que las cuentas de tus usuarios no podrán ser hackeadas.

Este plug-in facilita el inicio de sesión de tus usaurios. Por desgracia, su activación no añade ningún aviso en el formulario de acceso, por lo que si quieres que tus usuarios sepan que pueden acceder con sus datos de Gmail tendrás que añadir una nota informativa tú mismo.

LDAP

El Lightweight Directory Access Protocol (LDAP)⁵¹ es un protocolo de aplicación para leer y editar datos de un servicio de directorio. Es usado en grandes compañías para gestionar el personal de los distintos departamentos, así como para mantener un directorio con los números de teléfono de los empleados.

dn: cn=John Doe,dc=example,dc=com

cn: John Doe

givenName: John

sn: Doe

telephoneNumber: +1 888 555 6789

telephoneNumber: +1 888 555 1232

mail: john@example.com

manager: cn=Barbara Doe,dc=example,dc=com

objectClass: inetOrgPerson

objectClass: organizationalPerson

objectClass: person

objectClass: top

Para poder usar este plug-in para que los usuarios se acrediten en tu sitio, necesitarás un Servidor LDAP (OpenLDAP), y tendrás que configurar el plug-in con los datos específicos de dicho servidor. Hay un excelente tutorial sobre LDAP en la documentación oficial de Joomla (en inglés, por desgracia):  LDAP from Scratch⁵².

Contenido

Además del plugin de contenido Joomla!, todos los demás plug-ins de contenido (Figura 2) están relacionados con el texto que insertas en un artículo. El módulo HTML Personalizado (ver el capítulo Módulos) también puede usar estos plugins si se habilita esta opción.

Figura 2: Plug-ins de contenido

Joomla

El plug-in Joomla cumple dos funciones:

1.Cuando tratas de eliminar una categoría, verifica si ésta está 'vacía'. Vacía significa que no tiene ningún artículo o subcategoría vinculado. Puedes desactivar esta característica en las Opciones Básicas.

2.Si se envía un nuevo artículo a través del frontend, el plug-in enviará un email a todos los usuarios que tengan activada la opción Recibir correos del sistema en su perfil (Gestor de Usuarios - Editar usuario). Esta funcionalidad también puede ser desactivada desde las Opciones Básicas del plug-in.

Cargar Módulos

Este plugin se encarga de cargar la salida HTML de todos los módulos asignados a una posición concreta de la plantilla dentro de un artículo. Todo lo que tienes que hacer para conseguirlo es escribir {loadposition posición-14} (cambiando "posición-14" por el nombre de la posición que quieres cargar) en el lugar exacto en el que quieres que se muestren los módulos dentro del artículo. Esta característica es especialmente útil para insertar anuncios tipo banner en tu contenido.

Enmascaramiento de Email

Este plug-in transforma en un enlace cualquier dirección de email que haya sido introducida en el contenido con el formato habitual nombre@ejemplo.com [308], y la enmascara mediante JavaScript. Esto te permite proteger las direcciones que publiques de los sistemas automatizados de recolección de direcciones de email usados por los spammers.

Remarcador de Código (GeSHi)

El plug-in GeSHi hace posible el Resaltado de Sintaxis, y crea un cuadro visualmente mucho más atractivo y fácil de leer cuando insertas el código a ser resaltado entre las etiquetas HTML <pre> </pre>:

<pre>

if ($number > 0)

{

echo $number;

}

else{

$number++;

}

</pre>

Salto de página

El plug-in Salto de página se encarga, como no podía ser de otra manera, de los saltos de página en los artículos. Al igual que el plug-in Imagen, es muy fácil de integrar en el contenido. Además de permitir saltos de página simples, también permite definir distintos encabezamientos y títulos de página.

Puedes establecer los saltos de página mediante el diálogo emergente que aparece al pinchar en el botón correspondiente del editor. Una vez que lo completes y lo valides, se insertará una simple línea de código HTML en tu artículo, que tendrá un aspecto similar a este:

<hr title="Título de Página" alt="Alias para la tabla de contenidos" class="system-pagebreak" />

Este plug-in debe activarse junto con el plug-in Editor-xtd - Salto de página.

Navegación entre páginas

Este plug-in se encarga de incluir los enlaces Siguiente y Anterior bajo los artículos.

Votar

Este plug-in añade la posibilidad de que los usuarios "voten" los artículos, asignándoles una puntuación de 1 a 5.

Editors-xtd

Los cuatro plugins editors-xtd generan los botones que aparecen en la parte inferior de la ventana de texto de los editores (Figura 3).

Figura 3: Plugins del tipo Editor-xtd

Artículo

Muestra un botón para enlazar el artículo que está siendo editado a otros artículos existentes. Tras hacer clic en el botón, aparecerá una ventana emergente, desde la que se podrá elegir el artículo al que queremos enlazar.

Imagen

Este plug-in muestra un botón para insertar imágenes en el artículo. Tras hacer clic sobre él, aparecerá una ventana emergente, desde la que se podrá elegir una imagen del directorio de imágenes o subir una nueva, y también configurar las propiedades de dicha imagen.

Salto de página

Muestra un botón que permitirá insertar saltos de página en un artículo. Una ventana emergente te permitirá configurar las opciones disponibles. Este plug-in debe ser activado conjuntamente con el plug-in Contenido - Salto de página.

Leer más

Cuando se activa, muestra un botón bajo el cuadro del editor que permite insertar fácilmente un enlace Leer más en un artículo.

Editores

El núcleo de Joomla! incluye "de serie" dos editores (Figura 4). En Configuración Global - Sitio puedes establecer cuál será el editor por defecto de tu sitio. Además, desde el Gestor de usuarios (Usuarios - Gestor de usuarios) puedes asignar un editor específico distinto para cada cuenta de usuario (esta elección tendrá preferencia sobre la global).

Figura 4: Plug-ins de Editor

CodeMirror

CodeMirror⁵³ es una librería JavaScript que puede ser usada para crear una interfaz de editor relativamente amigable para escribir código fuente - programas de ordenador, marcado HTML, etc. Este plugin debe ser activado si quieres tener la opción de poder usar el editor CodeMirror en el área de edición de los artículos. Puedes configurar las características del editor en las Opciones básicas.

Sin Editor

Activando este plugin tendrás la opción de elegir escribir en el área de edición de los artículos directamente en texto plano, sin editor alguno.

TinyMCE

TinyMCE⁵⁴ es un editor de texto WYSIWYG para HTML que funciona completamente en JavaScript. Al estar basado en JavaScript, es independiente de la plataforma y se ejecuta en el navegador web. Es el editor de Joomla! por defecto.

Extensión

Tipo de plug-in "extension" está relacionado con tareas concernientes a la gestión de extensiones Joomla!.

Joomla

Este plug-in gestiona la actualización de extensiones en el sitio web.

Buscar

Los plugins de búsqueda para Contenido, Enlaces web, Contactos, Categorías, y Canales electrónicos pueden ser activados cuando sea necesario. Entre todos, implementan la funcionalidad de búsqueda de, componente Buscar. Estos plug-ins deben ser activados si deseas obtener resultados de búsqueda de cada una de las respectivas secciones. Si quieres extender la función de búsqueda a otros componentes, debe instalarse el plugin correspondiente a dicho componente (Figura 5).

Figura 5: Plug-ins de búsqueda

Sistema

los plug-ins de sistema están prfundamente integrados en el framework de Joomla!, y habitualmente afectan al comportamiento de todo el sitio web (Figura 6).

Figura 6: Plug-ins de Sistema

Filtrar idiomas

Este plug-in filtra el contenido a mostrar dependiendo del idioma elegido. Sólo debe activarse cuando el módulo Selector de Idioma esté publicado.

Política P3P

El Platform for Privacy Preferences Project⁵⁵ (P3P - Proyecto Plataforma para Preferencias de Privacidad) es un protocolo que permite a los sitios web declarar el uso que pretenden dar a la información de usuario que recolectan. El plug-in de sistema Política P3P permite a Joomla! enviar una cadena personalizada de etiquetas de política P3P en la cabecera HTTP. Es necesario para que las sesiones de usuario funcionen correctamente en ciertos navegadores, como por ejemplo las versiones 6 y 7 de Internet Explorer.

Caché

Este módulo permite usar la caché de página. También permite elegir si se desea usar el navegador del cliente para cachear páginas.

Depurador

Este plug-in activa la función de depuración, que es muy útil para los programadores de extensiones. Puedes configurar distintos parámetros para determinar qué información deseas que se muestre.

Acceso

Este plug-in activa los archivos de registro del sistema.
Puedes determinar la localización del archivo de registro en Configuración Global - Sitema - Configuración del Sistema.
A continuación tienes un ejemplo del contenido de un archivo de este tipo (/logs/error.php):

#Version: 1.0

#Date: 2011-07-06 12:39:38

#Fields: date time level c-ip status comment

#Software: Joomla! 1.7.0 RC1 [ Ember ] 28-Jun-2011 23:00 GMT

2011-07-06 12:39:38 - 92.143.161.32 Joomla FAILURE: Empty password not allowed

Redirección

Permite hacer redirecciones conjuntamente con el componente de Redirecciones.

Recuérdeme

Este es un método para guardar los datos de acceso localmente en una cookie en el navegador del usuario. Cuando un usuario visite tu sitio de nuevo, sus datos de acceso se cargarán automáticamente en el formulario de acceso. El almacenamiento sólo estará activo si el usuario marca explícitamente la casilla de selección que hay bajo el formulario de acceso.

SEF

SEF es el acrónimo de Search Engine Friendly (amigable con el motor de búsqueda). Este plug-in crea URLs amigables con los motores de búsqueda para los elemenos de contenido del sitio. Puedes configurar algunas opciones que afectarán al tipode URLs que se crearán desde Configuración Global - Sitio - Configuración SEO.

Desconectar

El plug-in de desconexión del sistema permite a Joomla! redirigir al usuario a la página principal si decide cerrar su sesión mientras se encuentra en una página restringida únicamente a usaurios con sesión activa.

Usuario

Los plug-ins tipo user están relacionados con funciones específicas de los usuarios (Figura 7).

Figura 7: Plug-ins de Usuario

Perfil

El plug-in de perfil de usuario te da la oportunidad de pedir al usuario campos adicionales para su perfil, que pueden ser configurados desde las Opciones Básicas del propio plug-in. Puede combinarse con el plug-in creador de contactos para que se cree un elemento de contacto automáticamente para cada usuario (ver también el capítulo Usuarios y Permisos).

Creador de contactos

Un plug-in para crear automáticamente información de contacto para nuevos usuarios. Funciona conjuntamente con el plug-in Perfil (ver también el capítulo Usuarios y Permisos).

Joomla!

Este plug-in create el registro de un usuario en la base de datos la primera vez que se acredite con éxito en la página.

Advertisement

http://complusoft.es

Capítulo 17

Trabajando con plantillas

Para poder trabajar con plantillas no sólo necesitarás buenas habilidades de diseño, sino también conocimientos de HTML y CSS. Algunos navegadores, por desgracia, no son capaces de mostrar las últimas versiones de estas tecnologías, y este es el motivo de que versiones más antiguas sigan siendo aún bastante comunes.

El siguiente desafío es la eterna discusión entre desarrolladores y diseñadores acerca de 'cómo hacer las cosas de la manera correcta'. Los diseñadores dependen de los desarrolladores, dado que necesitan un marcado HTML con la posibilidad de añadir clases CSS. Los desarrolladores también dependen de los diseñadores, porque sin una plantilla bien diseñada, el mejor componente será difícil de usar.

¡ Joomla! incorpora soluciones para ambos problemas !

La plantilla Beez tiene una versión XHTML y HTML5, y tanto el marcado HTML como las clases CSS han sido creadas mediante los denominados Overrides (esta palabra significa literalmente "anular", "desautorizar" o "no hacer caso de", pero dado que en la abundante literatura en inglés se usa siempre, hemos preferido mantenerla). Hacer un override en Joomla significa que un diseñador puede "no hacer caso" de la salida HTML que el desarrollador de una extensión ha creado y sustituirlo por uno a su gusto, todo ello son necesidad de cambiar el código original.

Otro agente importante en la industria de las plantillas es 'Joe Webmaster'. Esta es una expresión inglesa que have referencia a un tipo de webmaster de "perfil bajo" muy común que la mayoría de las veces no querrá cambiar más que el gráfico del encabezado, los colores, el ancho y unas pocas opciones más.

De nuevo, Joomla! tiene la solución perfecta para hacer esto, y se llama Estilo de plantilla. Tener estilos de plantilla permite crear cualquier número de copias de uno existente, para poder configurarlos con un conjunto de opciones personalizadas, y asignarlos a todos o a un grupo concreto de elementos de menú. Vuelve atrás y echa un vistazo de nuevo  al capítulo Plantillas , y después vuelve aquí para seguir profundizando.

Crea tu propio estilo

En el capítulo acerca de sitios web multi-lenguaje, construimos un sitio basado en la plantilla Beez2. Ahora me gustaría crear mi propio estilo y cambiar unas cuantas opciones en Extensiones - Gestor de plantillas - Beez2 default. Los cambios serán los siguientes:

•Nombre del estilo: Beez2 - cocoate

•Logotipo: No quiero un logo, así que hago clic en el botón limpiar.

•Título del sitio: Joomla!

•Descripción del Sitio: cocoate - consultoría, formación, enseñanza

•Color de la plantilla: Nature

Guardo el estilo como una copia haciendo clic en el icono Guardar como copia (Figura 1).

Figura 1: Estilo de plantilla individual

Mi sitio web ahora tiene un aspecto totalmente distinto (Figura 2). Es posible crear estilos distintos para diferentes partes del sitio usando la caracterísitca de asignación de menú.

Figura 2: Sitio web con nuevo estilo sobre Beez2

Crear estilos diferentes con las opciones disponibles es la solución más sencilla, y a menudo la mejor y más rápida. Cuando aparece una actualización de Joomla!, tus estilos individuales seguirán estando disponibles en la nueva versión sin necesidad de hacer nada. ¡Aún estás trabajando con el paquete del núcleo de Joomla! 1.7 sin ninguna extensión adicional!

Advertisement

http://complusoft.es

Personalizando plantillas existentes

Si estás leyendo este capítulo, doy por hecho que ya has creado un estilo de plantilla y ya sabes cómo trabajar con todas las opciones disponibles para las plantillas, pero te gustaría tener aún más posibilidades. ¡Bienvenido al mundo del HTML y las CSS! También doy por hecho que conoces estas dos últimas abreviaturas. Si no es así, echa un vistazo a los artículos de Wikipedia Lenguaje de Marcado de Hipertexto (HTML)⁵⁶ y Hojas de Estilo en Cascada (CSS)⁵⁷.

En Joomla es posible editar todas las CSS usadas por la plantilla desde el gestor de plantillas. Ve a Extensiones - Gestor de Plantillas - Plantillas, y haz clic en el enlace beez-20 Detalles. Una vez ahí, serás capaz de realizar cambios en la plantilla beez2, así como acceder a todos los archivos modificables (Figura 3).

Figura 3: Beez2: Personalizar la plantilla

Los archivos CSS editables se encuentrasn en la carpeta /templates/[nombre_template]/css  dentro del sistema de archivos. Haz clic en el nombre enlazado del archivo CSS y se abrirá un formulario, en el que podrás editar el contenido del archivo mediante el editor de código CodeMirror. Aparte de los archivos CSS, puedes editar también los tres archivos principales de la plantilla:

•Página principal
/templates/[nombre_template]/index.php

•Página de error
Si ocurre un error al abrir un sitio Joomla!, se usa esta plantilla para la página de error mostrada.
/templates/[nombre_template]/error.php

•Vista de impresión
Esta plantilla es la responsable de la salida cuando accedes a la vista de impresión.
/templates/[nombre_template]/component.php

Los cambios realizados aquí afectan directamente a los archivos originales de la plantilla Beez2. Esto es algo que debes recordar cuando actualices Joomla (a que es muy posible que se pierdan con la actualización).

Hay otros archivos que puedes modificar para personalizar el aspecto de tu sitio, como los archivos empleados para realizar sobreescrituras del núcleo (core overrides), que están situados en /templates/[nombre_template]/html. Los archivos que realizan la sobreescritura no pueden ser editados directamente desde el gestor de plantillas.

Overrides (sobreescrituras)

Ya has creado un estilo, cambiado los archivos CSS y la página principal de tu plantilla, ¿y aún no estás contento con el resultado? :-) Entonces ha llegado el momento de hablar de los overrides o "sobreescrituras". En Joomla! existen dos tipos de sobreescrituras: las sobreescrituras de plantilla (template overrides) y las presentacions alternativas (alternative layouts).

NOTA del traductor: tras una interesante discusión entre muchos miembros activos de la comunidad de habla hispana de distintos países⁵⁸, llegamos al acuerdo de que la traducción más adecuada de la palabra "override" sería "sobreescritura". En Joomla, un "override" consiste que crear una copia del archivo original usado para generar la salida HTML, y modificarlo para obtener una nueva salida que sobreescriba a la "original", permitiendo de este modo crear vistas personalizadas sin necesidad de modificar los archivos originales.

Sobreescrituras de plantilla

Imaginemos que quieres cambiar el aspecto de la página de resultados de búsqueda. Un componente como el de búsqueda tiene una plantilla para su aspecto por defecto, que está almacenada en el archivo /components/com_search/views/search/tmpl/default.php. Este archivo hace que la página de resultados de búsqueda tenga el aspecto que tiene. Añade unas cuantas palabras al archivo, guárdalo y verás el resultado inmediatamente. Por ejemplo, añade:

<strong>I have changed something :-) </strong>

en la línea 13 y verás lo que ocurre (Figura 4).

Figura 4: Cambios en la salida HTML

El resultado es muy bueno para tu motivación, pues ha sido muy sencillo de conseguir y aparece en todas las páginas. Sin embargo, no es nada bueno para tu reputación, dado que has cambiado el código de un archivo del núcleo, de un archivo original. Tan pronto como actualices Joomla! a la próxima versión, ¡los cambios desaparecerán!

Una alternativa mejor sería usar sobreesccrituras de plantilla en cada plantilla. Copia el archivo que acabas de modificar desde el directorio de tu plantilla a /templates/[nombre_template]/html/com_search/search/default.php y elimina los cambios que realizaste en el original. Podrás comprobar que el resultado al cargar tu sitio web es el mismo, pero entre bastidores lo que ocurre es totalmente diferente, ya que ahora se  sobreescribe el archivo original .../default.php con los cambios deseados, sin cambiar el código del arhivo original... ¡bien hecho!

Este sistema fue introducido en el año 2007 con el lanzamiento de Joomla! 1.5, y aún funciona muy bien hoy en la nueva versión.

Presentaciones alternativas

En Joomla 1.7 se ha añadido una mejora a las sobreescrituras llamada presentaciones alternativas. Estoy seguro de que ya has visto el campo Presentación Alternativa en el formulario de edición de artículos, módulos y categorías (Figura 5).

Figura 5: Alternative layout in an article

¿Para qué necesitamos presentaciones alternativas? Imagina que eres el administrador o webmaster de un sitio que usa una plantilla que tiene 3 presentaciones alternativas para los artículos. A veces se tratará de un 'artículo normal', otras veces querrás que se vea como un producto, y otras veces como la página de un libro. Simplemente tienes que elegir que presentación quieres usar. Suena como una gran funcionalidad, y desde luego que lo es.

La técnica es la misma que con las sobreescrituras de plantilla. Debes crear una carpeta con el mismo nombre del componente o módulo, y una subcarpeta para la vista. Sin embargo, existen dos diferencias:

1.Obviamente, el nombre del archivo debe ser algo distinto de default.php, ya que ese nombre está reservado para las sobreescrituras de plantilla.

2.La presentación alternativa no es seleccionada automáticamente.

Además de la presentacióna lternativa, tipos de elementos de menú pueden ser añadidos a la presentación, y las opciones de ese artículo pueden ser controladas definiéndolas en un archivo xml con el mismo nombre que el del archivo de la presentación alternativa (Figura 6).

Figura 6: Tipos de elementos de menú adicionales

The creation of these files are no beginner's topic but I am sure third-party templates will soon make use of these new possibilities (Figura 7).

Figura 7: Presentaciones adicionales en un artículo

Crear una nueva plantilla usando Atomic

La plantilla Atomic que viene por defecto con Joomla es en realidad un esqueleto para que crees tus propias plantillas. Consta de los siguientes archivos:

•/htdocs/templates/atomic

•component.php - la vista de impresión de la plantilla

•error.php - la página de error de la plantilla

•favicon.ico - el icono del sitio web (Favicon⁵⁹)

•index.html - archivo de seguridad que muestra una página en blanco cuando el directorio es accedido directamente (debe configurarse el servidor web para que funcione, aunque normalmente lo está por defecto)

•index.php - la página principal de la plantilla

•templateDetails.xml - El archivo de configuración que contiene toda la información acerca de archivos, opciones y posiciones necesaria para mostrar la plantilla en el gestor de plantillas, y para poder crear un paquete instalable comprimido.

•template_preview.png - la imagen de previsualización de la plantilla, mostrada en el gestor de plantillas

•template_thumbnail.png - la imagen en miniatura, mostrada en el gestor de plantillas

•/htdocs/templates/atomic/css
este es el directorio para los archivos CSS

•/htdocs/templates/atomic/html
este es el directorio para los archivos de sobreescritura - Atomic viene equipado con algunas sobreescrituras para módulos del núcleo

•/htdocs/templates/atomic/images
el directorio para las imágenes

•/htdocs/templates/atomic/js
el directorio para archivos JavaScript

•/htdocs/templates/atomic/languages
el directorio para archivos de idioma - Atomic viene únicamente con los archivos base en inglés

El archivo principal de la plantilla: index.php

El nombre de este archivo debe ser index.php ya que Joomla! buscará en él comandos <jdoc> y PHP incrustados. Todo el marcado HTML ya viene implementado y comentado. Puedes cambiar el contenido del archivo de acuerdo con tus necesidades.

Para que te hagas una idea, hagamos un rápido tutorial:

En la línea 24, puedes elegir si quieres usar el framework CSS blueprint o no.

En las líneas 50, 56, 62 y otras puedes ver que la plantilla proporciona posiciones con nombres especiales (atomic-search, atomic-topmenu, ...). Si quieres usar esos nombres, debes asignar tus módulos a esas posiciones. Si quieres cambiar los nombres, debes hacerlo en el archivo templatedetails.xml.

En la línea 48 verás:

echo $this->baseurl ?>/templates/<?php echo $this->template ?>/js/template.js

Joomla! conoce los valores contenidos en baseurl, asó como el nombre de tu plantilla, y puedes acceder a esos valores cuando lo necesites.

En la línea 48 verás:

echo $app->getCfg('sitename');

Esta línea muestra el nombre de tu sitio.

En la línea 50 verás:

if($this->countModules('atomic-search')) ...

Cuenta la candidad de módulos en la posición atomic-search. Se usa para ajustar el diseño de la plantilla a diferentes situaciones.

En la línea 52 verás:

<jdoc:include type="modules" name="atomic-search" style="none" />

Esto es un comando <jdoc>, que sólo existe como un espacio de nombres en Joomla!. Se usa para insertar la salida HTML del tipo especificado en los atributos. En este caso, esto significa la salida de todos los módulos asignados a la posición de la plantilla atomic search. El atributo style se denomina module chrome, y puede tener estos valores:

•table - La salida se mostrará en una tabla.

•horz - La salida se mostrará horizontalmente en una celda de una tabla circundante.

•xhtml  - La salida irá en un elemento <div> válido XHTML.

•rounded - La salida será en un formato en el que se pueden mostrar esquinas redondeadas. La clase del elemento es renombrada de moduletable a module.

•none - sin formato.

•outline - el tipo de presentación para la previsualización de posiciones (?tp=1)

•Template specific style - Algunas plantillas, como Beez, tienen sus propios estilos. Echa un vistazo al capítulo Plantilla Beez.

Encontrarás una lista completa de estilos en la Documentación oficial de Joomla! (de momento sólo en inglés) - What is module chrome⁶⁰.

Otros tipos <jdoc> son:

<jdoc:include type="head" />

<jdoc:include type="message" />

<jdoc:include type="component" style="none" />

Toda página necesida un head (encabezado), a veces un message (mensaje) -después de guardar-  y, por supuesto, un component (componente). Sólo puede mostrarse un único componente por página. Este  componente puede hacer uso del module chrome también.

Los archivos de la plantilla para error y vista de impresión funcionan exactamente igual que el archivo main (principal) de la plantilla.

Directorio CSS

Encontrarás tres archivos en este directorio:

1.El archivo css/template.css con comandos CSS predefinidos comentados. Si no usas el framework blueprint, tendrás de eliminar los comentarios en algunos de ellos. Las líneas concretas están indicadas específicamente.

2.El archivo css/template_ie.css está vacío. Aquí puedes añadir estilos para Interner Explorer que sobreescribirán a los estilos genéricos.

3.El archivo css/template_rtl.css  también está vacío. Puedes añadir sobreescrituras de estilo para idiomas que se escriben de derecha a izquierda, como el árabe.

El framework Blueprint

Blueprint is es un framework CSS diseñado para reducir el tiempo de desarrollo y para asegurar compatibilidad cross-browser (con múltiples navegadores).

Algunas frases tomadas del archivo léeme:

¡Bienvenido a Blueprint! Este es un framework CSS framework designed to reducir el tiempo de desarrollo de su CSS. Le proporciona unos sólidos cimientos sobre los que construir sus propios comandos CSS. Aquí tiene algunas de las funcionalidades que BP le proporciona:

* Una rejilla fácilmente personalizable

* Tipografía por defecto sensible

* Una referencia tipográfica

* Reinicio de CSS de navegador perfeccionado

* Hola de estilo para imprimir

* Poderosos scripts para personalización

* ¡Ningún aumento de tamaño extra para sus archivos CSS!

Encontrarás demos y tutoriales en el sitio web del proyecto - http://www.blueprintcss.org/ .

Advertisement

http://complusoft.es

Capítulo 18

Angie Radtke

Plantilla Beez

Una plantilla contiene normalmente mucho más de lo que puedes ver a simple vista.

El término plantilla suele estar relacionado con la apariencia visual de un sitio web. Pero además del diseño, se distingue por laforma de su implementación técnica. Esta determina dónde se sitúa el contenido dentro del flujo de documentos, cuándo y dónde ciertos módulos pueden ser mostrados u ocultados, su se usaran páginas de error personalizadas y con qué marcado -versión HTML- debería usarse.

Algunos usuarios a buen seguro estarán familiarizados con la plantilla Beez de Joomla! 1.5. Tanto beez_20 como beez5 son visualmente muy diferentes en su diseño a la versión previa. Para este diseño utilicé un gris neutral para los componentes elementales de la plantilla, como el menú, para proporcionar una solución que armonice con muchos colores.

Incluso en aquel momento, quería desarrollar una plantilla que cumpliera con los estándares, fácilmente accesible y adaptable. Había elegido conscientemente el color morado, con la esperanza de que muchos desarrolladores tomarían el código, lo modificarían y lo harían de libre distribución. Tenía la esperanza de ver aparecer una gran variedad de nuevas plantillas gratuitas basadas en Beez. Desafortunadamente, esto no ocurrió.

Otro fallo fue probablmente que no comuniqué de manera suficientemente clara cual era mi intención con aquel diseño. La salida estaba estructurada de una manera que prácticamente cualquier diseño podría ser implementadode manera clara y sencilla, con sólo unas pequeñas modificaciones del CSS. Mantuve este principio en las nuevas versiones de Beez. Además, en beez5 hay un JavaScript más accesible y una pequeña porción de HTML5. Beez_20 no requiere sobreescrituras de plantilla (template overrides). En Joomla! por fin ya no se usan tablas en el diseño. La nueva salida basada en HTML sigue la estructura de la antigua plantilla Beez.

Los nombres de las clases CSS han sido renombrados y unificados para una mejor comprensión. Esto supone una ventaja tremenda para los diseñadores de plantillas. La salida HTML estándar de Joomla! es limpia y bien formada. No necesitas usar más sobreescrituras de plantilla para generar un código limpio y que cumpla con los estándares. Las capacidades técnicas de ambas plantillas Beez son prácticamente idénticas. Sólo se diferencian en su diseño gráfico. Además, la plantilla beez5 está diseñada para el uso de HTML5.

Las características principales

•Accesibilidad

•Posición configurable de la navegación

•Marcas de roles WAI-ARIA

•Representación automática de los módulos en pestañas accesibles

•Efecto 'fade in' y 'fade out' de módulos colapsables

•Efecto 'fade in' y 'fade out' de columnas colapsables

•En beez_ 20 puedes elegir entre dos formularios: natural o humano

•En beez 5 puede usarse HTML5

Accesibilidad General

Para la mayoría de la gente, Internet se ha convertido en la norma. En la red hay disponible información proveniente de todo el mundo y, quizá más importante, también pueden encontrarse ahí ofertas especiales de la tiendecita de la esquina, los horarios de apertura de las oficinas del Registro o la guía telefónica de tu localidad, todo ello accesible desde una pantalla en tu casa. Las molestas llamadas telefónicas o las visitas a la biblioteca ya no son necesarias, ahora uno simplemente busca en internet.
Pero no todo el mundo se beneficia de este desarrollo. Las personas con discapacidades físicas o mentales tienen dificultades para participar plenamente en la sociedad, incluso a pesar de que podrían beneficiarse tremendamente de las tecnologías de la comunicación. Pero a menudo no lo consiguen debido a barreras que dificultan su acceso a la información, o que incluso lo hacen imposible. Muchas de esas barreras pueden ser superadas, si lo que se ofrece es diseñado correctamente.

Los operadores de tiendas online o los bancos que porporcionan servicios de banca online deberían preocuparse de este potencial grupo de clientes, que no es tan pequeño como podría pensarse.

El diseño web accesible aspira a hacer el contenido y la interacción en Internet accesible para todos los grupos de usuarios y dispositivos, si ello es posible.

En torno al 8% de la población de Alemania tiene una limitación física que le hace difícil acceder a la información en Internet. Habitualmente, el término "accesibilidad" en diseño web es identificado con Internet para personas ciegas. Quiero hacer hincapié en que esto no es todo -de hecho, se trata del grupo más pequeño. A menudo me ha preguntado por qué esto es así. Probablmente la rezo sea que el monitor se ha convertido en el símbolo clásico para un ordenador, y alguien que no ve nada, no puede usarlo. En mi trabajo diario me he dado cuenta de que incluso la gente ciega se desempeña mucho mejor que la gente con otro tipo de discapacidades.

Las personas denominadas ciegas son aquellas cuya visión residual es únicamente un pequeño porcentaje del valor medio habitual. El número de personas ciegas en Alemania oscila entre 150000 y 200000. Algunos de ellos pueden únicamente descifrar textos mediante la configuración de tamaños de letra de ordenador y colores personalizados, mientras que otros necesitan información acústica o leer mediante el tacto usando un dispositivo Braille.

Significativamente mayor es la proporción de personas con discapacidad visual severa.

Alrededor de un cuarto de la población en edad de trabajar se queja de distintos grados de ametropía. Por tanto, el porcentaje es mucho mayor. Algunos de estos problemas pueden ser compensados bastante bien mediante el uso de gafas; otros sólo hasta un límite. Ciertas enfermedades oculares, como las cataratas o el glaucoma, pueden ser solucionadas o al menos mitigadas a través de la cirugía. Algunas, como la retinitis pigmentosa o a retinopatía diabética, llevan a un deterioro continuo de la visión, hasta terminar a menudo en una pérdida total de la misma. En el denominado "túnel de visión", el campo visual de las personas afectadas es extremadamente limitado -a veces tan pequeño como una moneda de 2 euros que es sostenida a un brazo de distancia de los ojos.

Alrededor del 10% de la población masculina sufre de diversas formas de ceguera cromática -lo que normalmente significa que algunos rojos y verdes no pueden ser distinguidos unos de otros. Ciegos a otros colores, ceguera completa a los colores o daltonismo (ceguera rojo-verde) son muy poco frecuentes entre las mujeres.

Otro grupo de usuarios potencial tiene problemas con la tecnología de entrada habitual - no todo el mundo puede usar un ratón o un teclado estándar.

Puede haber muchas razones para esto: brazos o dedos inmóviles o que se mueven espasmódicamente y son difíciles de controlar. Otros incluso carecen de brazos o de manos, o están paralizados de cuello para abajo tras recibir un golpe. Mientras un ser humano sea capaz de enviar una señal binaria controlada -el famoso 0 o 1- puede aprender a manejar un ordenador y sus funciones con el software apropiado.

Hay entre 60000 y 100000 personas en Alemania con una capacidad auditiva extremadamente limitada. Muchos miles de ellas tuvieron problemas para aprender su idioma, y apenas lo dominan de manera imperfecta (al nivel de entre 4 y 6 curso). Esto hace la necesidad de textos más inteligibles más clara.

Para comunicarse entre ellos, pero también para la recepción de contenido extranjero o sofisticado, ellos prefieren la lengua de signos alemana -que es un idioma en sí mismo, independiente del idioma hablado basado en un sistema de signos y gestos.

Atención

No sólo las personas con audición deficiente navegan por interner sin altavoces o con los altavoces apagados. No es suficiente, por ejemplo, dar sólo señales de aviso acústicas - siempre deben ir acompañadas de un mensaje visual claramente interpretable.

Mientras Internet más conquista todas las parcelas de la vida diaria, más disfunciones son visibles: conexiones lentas en el hotel, condiciones de luminosidad incontrolables en un tren en marcha, puestos de trabajo ruidosos.

Toda la gente se beneficia de los sitios web accesibles. No se trata de cumplir todas las reglas hasta su última consecuencia, tal y como se les exige a las instituciones de los gobiernos. Incluso los pasos más insignificantes en busca de la accesibilidad pueden mejorar considerablemente la usabilidad de un sitio web.
Debido a su gran penetración, Joomla! tiene la posibilidad de influenciar muchísimo. Con la plantilla estándar Beez ahora es relativamente fácil crear sitios web que sean accesibles y usables para la mayoría.

Como en Beez 1.5, todas estas cosas que son necesarias para el diseño de plantillas accesibles han sido implentadas en beez_20 y beez5. Las más importantes son:

•Separación del contenido y su presentación

•Estructura semánticamente lógica

•Enlaces ancla

•Navegabilidad desde el teclado

•Contrastes de colores suficientes

Separación de Contenido y Disposición

La primera y más importante regla pra los desarrolladores es la posibilidad de separar completamente el contenido y la disposición del mismo (su "diseño", cómo se distribuye en la pantalla):

•HTML limpio y puro para el contenido

•No usar tablas innecesarias en el diseño

•Formato exclusivamente con CSS

•Estructura semántica lógica

•Enlaces ancla

Linealizar el contenido y formatearlo usando únicamente CSS es una de las condiciones más importantes para una correcta accesibilidad.

Sólo entonces la tecnología asistencial tiene la opción de reciclar los contenidos como se quiera, mientras que la presentación visual puede ser completamente ignorada. La externalización de la presentación a hojas de estilos permite, por ejemplo, que los usuarios visualmente impedidos tenganla posibilidad de definir sus propias hojas de estilo en sus navegadores y adaptar las páginas para que encajen exactamente con sus necesidades. Una presentación lineal del contenido y una estructura semántica adecuada es particularmente importante para los usaurios de lectores de pantallas.

Los lectores de pantallas toman el contenido de un sitio de arriba a abajo, esto es, linealmente. El uso extensivo de tablas en el diseño obstruye la linealización.

Tras el término Web Semántica la mayoría de la gente probablemente alcanza a intuir sólo una parte de lo que implica. Tü mismo probablemente asociarás el término a lecciones de lengua, pero también juega un papel especial en la escritura de contenido web. Por ejemplo, los lectores de pantallas ofrecen a sus usuarios la posibilidad de saltar de encabezamiento en encabezamiento o de lista en lista, para que puedan hacerse una idea general rápida sobre el documento. Si un documento web no tiene encabezamientos, esta funcionalidad no estará disponible.

La estructura formal de un documento web debería corresponderse en gran medida con la estructura del contenido. Dependiendo del proyecto web, la elección de la jerarquía de encabezamientos adecuada puede resultar todo un reto.

Hoy día, este concepto puede encontrarse no sólo en las plantillas, sino en toda la salida estándar de Joomla!. Durante el desarrollo de Joomla! 1.6 este tema supuso uno de los ejes centrales del trabajo de desarrollo. Los motivos eran, además de conseguir una mejor usabilidad en tecnologías asistenciales, una optimización para motores de búsqueda y una mayor usabilidad en dispositivos móviles. El código bien estructurado no sólo ayuda a la gente con discapacidades a navegar mejor por un sitio web, sino que incluso Google se siente mucho mejor con un sitio tan bien estructurado.

Enlaces ancla

La presentación lineal del contenido tiene un gran inconveniente: puedes tener que desplazarte un trecho largo para poder llegar al contenido que buscas.
En la pantalla, un diseño de tres columnas permite que un buen número de secciones empiecen "arriba", y que el ojo pueda saltar directamente a ellas, allí donde, apoyado por ayudas visuales, sospeche que hay información interesante.

Como remedio aparece el concepto de ancla. Se trata, de hecho, de la contrapartida no visual del disño gráfico, y permite al usuario de dispositivos de reproducción lineal identificar la áreas de contenido clave al inicio de la página, y desde ahí inmediatamente poder saltar al área donde dicho usuario piense que se encuentras la información que le interesa.

De manera práctica, el uso de anclas supone configurar un menú adicional en la parte superior de cada página para su navegación interna. En la mayoría de los casos será útil esconder este menú en el disño gráfico. Es irritante para los usuarios que pueden ver hacer clic en un enlace y no percibir ningún resultado aparente, dado que el destino del enlace ya es visible en la pantalla.

En cualquier caso, el "menú de enlaces ancla" no debería ser demasiado lango, y estar construido de una manera muy bien pensada, ya que, debido a la propia linealización, extiende y complica la ruta de percepción. En general es recomendable ofrecer el contenido principal como el destino del primer salto, de modo que los visitantes habituales, que saben que el sitio maneja la navegación de una forma específica, tengan a mano el camino más corto hacia donde realmente quieren llegar.

Al menos aquí se hace patente que, particularmente en los sitios web con páginas de contenido más complejas, no basta con un diseño gráfico, sino también un diseño del contenido que aspire a organizar el contenido de tal manera que no contenga barreras innecesarias para los usuarios de clientes de linealización.

Ejemplo:

<ul class="skiplinks">

<li><a href="#main" class="u2">Skip to content</a></li>

<li><a href="#nav" class="u2">Jump to main navigation and login</a></li>

</ul>

La elección del color

La elección del color es, en el contexto de la accesibilidad, de particular importancia, ya que incluso la gente con discapacidad visual cromática debería ser capaz de usar tu sitio web por completo.

Si conviertes tu diseño a una escala de grises te harás una idea aproximada de lo que las personas con ceguera cromática pueden ver. Sin embargo, la percepción es muy personal, y depende de la gravedad del grado de ametropía. Muchas personas con ceguera cromática han aprendido a lo largo de sus vidas qué colores están representados por lo que ven, por el contexto. Saben, por ejemplo, que la hierba es verde, y pueden identificar por comparación otros tonos de verdes.

Mucho más extendido que la ceguera cromática total es el denominado daltonismo. Ocasionado por una anomalía genética, las personas que lo sufren son incapaces de distinguir los colores rojo y verde. Las mezclas de colores que contienen como componentes a estos dos son borrosas para ellas.

Contrastes

Los colores también juegan un papel importante en varios otros tipos de discapacidades visuales, no sólo debido al color en sí mismo, sino también por su contraste. Un contraste de colores significativo puede ser de gran ayuda en el uso de una página web.

Los colores de primer plano y de fondo entre los elementos de texto deberían formar un contraste distintivo, aunque no es posible seleccionar las configuraciones de color y contraste que satisfagan todos los requerimientos. El texto negro sobre un fondo blanco consigue el máximo contraste de color. Para evitar efectos de reflejo perturbadores, difuminar levemente el fondo puede ser de ayuda. Algunas personas con discapacidad visual necesitarán contrastes muy fuertes para separar unos elementos individuales del contenido de otros en una página. Para ellas, las combinaciones como un texto blanco sobre un fondo naranja brillante no son suficientes. Por contra, otros contrastes fuertes actúan como una radiación - el contenido es difícil de leer.

beez_20: Elección del diseño

En la plantilla Beez 2.0 puedes elegir entre el diseño "personal" y el "nature". La implementación de los archivos nature.css y personal.css a través de los parámetros de la plantilla, asó como la estructura de los archivos CSS utilizados, es la base de este método.

Figura 1: Choose the Style

Hay dos archivos más que manejan el esquema de colores. Los archivos position.css y layout.css son los encargados de el posicionamiento y espaciado generales.

Si más adelante te gustaría cambiar los colores de la plantilla, puedes somplemente modificar personal.css o nature.css según tus necesidades. El posicionamiento del contenido permanecerá igual, ya que está definido en otros archivos.

Todas las plantillas de estilo son arbitrariamente modificables, y pueden ser ajustadas por desarrolladores de plantillas para incluir plantillas adicionales.
En el diseño del código fuente he tenido en cuenta el poder ofrecer la mayor cantidad posible de variaciones mediante modificaciones de los archivos CSS. Lo que te estoy diciendo es que muy, muy calladamente, pero a su manera, las plantillas Beez son algo parecido a un framework de desarrollo de plantillas, y pueden salvarte muchos de los pasos necesarios a la hora de crear plantillas para Joomla!.

Posición de la Navegación

Por motivos estéticos o para mejorar la optimización para motores de búsqueda y la accesibilidad, puede ser necesario colocar la navegación antes o después del contenido. Ambas versiones de la plantilla Beez te permiten elegir dos opciones en el backend.

Figura 2: Seleccionar la posición de la navegación

La navegación está visual y semánticamente situada antes o después del contenido y se le da formato mediante CSS.

Si abres el archivo index.php de beez_20 o de la plantilla que ya has modificado, puedes encontrar sobre la línea 27 la siguiente asignación:

$navposition = $this->params->get('navposition');

La variable $navposition es asignada al valor seleccionado en el backend. La variable espera los valores left o center. Left representa la posición antes del contenido, center se usa para el posicionamiento tras el contenido.

El término center puede parece un poco confuso aquí. De acuerdo a la lógica sería mejor decir right. Pero dependiendo de cómo diseñes el CSS, puedes colocar la navegación en el centro de una vista de tres columnas.

JavaScript y WAI ARIA

WAI-ARIA (Web Accessibility Initiative - Accessible Rich Internet Applications) es una especificación técnica de la Web Accessibility Initiative (Iniciativa para la Accesibilidad Web - http://es.wikipedia.org/wiki/Web_Accessibility_Initiative) que facilita la participación de las personas con discapacidades en los cada vez más complejos e interactivas servicios web de hoy en día. Esta técnica es particularmente útil a la hora de diseñar presentaciones de contenido dinámico e interfaces de usuario. Esta técnica está basada en el uso de JavaScript, Ajax, HTML, y CSS.

Sobre todo las personas ciegas suelen perder la orientación cuando visitan un sitio en el que el contenido es mostrado o escondido de repente. La gente que puede ver es capaz de percibir estos cambios con los ojos,  mientras que la gente ciega sólo pueden entender estos cambios cuando el foco está situado en el elemento que aparece y desaparece.

Por foco nos referimos nada más que a situar el cursor en el lugar apropiado para hacer el contenido indicado accesible.

En HTML y XHTML no teníamos la oportunidad de centrar el foco en todos los elementos. Sólo los elementos de interacción como enlaces, botones o campos de entrada eran "enfocables". Esto ha cambiado con el uso de WAI ARIA y HTML5.

Los scripts usados en las plantillas Beez se basan en esta técnica para hacer las plantillas accesibles a personas discapacitadas

WAI ARIA - Landmark Roles: Primeros auxilios para la orientación

La intención de los "Landmark roles" (roles de marcado) es facilitar la orientación en un sitio web describiendo áreas de la página y su localización exacta dentro de la misma. La navegación tiene el rol navigation, la búsqueda tiene el rol search, el contenido principal tiene el rol main. La implementación es bastante simple. El elemento es extendido sólo al atributo apropiado del rol. Así, los usuarios de los modernos lectores de pantalla serán informados de dicho rol.

<div id="main" role="main">

Dentro de la plantilla Beez esto se hace automáticamente usando javascript (javascript/hide.js). La aprobación de la tecnología WAI-ARIA está aún pendiente, y por tanto implementarla directamente dentro del código fuente del sitio web provocaría que los tests de validación fallaran.

Un completo resumen de los landamark roles puede encontrarse en este enlace (en inglés) http://www.w3.org/TR/wai-aria/roles#landmark_roles.

Si usas la plantilla Beez como base para tu propia plantilla y modificas la estructura de las áreas de página, deberías adaptar el script consecuentemente.

Módulos y columnas colapsables

La activación y desactivación de ciertas áreas puede ser útil para el usuario, especialmente en páginas con mucho contenido. Ambas plantillas Beez proporcionan dos maneras de hacerlo diferentes. Primera, la columna con información adicional puede ser mostrada u ocultada, y por otro lado, los módulos pueden ser colapsados dejando únicamente visibles sus títulos.

Esconder la columna

Para probar esta funcionalidad debes colocar un módulo en la columna de información adicional. Las posiciones de módulos position-6, position-8 y position-3 están disponibles en esa zona. No importa si la navegación está situada antes o después del contenido, cuando esta columna se muestre aparecerá un enlace justo encima con el texto "close info" (cerrar información).

Figura 3: Ocultar Columna

Activando este enlace, la columna será ocultada, el texto del enlace cambiará a "open info" (abrir info) y la comunla será reactivada al hacer clic en él.

Esta funcionalidad es controlada por JavaScript. Todos los scripts mencionados están basados en el framework JavaScript Mootools que viene con Joomla, que disminuye la cantidad de trabajo que los diseñadores tenemos que hacer en muchos aspectos de la creación de una plantilla.

El archivo hide.js que hay dentro de la carpeta JavaScript de la plantilla es el responsable de mostrar y ocultar la columna.

En el index.php de la plantilla, alrededor de la línea 194 encontrarás el código HTML necesario.

<div id="close">

<a href="#" onclick="auf('right')">

<span id="bild">

<?php echo JText::_('TPL_BEEZ2_TEXTRIGHTCLOSE'); ?>

</span>

</a>

</div>

Los contenidos textuales de las variables JavaScript son controlados con las cadenas de idioma de Joomla.

Mostrar y ocultar Módulos

Uno de los mayores desafíos a la hora de diseñar un sitio web es la estructuración clara del contenido. Especialmente en la página principal, a menudo necesitarás colocar una amplia variedad de información sin que la página de la sensación de estar abarrotada.

Figure 4: beez-Slider

Ambas plantillas Beez ofrecen la posibilidad de presentar los módulos como "sliders" (contenido deslizante).

Aquí, la primera salida es el título del módulo. Haciendo clic en el signo más junto al título, el módulo se abre y sus contenidos serán visibles. Entonces, el signo más es reemplazado por un signo menos, y el módulo puede ser colapsado de nuevo. Incluso para este método he usado tecnología WAI ARIA.

Para usar los módulos de la manera que acabo de describir, deben ser integrados en la plantilla usando el comando

<jdoc:include type="modules" name="position-8" style="beezHide" headerLevel="3" state="0" />

Usando el código style = "beezHide" todos los módulos que son cargados en esta posición serán mostrados como sliders.

Puedes haberte dado cuenta de que el comando incluye el atributo "state", que controla si el módulo es expandido o colapsado.
Si eliges el valor 0, estará colapsado cuando se cargue por primera vez; si seleccionas el valor 1, estará abierto por defecto y podrá ser cerrado por el usuario.

Pestañas accesibles

La presentación del contenido en las denominadas Pestañas se está haciendo cada vez más popular. Ya hay módulos que extienden Joomla! con esta funcionalidad. Pero ninguno de los disponibles cumplían con los reqerimientos de accesibilidad.

Figura 5: Pestañas de Beez

The integrated solution in Beez is based on the WAI-ARIA techniques to ensure accessibility. To represent the modules in tabs, they are integrated as follows.

<jdoc:include type="modules" name="position-5" style="beezTabs" headerLevel="2" id="1" />

Todos los módulos situados en la posición position-5 son ordenados automáticamente en pestañas. Puedes controlar la salida HTML a través del atributo Style beezTabs. El uso del atributo id="3" es obligatorio. El motivo está en la estructura del JavaScript utilizado. Imagina que quieres integrar módulos en distintos sitios de tu plantilla. La función JavaScript requiere una información única acerca de dónde deberán ser abiertas y cerradas qué pestañas. Si esta información falta, el script no funcionará como se espera. Por favor usa en este punto sólo números para la id.

Ajustar el tamaño de letra

En la parte superior del diseño el usuario puede cambiar el tamaño de letra. La base técnica para esta función puede ser encontrada en el archivo JavaScript templates/your_name/JavaScript/md_stylechanger.js. Dentro de index.php incluyes un contenedor div con id="fontsize" .

Esta zona está inicialmente vacía y será rellenada dinámicamente con contenido usando JavaScript. Si tus visitantes tuvieran desactivado el JavaScript, esta función no estará disponible.

Algunos pueden estar preguntándose por qué es esta función aún necesaria, pues todos los navegadores tienen la funcionalidad de incrementar el tamaño de letra. Especialmente para la gente más mayor, esta técnica es a menudo de particular importancia, pues la mayoría de ellos tienen una visión más o menos deficiente, y habitualmente estas personas mayores saben muy poco acerca de la funcionalidad de los navegadores web y buscan opciones que estén más "a mano".

beez5: usa HTML5

La plantilla Beez5 apenas se diferencia de la beez_20, aparte de algunos aspectos de diseño. Las características que ofrecen son prácticamente idénticas.

La única diferencia: beez5 permite el uso de HTML5. Si echas un vistazo a los parámetros de la plantilla beez5, verás que puedes elegir entre salida de código HTML5 y XHTML. Esto está basado en las sobreescrituras de plantilla HTML5, que puedes encontrar en la carpeta HTML de la plantilla.

HTML5 proporciona una variedad de nuevas posibilidades, y traerá un buen número de cambios en el futuro, pero aún no es un estándar oficialmente aprobado (marzo de 2011). Muchas de las opciones ofrecidas no son actualmente aplicables de manera confiable, pero otras pueden ser utilizadas ya sin problema alguno.

Una parte muy importante, que ya funciona, son los nuevos elementos de estructuración. HTML4 y XHTML tenían un bajo peso semántico. Esto ha mejorado significativamente con HTML5.

Ahora tenemos elementos realmente prácticos para estructurar la página.

Con los elementos

•header

•footer

•aside

•nav

puedes estructurar una página maravillosa.

Elementos como

•section

•article

•hgroup

te ayudan a asignar más importancia al contenido real.

El código HTML5 en Beez5 usa sólo elementos que son confiables desde ya. Sólo Internet Explorer Versión 8 tiene algunos problemas... como siempre :).

En la parte superior de la página se inserta un script, que integra los elementos desconocidos en la estructura existente del documento.

<!--[if lt IE 9]>

<script type="text/JavaScript" src="<?php echo $this->baseurl ?>/ templates/beez5/JavaScript/html5.js"></script>

<![endif]-->

La base para la integración de HTML5 en Joomla! son las sobreescrituras de plantilla (template overrides) y la respuesta al lenguaje de marcado seleccionado a través del parámetro de la plantilla en el index.php. Dado que la plantilla permite el uso de dos lenguajes de marcado diferentes la aproximación a esta posibilidad debe hacerse desde el index.php.

Dicho claramente: la construcción del index.php es un poco complicada, porque dependiendo del lenguaje de marcado seleccionado se generará un código HTML distinto.
Empieza definiendo el tipo de documento.

Cuando abres el index.php de las plantillas Beez5 puedes ver inmediatamente lo que quiero decir.

<?php if(!$templateparams->get('html5', 0)): ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><?php else: ?>

<?php echo '<!DOCTYPE html>'; ?>

<?php endif; ?>

Este concepto es arrastrado a lo largo de toda la página y los elementos HTML5 pueden ser utilizados sólo si HTML5 fue seleccionado en el backend.

Si más tarde quieres construir tu propia plantilla en HTML5, sería mejor eliminar todas las consultas y elementos XHTML y sacar directamente el código HTML5.

Advertisement

http://complusoft.es

Capítulo 19

Optimización para motores de búsqueda

Todo propietario de sitio web quiere aparecer en la primera página de los resultados de búsqueda en buscadores como Google y en redes sociales como Facebook. Desafortunadamente no hay espacio en esa primera página para todos los sitios web y negocios del mundo, y los usuarios perderían rápidamente la confianza en estos buscadores si fuera posible aparecer en esa primera página simplemente optimizando el sitio web para los motores de búsqueda.

Alrededor de este tema, ha crecido una industria de consultores que ofrecen servicios de optimización para buscadores.

Yo veo dos posibilidades para optimizar un sitio web. La primera es ayudar a los motores de búsqueda usando 'estándares HTML' y diciendo la 'verdad' acerac de tu sitio, y la segunda es encontrar otras formas :-). Este capítulo cubre la primera posibilidad.

Search engine optimization (SEO) is the process of improving the visibility of a website or a web page in search engines via the "natural" or un-paid ("organic" or "algorithmic") search results. Wikipedia⁶¹

La Optimización para Motores de Búsqueda (SEO) es el proceso de mejorar la visibilidad de un sitio o página web en los motores de búsqueda a través de los resultados de búsqueda 'naturales' o 'no patrocinados' (resultados 'orgánicos' o 'algorítimicos')

A los usuarios de los buscadores les encanta hacer clic en los resultados naturales, no patrocinados en lugar de en los enlaces de pago. La gente trata siempre de evitar hacer clic en anuncios. Google, por ejemplo, usa un algoritmo de  PageRank⁶² para medir la 'importancia' de un sitio, que es añadido a su índice de búsqueda.

Siendo indexado

Los buscadores web utilizan los denominados web crawlers o arañas web⁶³. Una vez que visitan tu sitio, estas arañas siguen cualquier enlace de la página principal y añaden todas las páginas enlazadas al índice de búsqueda. Ten en cuenta que las arañas web no 'ven' el sitio. No son seres humanos, no usan un navegador para renderizar tu página, simplemente examinan tu código HTML. A veces el número de posibles URLs que encuentran es tan alto que se les hace difícil seguirlas todas. Esto ocurre habitualmente con las listas de elementos de contenido con posibilidad de ser filtradas, o con las páginas que tienen navegación. Infinitas combinaciones de parámetros son posibles, y solo unas pocas de ellas devolverán contenido único.

Una vez que tu sitio web ha sido completado, uno de los primeros pasos que debes dar es decir "hola" a los robots que elijas y darles más información acerca de tu sitio. Los buscadores web están muy interesados en saber más acerca de tu sitio, porque les hace la vida más fácil. Prueba las Google Webmaster Tools⁶⁴ y las Bing Webmaster Toolbox⁶⁵.

Ayuda a tu robot

El robot está visitando tu sitio en estos momentos. No puede ver, no puede leer. ¡Tienes que ayudarle! Existen muchos métodos para hacer esto:

•El robot busca palabras clave (las palabras que busca habitualmente la gente) en tu contenido, así que ten esto en cuenta cuando escribas un texto. A veces la gente escribe contenido basado en eventos recientes de la web para conseguir un mejor posicionamiento. No escribas la enésima entrada del blog acerca de las increíbles características del nuevo iPhone :-). Ten cuidado con no bajar la calidad de tu contenido a través del uso extensivo de palabras clave o con técnicas como la de introducir palabras clave ocultas del mismo color que el fondo. Los robots no son tontos; simplemente necesitan algo de ayuda.

•El robot también busca palabras clave en tus metaetiquetas. Deberías colocar tus palabras clave también ahí. Joomla! ofrece opciones para añadir palabras clave y otras metaetiquetas a tu contenido en prácticamente todos los formularios de edición.

•Una de las principales ideas del marcado HTML es el enlazado entre páginas. Usa este concepto para enlazar otras partes de tu sitio web desde tu propio contenido.

•Otros sitios web podrían enlazar al tuyo (backlinks). Mientras más sitios enlacen al tuyo, mejor. Enlaces directos a tu página principal son 'más importantes' que los enlaces a páginas en niveles inferiores (deep links - enlaces profundos). Eso sí, evita a toda costa los enlaces de pago y enlaces en comentarios de otros sitios que tengan una temática completamente distinta a la del tuyo.

•La normalización de URL⁶⁶ se utiliza para evitar la 'confusión de robot'.

•Joomla! proporciona muchos métodos en las opciones de configuración SEO (ver el capítulo Configuración de sitio y de los contenidos) y existe un campo Alias debajo de cada título en los formularios de edición para crear rutas individuales al contenido.

Es posible extender esta lista a tantos puntos como quieras. Los dos métodos que son técnicamente importantes son las metaetiquetas y las URLs. Joomla! cubre ambos bastante bien, y adicionalmente desde Joomla! 1.6 existe un componente de redirección que ayuda a evitar páginas 404 (no encontrado).

Mi visión personal

Si estás usando un CMS como Joomla! 1.7 y un template como Beez2, tu salida HTML es técnicamente perfecta.

Como ya dije en el capítulo Administrando el Contenido

Un gestor de contenidos es útil para gestionar información que proporciona valor para tu audiencia

Si creas información útil con valor para tu audiencia en tu sitio web, tenlo por seguro, todos los buscadores se darán cuenta.

Por cierto, ¿alguna vez has oído hablar de Nigritude Ultramarine⁶⁷?

Advertisement

http://complusoft.es

Capítulo 20

Sitios Web Multi-lenguaje

Vivo en Europa. La Unión Europea tiene 23 lenguas oficiales. Si vas a crear sitios web en una región como esta, debes pensar acerca del multilingüismo. Existen dos desafíos que hay que superar a la hora de crear sitios web multi-lenguaje: la traducción de las cadenas de texto estáticas de Joomla! y la traducción de los elementos de contenido. Mientras que lo primero puede resolverse de una manera sencilla, lo segundo supone un auténtico desafío.

El núcleo de Joomla! está disponible en más de 40 idiomas, y se espera que haya más en no mucho tiempo.

En este capítulo, veremos cómo construir un sitio web multi-lenguaje usando Joomla! 1.7.

Los paquetes de idioma de Joomla!

Puedes descargarte los paquetes de idioma desde Joomla Code⁶⁸ o desde el Directorio de Extensiones Joomla⁶⁹ e instalarlos usando el gestor de extensiones. Yo lo he hecho con los paquetes francés y alemán. Tras la instalación, encontrarás los idiomas instalados visitando Extensiones - Gestor de Idiomas en el backend (Figura 1).

Figura 1: Idiomas instalados

Configuración de idiomas

A día de hoy, sigue siendo necesario examinar la configuración de idiomas para ver cuáles tenemos publicados (Extensiones → Gestor de idiomas → Instalados) y asegurarnos de que los atributos del contenido son correctos (Figura 2). Echa un vistazo a Extensiones → Gestor de idiomas → Contenido. Si no hay ningún elemento de contenido para el idioma instalado, crea uno haciendo clic en el icono 'Nuevo'. Esto último es lo que tuve que hacer yo cuando instalé el paquete de idioma alemán.

Figura 2: Editar el idioma del contenido

El plug-in Filtrar Idioma

Para que Joomla! pueda distinguir entre diferentes idiomas, el plug-in 'Sistema - Filtrar Idioma' (Extensiones → Gestor de plugins) debe estar activado. Puedes configurar el idioma a mostrar a los visitantes, ya sea el idioma que usas por defecto en tu sitio o el que tiene configurado el visitante en su navegador, simplemente usando las alternativas disponibles en 'Opciones'. Otra opción de configuración es la de Cambio automático del idioma. Cuando está activada, el idioma del contenido será cambiado automáticamente al configurado como idioma del frontend.

Cada usuario puede configurar su idioma del frontend una vez que haya iniciado sesión en la parte pública del sitio. La mayoría de las veces, habrá un menú de usuario que, dependiendo de tus permisos de usuario específicos, te mostrará determinados elementos. En este menú de usuario, podrás encontrar el enlace Tu perfil. Haciendo clic en él podrás ver y editar la información de tu perfil. En el formulario de edición del perfil, bajo Configuración básica, los usuarios pueden elegir entre otras configuraciones el idioma que usarán en el forntend (Idioma del sitio - Figura 1). Puedes usar el idioma por defecto del sitio o cualquier otro de entre los disponibles. Dependiendo de esta configuración, el plug-in de filtrar idiomas te permitirá ver el sitio en el idioma correspondiente.

Figura 3: User profile - Basic Settings

El módulo selector de idioma

Activando el módulo Selector de idioma, tendrás la posibilidad de cambiar entre distintos idiomas en el frontend, sin importar si eres un visitante o un usuario que ha iniciado sesión. En la Configuración Básica del módulo puedes añadir texto y elegir si prefieres que los idiomas se muestren por su nombre o representados por el icono de su bandera. Estoy seguro de que los desarrolladores de plantillas proporcionarán posiciones en sus plantillas para este módulo en un futuro no muy lejano. En la plantilla Beez2 que trae el núcleo por defecto, la posición position-7 va muy bien con las banderas.

Figura 4: Selector de idioma

Elementos de contenido multilingües

Como ya he mencionado anteriormente, cada elemento de contenido, como por ejemplo un artículo, puede ser asignado a un idioma concreto. La dificultad reside en crear todos esos elementos de contenido para todos los idiomas objetivo (Figura 5). Puedes crear elementos de contenido en cualquier idioma pero, desafortunadamente, Joomla 1.7 aún no ofrece un flujo de trabajo para las traducciones, lo que significa que tendrás que prestar mucha atención al crear versiones en distintos idiomas para evitar cometer errores.

Figura 5: El campo Idioma

Un sitio web multilingüe

Mi sitio web de ejemplo consta de

•una página principal con artículos,

•un blog,

•una página del tipo 'Sobre Nosotros',

•un formulario de contacto.

Figura 6: Sitio web de ejemplo

Todos los elementos de contenido deben estar disponibles en diferentes idiomas (Figura 6).

Página principal

Creo unos cuantos artículos para cada idioma con el atributo destacado (ver capítulo: Un artículo típico) y un elemento de menú del tipo Página Principal para cada idioma. En la Configuración Básica, configuro el número de artículos y columnas que se mostrarán. Asigno el atributo Página de Inicio a cada uno de estos elementos haciendo clic en los iconos Inicio de cada uno de ellos (Figura 6). Cuando hagas clic en el enlace 'inicio' de la ruta de navegación, serás redirigido a una de las tres páginas principales, dependiendo del idioma seleccionado

Afterwards I create a menu per language and the corresponding menu module. I create a menu item for each language : (Home, Front Page, Accueil). These menu links have to be configurad as Home by clicking the Home icon (Figura 6, 7). If you see the flag beside the menu item, everything works fine, if not ... watch the screencast :) ⁷⁰

Figura 7: Una página de inicio para cada idioma

Un blog

En mi caso y tengo un blog en cocoate.com, de modo que uso el componente Canales Electrónicos para mostrar entradas de blog externas. Creo un canal electrónico para cada idioma, así como los elementos de menú correspondientes (ver el capítulo Canales electrónicos - newsfeeds).

Una página tipo 'Sobre Nosotros'

Creo una página del tipo 'Sobre Nosotros' para cada idioma, siguiendo los pasos que ya describimos en el capítulo Cómo crear una página 'Sobre Nosotros'.

Un formulario de contacto

Uso un único formulario de contacto para consultas generales. Sólo necesito un formulario de contacto, de manera que no es necesario asignarle un idioma. Sólo si los datos de contacto difieren de un idioma a otro (por ejemplo, distintas direcciones o direcciones de correo) sería necesario crear un formulario de contacto para cada idioma.

Formulario de acceso

En cada página será visible un formulario de acceso. He copiado el módulo de acceso asignado al idioma inglés dos veces, he configurado su asignación a los elementos de menú, cambiado su título y asignado el idioma correcto. Ahora es posible iniciar sesión y registrarse en mi sitio.

Menú de usuario

He usado el menú existente, que proporciona un enlace directo a tu perfil, así como otros para crear artículos y enlaces web directamente desde el frontend (Figura 8).

Figura 8: Edición desde el frontend

Como puedes ver, crear un sitio web multilingüe con el núcleo de Joomla! 1.7 es bastante simple.

Advertisement

http://complusoft.es

Capítulo 21

written by Jen Kramer

Crear un sitio Joomla! 1.7 desde cero

Primero, empieza con un plan

Existen dos tipos de desarrolladores de sitios web.

El primero es el típico. Un cliente dice,

Me gustaría tener un sitio web, y quieor que sea azul. ¿Cuánto me costará?

El desarrollador responde,

Si quieres que teng aun calendario, te costará $X, o también podría incluir un blog por sólo $Y.

Este tipo de desarrolladores son como...

Este tipo de desarrolladores son como "pulsa-botones". El cliente piede algo y, en lugar de aplicar al problema que el cliente quiere resolver un análisis basado en años de experiencia, el desarrollador simplemente monta un sitio de la manera que el cliente le pide.

El segundo tipo de desarrollador de sitios web tiene un futuro con clientes más grandes en él. Cuando se le plantea la misma pregunta que al anterior, este desarrollador dice,

Ya lo creo, podemos hacer su sitio en azul. ¿Podría hablarme acerca de su organización y osbre qué espera que el sitio web haga por ella?

Al preguntar acerca de la organización del cliente y de ls problemas que necesita solucionar, estarás construyendo una relación de confianza con tu cliente. Esto significa que terminar el sitio es el inicio de una relación con tu cliente que llevará a trabajos futuros, en vez de significar también la terminación de tu relación con él. Es mucho más fácil obtener trabajo continuado de clientes existentes que estar continuamente buscando clientes nuevos.

Asumiendo que quieres ser un desarrollador de sitios web del mucho más exitoso segundo tipo, aquí tienes algunos consejos para montar tu sitio Joomla 1.7 desde cero.

Objetivos de la organización, los usuarios y el sitio web

Inicia una discusión con el cliente acerca de su organización, si se trata de un negocio, una organización sin ánimo de lucro o un sitio personal. Puedes hacer alguna de las siguientes preguntas:

•¿Cuál es el objetivo de la organización? (Ejemplos: terminar con el hambre en el mundo, hacer dinero vendiendo productos de punto de cruz, proporcionar actualizaciones acerca de mis últimas actividades)

•¿Cuándo fue fundada la organización y a quién sirve?

•¿Por qué necesita la organización un sitio web?¿Existe ya uno o se trata de uno nuevo?

•Si ya existe uno, ¿merece la pena mantenerlo? ¿Qué añadirías al contenido del sitio antiguo? ¿Sigue siendo válido el mensaje del sitio antiguo o la organización ha cambiado desde el último diseño?

•¿Quién mantendrá el sitio? (Ejemplos: personal técnico, un webmaster de la empresa, la secretaria como añadida al resto de sus tareas, o bien la organización te enviará a ti sus actualizaciones para que tú te encargues)

Seguramente también querrás hacer muchas preguntas más, además de las anteriores, para comprender del todo a tu cliente y las respuestas a estas tres preguntas clave:

•¿Cuáles son los objetivos de la compañía/organización?

•¿Cuáles son los objetivos del sitio web, y cómo ayuda a conseguir los objetivos de la compañía/organización?

•¿Qué quieren obtener los visitantes del sitio web y cómo encaja eso con los objetivos de sitio web y de la compañía/organización?

Out of this discussion, you should identify some extension types you'll need to include on your site (for example: a calendar with an "upcoming events" module; a blog with comments and tagging; a shopping cart that interfaces with PayPal).

Deberías también desarrollar un mapa del sitio⁷¹ para la web. Este mapa es una enumeración detallada de todas las páginas de tu sitio web y de cómo se enlazan entre ellas. El término mapa del sitio (sitemap en inglés) también ser refiere a una página en tu sitio que contiene enlaces a todas y cada una de las páginas de tu sitio. El primer mapa que creas es una hoja de papel que contiene los nombres de todas las páginas y la estructura de navegación, y el segundo ya puede ser generado mediante una extensión como XMap⁷².

Para maś información acerca de cómo planear un sitio web, te recomiendo los siguientes recursos:

•The Elements of User Experience⁷³, por Jesse James Garrett

•"Website Strategy and Planning"⁷⁴, videotutorial en lyndo.com, por Jen Kramer

A continuación, considera la tecnología

Si estás leyendo este libro, y concretamente un capítulo llamado "Crear un sitio Joomla! 1.7 desde cero", doy por hecho que has elegido Joomla para crear este sitio.

Los clientes pueden querer saber por qué has elegido Joomla para el sitio, o por qué es la elección tecnológica adecuada para ellos. Algunos argumentos que utilizo al vender Joomla incluyen:

•JJoomla es uno de los tres mejores gestores de contenido de código abierto del mundo⁷⁵, y está respaldado por una increíble comunidad y un activo proceso de desarrollo. Aparecen nuevas versiones del software cada seis meses.

•Joomla es usado por más de 23.5 millones de sitios en todo el mundo⁷⁶, y ha sido la opción elegida por decenas de gobiernos de todo tipo (locales, regionales, nacionales, supranacionales) para crear más de 3000 sitios⁷⁷.

•Al ser Joomla tecnología de código abierto, el cliente no está atado a una única empresa de desarrollo de la manera que lo estaría con software propietario. Hay muchas empresas disponibles para ayudar con tu sitio.

•El interfaz de Joomla es fácil de usar y a los clientes les encanta tener la posibilidad de hacer cambios en su sitio sin necesidad de tener que depender de un desarrollador web.

Es muy poco probable que uses únicamente el núcleo de Joomla para construir tu sitio web. En la mayoría de los casos le añadirás algunas extensiones de terceros. Un sitio excelente en el que empezar a buscar estas extensiones es el Directorio de Extensiones de Joomla (JED)⁷⁸. Debatir acerca de qué extensiones Joomla son las "mejores" o "críticas" para cada sitio web es un tema de conversación que nunca parece pasar de moda entre los desarrolladores y diseñadores Joomla.

No amontones tu sitio Joomla con un número interminable de extensiones. Es mejor escoger un número mínimo de ellas, sólo las que más necesitas, y no sobrecargar el sitio con tecnología adicional innecesaria. Cada extensión debería servir a un propósito identificado durante el proceso de determinación de objetivos descrito un poco más arriba. Solo porque puedas instalar extensiones nuevas por el mero hecho de ser "molonas" o porque pienses que son interesantes de usar no significa necesariamente que deban ser usadas en el sitio, a menos que contribuyan a alcanzar un objetivo del mismo.

Now you're ready to build

Con un plan establecido y las extensiones seleccionadas, así como con tu mapa del sitio desarrollado, ya estás listo para montar tu sitio web Joomla.

1.Instala Joomla.

2.Crea categorías de acuerdo a tu planificación del contenido. Las categorías pueden ser obtenidas del mapa del sitio. Por ejemplo, si tienes una parte del sitio llamada "Sobre nosotros", puedes crear una categoría del mismo nombre. Páginas como Junta directiva, Historia, Misión y Visión o Administración podrían ser incluidas en esta categoría.

3.Introduce tu contenido en el sitio usando el Gestor de Artículos. Cada página planificada debería convertirse en un artículo. Recursos útiles para comprender este proceso incluyen:

3.1.Un artículo típico

3.2.Cómo crear una página 'Sobre Nosotros'

3.3.El gestor multimedia, que se usa para gestionar cualquier imagen o documento que quieras incluir en tus artículos.

4.Enlaza artículos a tus barras de navegación en el sitio web a través del Gestor de Menús

5.Instala una plantilla que haga que tu sitio se vea de la forma que quieres. Puedes hacer este paso antes, pero personalmente encuentro más fácil evaluar cómo queda una plantilla una vez que tengo algo de contenido disponible en el sitio.

6.Configura las extensiones requeridas por tu sitio. Por ejemplo, es muy probable que quieras incluir un formulario de contacto en tu sitio.

7.Prueba tu sitio web cuidadosamente. Asegúrate de que los enlaces de navegación enlazan a las páginas y funcionalidades correctas del sitio. Lee todo el contenido con cuidado en busca de fallos o faltas de ortografía. Compruena cómo se ve el sitio en muchos navegadores distintos (como Firefox, Safari, Chrome, e Internet Explorer) tanto en PC como en Mac. El sitio no tiene por qué mostrarse de manera idéntica en todos ellos, pero debe verse razonablamente bien.

8.Lanza tu sitio web. Puedes querer llevar a cabo un "lanzamiento suave" primero, lo que significa que publicarás el sitio sin hacer mucha publicidad o promoción de él. Esto te da algo de tiempo para probarlo en un entorno real, mientras arreglas cualquier problema que se vaya detectando en el proceso. Una vez que el sitio haya estado activo durante una semana o así, puedes hacer un "lanzamiento duro", con toda la publicidad que necesites.

Advertisement

http://complusoft.es

Capítulo 22

written by Andreas Kölln

Extensiones imprescindibles

Joomla! es un Gestor de Contenidos (CMS) con todas las extensiones necesarios en el paquete básico.

¿Cuál es la intención de este capítulo entonces? Si quieres trabajar con Joomla! de una forma segura, cómoda y eficiente y deseas publicar información de interés en tu sitio web, con módulos personalizados, plug-ins y componentes, notarás que existen algunas limitaciones respecto a la distribución básica de Joomla!. Aquí te entregaremos una visión de nuestra selección de útiles extensiones de terceros, para usarlas en el sitio o en la interfaz del administrador, con la finalidad de simplificar tu trabajo.

Hay más de 8000 extensiones disponibles para Joomla! (revisa joomla.org). Este capítulo puede ofrecer solo una pequeña selección, subjetiva desde el punto de vista del autor. El que "Debas tenerla" no significa que el sitio web no pueda ser desarrollado sin estas extensiones, sino más bien significa que tendrás la posibilidad de crear un sitio web con más facilidad y flexibilidad.

Para cada extensión encontrarás una breve explicación y la razón por la que podría ser útil y la razón del por qué considero que es la mejor opción.

Solo se revisaron extensiones que estuvieran preparadas para Joomla! 1.6 o 1.7. Esto garantiza la compatibilidad con la nueva versión de Joomla! CMS.

La rapidez del desarrollo y el limitado espacio de este capítulo significa que la lista podría ser incompleta y cada usuario, dependiendo de su experiencia, tendrá probablemente otra opinión respecto a nuestra lista.

La lista no incluye extensiones que son útiles solo para un área específica (Por ejemplo, para una tienda virtual). Esto debido a que no es la idea de un "Debes Tener" para TODOS los usuarios.

Las extensiones serán diferencias entre el sitio y la interfáz del administrador. A veces, realmente no es fácil asignar una extensión a una de esas categorías en lo específico, pero por lo general la explicación es ayuda suficiente. En ambas secciones el autor premia a la idea que presenta la mayor innovación.

La lista podría parecer un pequeña publicidad para la extensión nominada, pero es la única forma de que preste utilidad tanto para los usuarios como para los administradores.

El autor seguirá el concepto de Código Abierto de Joomla!, por esta razón hay solo extensiones con licencia GPL en la lista (En algunos casos hay extensiones con versiones Gratuitas y Pro).

Extensiones que "Debes Tener" en la interfáz del administrador

Los criterios usados para la selecciónde extensiones para la interfáz del administrador son:

•Velocidad en el proceso.

•Velocidad en el proceso.

•Mejoras en la seguridad,

•Y nuestra opinión!

Las ideas mas innovadores para la interfaz del administrados son 2 extensiones de Stephen Brandon de Nueva Zelanda.

Sus extensiones son llamadas MetaMod (Versiones gratis y PRO) y Chameleon (anteriormente MetaTemplate Pro).

Este es un pequeño resumen de las extensiones entregado directamente por el creador.

MetaMod

¿Has estado alguna vez en la situación de querer que algunos módulos aparezcan o desaparezcan en una página específica de tu sitio web basado en Joomla!, pero parece imposible de lograr?. Probablemente encuentres que solo puedes asignar módulos a páginas que están directamente asignadas a un item de menú.

MetaMod salta esa restriccón fundamental de Joomla! y te permite mostrar u ocultar módulos en absolutamente todas las páginas de tu sitio. Además, los módulos pueden ser controlados por una cantidad de factores adicionales:

•Fecha y Hora (Por Ejemplo, publicaciones recurrentes)

•Tipo de página (Por ejemplo, Página de artículos o Página con resultados de búsqueda)

•Geo Localización, ciudad, área, etc.

•Grupos de Usuarios o Usuarios Específicos.

•Navegador o Lenguaje del sitio

•Soporte a Virtuemart y soporte o detección de muchas de otras extensiones.

•Selección al azaar

•Y más!

MetaMod Pro es comercial con licencia GPL, a un precio razonable y respaldado por un foro de soporte. Si hay algo poco común que necesites hacer con módulos, pregunta en el foro. Con MetaMod Pro probablemente sea posible. Licencia: Comercial GPL

La versión gratuita de MetaMod funciona mayoritariamente como la versión Pro, pero tiene algunas pequeñas limitaciones en la forma como el módulo objetivo se muestra en la página. En la versión gratuita, el módulo objetivo es posicionado dentro de un módulo MetaMod sotendero, lo cual introduce código HTML adicional alrededor del módulo incluído. Esto podría llegar a generar algunas anomalías en lo que respecta a las CSS y podría causar que se muestren posiciones, aún cuando aparentemente no poseen módulos con contenido en ellas. Haciendo a un lado los posibles errores que se podrían generar en la distribución, MetaMod (Gratis) es usado en Miles de sitios web alrededor del mundo. Una buena manera de aprender a usar MetaMod es probándolo en diferentes situaciones.

Licencia: GPL

Chameleon (Inicialmente MetaTemplate)

Con Chameleon tu sitio web puede cambiar de template y menú ajustándose a diferentes situaciones (Figura 1).

Figura 1: Extensión Chameleon

Estudios nos indican que tenemos menos de 1 segundo para convencer a un visitante de quedarse en nuestro sitio web. Si tu visitante "Google" deportes y termina en tu sitio, entonces ese visitante está dispuesto a enganchar y consumir más de tu sitio si el template es relativo a deportes. ¿Si el visitante es francés?, Muéstrale publicidad en Francés. Una vez que hayas comenzado, no podrás dejar de dar gracias por las más y más formas creativas que tendrás para enganchar a tus visitantes. Chameleon facilita la selección de un template, página de inicio y selección de un item de menú para mostrar u ocultar, luego determina donde y cuando deben ser esos ajustes aplicados a tu sitio web.

•Chameleon para Mercadeo: Etiqueta tu sitios dependiendo de los resultados de búsqueda del visitante en Google - o por país o lenguaje. Realiza pruebas del tip A/B con diferentes templates y menús hasta encontrar el que mejor funcione.

•Chameleon en Comercio Electrónico: Simplifica la experiencia de compra del usuario cambiando a un templae simplificado para el checkout u otras áreas de tu sistema de comercio electrónico.

•Chameleon para Administradores: Haz tu sitio multi propósito; Insértalo en una pestaña de Facebook, cambia plantillas dependiendo de los diferentes dispositivos o escoge una plantilla diferente, menú y página de inicio para diferentes subdominios de tu sitio.

•Chameleon es único, con tecnología revolucionaria. No existe otro software disponible en el mercado que pueda ayudarte en el intento de ajustar las expectativas del consumidor con el instante en que aterrizan en tu sitio web basado en Joomla!

Licencia: Commercial GPL

http://metamodpro.com

Lista de otras extensiones sugeridas para la interfaz de administración

Tema: Backup

¿Por qué esto podría ser útil?:
Por razones de seguridad is necesario estar continuamente creando un respaldo de nuestro sitio. Con esta extensión puedes hacerlo más simple y profesional.

Extensión sugerida:  Akeeba Backup

El core de Akeeba Backup es el sucesor de el famoso componente JoomlaPack. Con Akeeba Backup tu puedes crear un respaldo de tu sitio que puede ser restaurado en cualquir servidor capaz de soportar Joomla!. El archivo contiene los ficheros, un imagen de la base de datos y un instalador similar en funcionalidad al instalador estandard de Joomla!. El respaldo y el proceso de restauración es provisto por AJAX para evitar timeout del servidor, aún cuando sean sitios enormes.

Para Joomla! 1.6, usando el mismo paquete de instalación, desde su versión 3.0 rc1, Akeeba Backup fue la primera extensión en adoptar completamente Joomla! 1.6. Nota: referente a la instalación en Joomla! 1.6RC1 o superior, debes usar Akeeba Backup versión 3.2.b1 o superior. Versiones anteriores no funcionarán debido a los cambios realizados en Joomla! 1.6 RC1.

Akeeba es en estos momentos la mejor opción de respaldo para Joomla!

http://www.akeebabackup.com/

Tema: SEO

¿Por qué esto podría ser útil?:
Para un mejor resultado en motores de búsqueda.

Extensión sugerida:  sh404SEF

sh404SEF reescribe la URL de Joomla! a un formato amigable (SEF URL o Reescritura de URL): misitio.com/index.php?option=com_content&Itemid=69&id=34... Se convierte en misitio.com/en/sh404SEF-and-url-rewriting/list-of-available-plugins.html.

Es un componente seguro, tanto para el título de la página como para el gestor de etiquetas de cada página. Funciona con o sin el fichero .htaccess, es compatible con Joom!Fish, posee un sistema de caché para aumentar la velocidad de carga utilizando muy pocas consultas a la base de datos.

Tiene soporte para los componentes más conocidos.

http://anything-digital.com/sh404sef/seo-analytics-and-security-for-joomla.html

Tema: Antispam

¿Por qué esto podría ser útil?:
Ahora, más que nunca, la protección contra el spam es absolutamente importante!

Extensión sugerida:  EasyCalcCheck PLUS

En los formularios del core de Joomla! y también en extensiones de terceros, no hay protección contra el spam.
Este agradable plugin agrega un problema aritmético, un campo oculto y una llave de tiempo.
Servicios anti-spam integrados: ReCaptcha, Akismet, Bot-Trap, Honeypot Project, Mollom, StopForumSpam, and BotScout

http://joomla-extensions.kubik-rubik.de/ecc-easycalccheck-plus

Tema: Editores de Contenido

¿Por qué esto podría ser útil?:
El editor de contanido de Joomla! tiene las funcionalidades necesarias. Un editor extra provee grandes funciones.

Extensión sugerida:  JCE Editor

Si tu quieres más productividad redactanto artículos, un editor extra podría ser muy útil.
Un muy conocido y configurable editor WYSIWYG basedo en Moxiecode TinyMCE, es el JCE Editor. Incluye avanzado manejo de  Imágenes/Multimedia, Gestión de Archivos y de links, soporte para plugin y una amigable interfaz de administración para la configuración del editor.

http://www.joomlackeditor.com/

Tema: Posicionamiento flexible de módulos, artículos y componentes

¿Por qué esto podría ser útil?:
Hay 2 buenos plugins de Peter von Westen y uno de Mike Reumer, los cuales he agregado a esta lista

Extensión sugerida: 

•Modules Anywhere,

•Articles Anywhere,

•Plugin Include Component

Modules Anywhere

Con este plugin podrás posicionar módulos en cualquier lugar en el que puedas agregar texto. Con Modules Anywhere tu puedes incluir un único módulo o posiciones completas de módulos en cualquier parte de tu sitio, incluyendo dentro de componentes de terceros y aún más, dentro de otros módulos.

Modules Anywhere es muy flexible, funciona en cualquier lugar, no solo en artículos, incluso funciona en módulos. Aún más, puedes cargar tanto un módulo único como una completa posición de módulos.

http://www.nonumber.nl/modulesanywhere

Articles Anywhere

Con este plugin tu puedes posicionar artículos en cualquier lugar en el que puedas agregar texto.
Articles Anywhere es un plugin que te permite insertar artículos en cualquier lugar de tu sitio web. De esa forma, puedes incluir artículos dentro de módulos o en otros componentes o donde quieras.
Puedes posicionar artículos usando la sintaxis:

•Usando el título del artículo: {article Some article}...{/article}

•Usando el álias del artículo: {article some-article}...{/article}

•Usando el ID del artículo: {article 123}...{/article}

Utilizando esas etiquetas puedes posicionar artículos utilizando diferentes datos/detalles.

http://www.nonumber.nl/articlesanywhere

Plugin Include Component

Este plugin es para incluir un componente en un artículo sin utilizar un iframe. El links funcionará como en una página normal, será utilizado además el estilo del sitio y también el estilo del componente.

La sintaxis es {component url=''}

http://joomlacode.org/gf/project/include_comp/

Tema: Integrar el entorno de trabajo javascript

¿Por qué esto podría ser necesario?:
El entorno de trabajo es muy potente y expande las potencialidades de Joomla! de varias formas.

Extensión sugerida: Jquery++ Integrator

Este plugin brinda jQuery, jQuery UI y herramientas jQuery a tu sitio. Lo consigue cargando las librerías des ambos, tanto desde Content Delivery Networks (CDNs) y copias locales, permite activar el modo jQuery.noColflict() si es necesario. También incluye una de las plantillas jQuery UI: uiLightness (además puedes descargar y usar cualquier otra plantilla).

http://tushev.org/products/jqueryintegrator

Tema: Integración de scripts

¿Por qué esto podría ser necesario?:
Con este plugin puedes utilizar diferentes scripts dentro de Joomla!.

Extensión sugerida: Embed Any Script

Incluye scripts JS, VB en tu sitio web facilmente.

Con este plugin podrás insertar una lista de scripts en cada página del sitio web. Así mismo el plugin permite insertar scripts solo en páginas específicas. Esas etiquetas pueden estar no solo en artículos, sino también en módulos, etc. - En cualquier parte del html.

http://tushev.org/

Tema: Control de la Administración

¿Por qué esto podría ser necesario?:
Mejoras sustanciales al panel o interfaz del administrador

Extensión sugerida: KC Admin Quickicons

El módulo para la administración KC Admin QuickIcons permite al administrador agregar hasta 10 íconos con enlaces de acceso rápido a diferentes áreas del panel de control de la  administración de Joomla!. Cada ícono tiene una etiqueta de texto, un enlace y puede ser usado un ícono de los templates khepri o bluestork o tus propios íconos personalizados (48px x 48px).

http://www.keashly.net/administration/kc-admin-quickicon

Tema: Gestión de Archivos

¿Por qué esto podría ser necesario?:
Acelera y mejora la estructura en la gestión de archivos. 

Extensión sugerida: eXtplorer

eXtplorer es un componente de gestión de archivos, basado en la web, para todas las necesidades. Tiene una interfaz del tipo "aplicación de escritorio" que permite hacer drag&drop (arrastrar y soltar), una grilla y un árbol de directorios, y hace un uso intensivo de la biblioteca de ExtJS Javascript.
Puede ser usado para acceder y modificar ficheros y directorios en tu servidor vía FTP o para acceder directamente a los mismos.

http://extplorer.sourceforge.net/

Tema: Ayuda a la Administración

¿Por qué esto podría ser necesario?:
TEste simple plugin prevendrá la expiración de la sesión, lo que evitará la pérdida, por ejemplo, de textos ingresados.

Extensión sugerida: Admin Forever

No terminará nunca tu sesión de administración, a menos que así lo desees.

http://edo.webmaster.am/projects

Tema: Compresión

¿Por qué esto podría ser necesario?:

Comprime archivos Javascripts y CSS a uno solo minimizando los requerimientos http.

Extensión sugerida: JCH Optimize

Los ficheros pueden ser minimizados y gzipped para reducir el ancho de banda y para optimizar el tiempo de carga. Usualmente, luego de que el plugin es configurado con los ajustes óptimos para tu sitio web, la mejora que genera en la velocidad de carga del sitio web es de 6 -10 puntos.

http://jch-optimize.sourceforge.net/

Tema: Manejo de la Caché

¿Por qué esto podría ser necesario?:
El almacenamiento inteligente en la caché hace más rápido el acceso a las páginas

Extensión sugerida: JOT Cache

JotCache es una solución avanzada para el almacenamiento en la caché del framework Joomla! 1.6.
JotCache está compuesto por el Plugin JotCache y el componente JotCache.

El plugin JotCache es un reemplazo mejorado del plugin standard System-Cache, pero con muchas mejoras incluídas.

http://www.kanich.net/radio/site/

Extensiones que "Debes Tener" en el sitio

Las extensiones para el sirio han sido seleccionadas considerando las funciones básicas mas importantes, que mejoran el acceso y las opciones del visitante a un sitio web y que no son provistas en el paquete básico de Joomla!. Algunos componente, módulos y plugins ciertamente no son indispoensable, pero en estos momentos, por ejemplo, hay sitios web con espectaculares slideshow en la página principal.

Para el sitio, el autor otorga un premio a una pequeña extensión, la cual muestra imágenes/íconos (con enlaces) en cada esquina del sitio (Figura 2).

Figura 2: Optimized Campaign extension

Esta extensión tiene el nombre de Optimized Campaign y proviene de o-sense
En estos tiempos de cambios radicales y problemas globales, otorga al propietario del sitio la posibilidad de expresar su soporte a un importante proyecto por ejemplo o su oposición a una determinada ley politica o simplemente ofrecer un descuento de algún producto en su sitio. Esto otorga a cada sitio web un toque personal Una idea de lo que el desarrollador quiso implementar, lo podemos ver desde el sitio web de su proyecto (tc4j.com).
Este módulo permitirá pooner una imágen en cada una de las 4 esquinas de tu sitio web y podrá ser o estático (Se mantendrá en la misma posición aunque la página se desplace) o deslizable (La imagen irá avanzando a medida que la página se vaya deslizando).

Esta extensión es muy útil para campañas, soporte en línea (chat), una imágen de "Síguenos!", etc.

http://www.o-sense.com/

Topic: Contacto

¿Por qué esto podría ser necesario?:
El componente contacto de Joomla! es demasiado simple y de opciones muy limitadas.

Extensión sugerida: Fox Contact form

Un formulario de contacto desarrollado para Joomla! 1.6+ de muy fácil y rápida puesta en marcha.
Tableless y salidas basadas en css simplifican la integración con tu sitio web.

•Algunas características interesantes:

•Múltiples receptores

•Sistema Anti Spam

•Sitema Captcha

•Multi-idioma

Y más...

http://www.fox.ra.it/joomla-extensions/fox-contact-form.html

Tema: Búsquedas

¿Por qué esto podría ser necesario?:
Tus visitantes pueden detectar rápidamente palabras claves disponibles en el sitio web.

Extensión sugerida:  RokAjaxsearch

Este potente módulo otorga una fatnástica funcionalidad de búsqueda a Joomla! a través del uso de la potente y versátil librería javascript, Mootools, así como también una completa integración con el buscador Google (Figura 3).

Figura 3: RokAjaxsearch extension

http://www.rockettheme.com/extensions-joomla/rokajaxsearch

Tema: Presentación de diapositivas (Slideshow)

¿Por qué esto odría ser útil?:
Casi todos los sitios web modernos tienen una presentación con diapositivas en su página principal.
Esto ayuda bastante a darle a los visitantes una bueno impresión respecto a la imagen de tu sitio.

Extensión sugerida:

•Image Show GK4

•Módulo LOF Articles Slideshow

Image Show GK4

Con el móduo Image Show GK4 module, podrás crear una presentación con diapositivas que incluya varias imágenes y fragmentos de artículos o textos definidos por tí mismo.

Gracias al sistema de gestión de transición integrado al módulo, hace de la puesta en marcha algo intuitivo, rápido y fácil. Con el numevo método de creación de estilos en los módulos, puedes facilmente cambiar de un estilo a otro dependiendo de la plantilla.

Además, gracias al re-diseñado panel administrativo, te permite gestionar slides sin necesidad de componentes adicionales.

http://tools.gavick.com

LOF Articles Slideshow Module

Este módulo reculta muy atractivo a la hora de mostrar artículos destacados dentro de una presentación con diapositivas (Slideshow). El módulo se posiciona, usualmente, en la parte superior del contenido principal. Posee muchas animaciones y es muy fácil de gestionar vía parámetros del módulo, puedes gestionarlo practicamente como desees, impresionando gratamente a tus clientes.

http://landofcoder.com/joomla/f33/lof-articlesslideshow-module

Tema: Reproductor de Video

¿Por qué esto podría ser útil?:
Con las nuevas cámaras, es fácil y además económico generar tus propios videos y ponerlos en tu sitio web.

Extensión sugerida: JPlayer

JPlayer es un simple plugin para reproducir en flash.optimizado para Joomla! y basado en el reproductor "JW Player". Este plugin es un fork de AllVideos Plugin (de JoomlaWorks). JPlayer simplificó el código quitando las funciones innecesarias, pero mejorándolo a su vez con muchas características útiles.
El plugin es fácil de usar, ofrece muchos parámetros personalizables, reproduce videos con subtítulos y mucho mas.

http://vault.futurama.sk/joomla/

Topic: Galerías

¿Por qué esto podría ser útil?:
Por ser una manera simple de gestionar tu propioo albúm de fotos

Extensión sugerida:

•Phoca Gallery,

•Simple Image Gallery (SIGE)

Phoca Gallery

Phoca Gallery es un componente para Joomla! 1.6 que ofrece una galería de imágenes con presentación de diapositivas (slideshow).

Con muchos añadidos (add-ons), cumple con practicamente cualquier requerimiento.

http://www.phoca.cz/phocagallery/

Simple Image Gallery (SIGE)

SIGE (Simple Image Gallery Extended) es un potente plugin para galerías en contenidos para Joomla! 1.6. Ofrece numerosas alternativas para presentar imágenes de forma fácil y rápida en artículos. La característica especial este plugin es que puedes controlar cualquier parámetro desde la sintaxis.

http://joomla-extensions.kubik-rubik.de/sige-simple-image-gallery-extended

Tema: Integración con Facebook

¿Por qué esto podría ser útil?:
Facebook es, en estos momentos, una plataforma que "debes tener" para aumentar la popularidad de tu sitio web.

Extensión Sugerida: Facebook Link Content Image

Lo que hace es agregar en la cabecera de cada página, links absolutos a imagenes encontradas en los artículos. Esto es muy útil al momento de compartir los contenidos en los muros de facebook, pues reconocerá de inmediato las imágenes de los contenidos. Compatible con Open Graph. El Plugin funciona solo para componentes relacionados con los Content Plugins, por ejemplo, Artículos de Joomla!, Blog de secciones o categorías, pagina principal, destacados.
Atención, funciona solo en URLs del tipo http

http://www.perfect-web.pl/download/joomla/plugins

Tema: Marcadores sociales

¿Por qué esto podría ser útil?:
Porque es un puente entre Joomla! y las redes sociales y el mercadeo social.

Extensión sugerida: Nice Social Bookmark

Este módulo muestra íconos de los 12 sitios sociales (redes sociales) mas conocidos (delicious, digg, facebook, google, linkedin, mixx, myspace, newsvine, reddit, stumbleupon, technorati, twitter y rss feed). Posee íconos de 4 tamaños diferentes para escoger (24,32,48,64) y 6 diferentes colecciones de íconos (aquatic, orange round, white round, logorunner, glass y iPhone)

http://salamander-studios.com/

Tema: Tweet

¿Por qué esto podría ser útil?:
Más y más gente está ingresando a twitter para informar a otros rápidamente acerca de sus novedades.

Extensión sugerida: Tweet Display 1901

Tweet Display 1901 es un módulo muy simple que mostrará automáticamente tu línea de tiempo de twitter en un atractivo widget para tu sitio.

http://a.1901webdesign.com/

Tema: Menú

¿Por qué esto podría ser útil?:
Porque te permitirá actualizar tu sitio y hacerlo más accecible a través de un sistema de navegación avanzado.

Extensión sugerida: Art Wijmo Menu

Art Wijmo Menu es un menú adaptable y gratuito, que posee una distribución horizontal y vertical, además de múltipleas plantillas.

http://www.artetics.com/

A good alternative module:  Maxi Menu CK

Tema: Sitemap

¿Por qué esto podría ser útil?:
Por un mapa de tu sitio web es bueno en ambos casos, para visitantes y motores de búsqueda.

Extensión sugerida: XMap

Xmap es un componente generador de un mapa de tu sitio (sitemap) para Joomla!, que te permitirá crear un mapa de tu sitio usando la estructura de tus menúes.
Existe una amplia variedad de plugins disponibles para este, uno de los componentes más populares.

http://joomla.vargas.co.cr/

Tema: Contador de visitas

¿Por qué esto podría ser útil?:
Esto mostrará a tus visitantes la popularidad de tu sitio web.

Extensión sugerida:  VCNT

Es un pequeño y veloz módulo contador de visitas para Joomla! 1.6

Características:

•

•Muestra estadísticas para Hoy - Ayer - Semana - Mes y todas.

•Ajuste de duración de sesión

•Contador preestablecido

•Limpieza automática de la base de datos

•Vista horizontal

•Excluye robots

•Excluye direcciones IP

•Validación XHTML 1.1 and CSS

•MVC

Novedad: Concurso - Puede determinar un ganador pasado un cierto número de visitantes

http://joomla-extensions.kubik-rubik.de/vcnt-visitorcounter

Tema: Tipografía

¿Por qué esto puede ser útil?:
Porque otorga de manera simple y fácil mejoras gráficas a tus artículos

Extensión sugerida: JB Type

JB Type es un plugin de estilos y tipografías para tus contenidos. A través del uso de sintaxis Joomla! muy simples puedes crear incríbles tipografías para tu sitio web, sin necesidad de tener conocimientos de html. Lo que hace el plugin es simplemente renderizar los estilos predefinidos en tus contenidos. Ahora también viene con un plugin para el JCE, lo que te permitirá renderizar tus estilos del JB Type plugin directamente desde la ventana del editor de texto.

http://www.joomlabamboo.com/joomla-extensions/jb-type-joomla-typography-plugin

Tema: Favicon

¿Por qué esto puede ser útil?:
Mejora visual a la dirección de tu sitio web. 

Extensión sugerida: Phoca Favicon

Un componente muy simple que genera un favicon en tu sitio web basado en Joomla! . Puedes cambiar el favicon cada vez que lo desees..

http://www.phoca.cz/phocafavicon/

Advertisement

http://complusoft.es

Capítulo 23

Actualizar desde versiones anteriores

El proceso de actualización es tan sencillo como puede verse en esta estupenda infografía creada por Kyle Ledbetter (Figura 1).

Figura 1: Información sobre acualización a Joomla! 1.7 (creada por Kyle Ledbetter⁷⁹)

Actualizar desde Joomla! 1.6.5

Bueno, esta es fácil.

Dirígete a Extensiones → Gestor de Extensiones → Actualizar

haz clic en el botón y... ¡listo!

Es el momento de relajarse, hacerse un café y pensar:

Bueno, fue una decisión acertada empezar aquel nuevo proyecto con Joomla! 1.6

Atención: Muchas cadenas de texto han cambiado en los archivos de idioma. La actualización con un solo clic no incluye los paquetes de idioma (excepto el inglés, que viene por defecto). Si tienes instalado algún otro idioma, es necesario que lo actualices, volviendo a instalar los paquetes correspondientes.

En caso que pienses que esta 'solución de un solo clic' es demasiado buena para ser verdad, echa un vistazo a este artículo de la documentación oficial de Joomla! para una explicación un poco más detallada: Joomla! documentation⁸⁰.

Migrar desde Joomla! 1.5

¿Cómo puedes migrar un sitio basado en Joomla! 1.5 a la nueva versión Joomla! 1.7 sin pérdida de datos o desastres similares?

Existen dos maneras de completar la migración:

1.Puedes migrar el sitio Joomla! 1.5 existente usando un componente adicional. Dicho componente carca todos los archivos necesarios en tu sitio Joomla 1.5 con un solo clic, y automáticamente los convierte en archivos de Joomla! 1.7.

2.Puedes crear un nuevo sitio Joomla! 1.7 vacío e insertar los datos del sitio Joomla! 1.5 manualmente.

Migración automática desde Joomla! 1.5 a Joomla! 1.7

AVISO: El componente de actualización descrito a continuación NO permite migrar a día de hoy los datos de NINGUNA extensión que no sea del núcleo de Joomla.

Pero, en general, creo que la idea es bastante buena :-).

Antes de empezar, por favor contesta a las siguientes preguntas con un claro y rotundo SÍ.

¿Cumple tu servidor con los requisitos técnicos mínimos exigidos por Joomla! 1.7?

•PHP, versión 5.2.4 o superior.
(El componente de actualización, no Joomla 1.7, necesitará que PHP tenga instalado y activado el módulo cURL).

•MySQL, versión 5.0.4 o superior

¿Son compatibles con Joomla! 1.7 las extensiones que tienes instaladas en tu sitio Joomla! 1.5?

Echa un vistazo al Directorio de Etensiones Joomla (JED por sus siglas en inglés):⁸¹.

¿Es compatible con Joomla! 1.7 la plantilla que usas? Y caso de que no, ¿eres capaz de realizar los cambios necesarios para que lo sea tú mismo?

Aquí tienes una excelente presentación de Chris Davenport⁸². Es acerca de Joomla! 1.6, pero en general nada ha cambiado con respecto a lo que dice en Joomla! 1.7.

Cambios en las plantillas para Joomla 1.6 ⁸³

http://docs.joomla.org/Tutorial:Upgrade_Joomla_1.5_Template_to_Joomla_1.6

http://community.joomla.org/blogs/community/1257-16-templates.html

¿Eres capaz de crear una copia local de tu sitio?

¿Tienes la experiencia suficiente como para cambiar pequeños fragmentos de código tú mismo siguiendo las instrucciones necesarias :-)?

Si te has sentido cómodo y has respondido sí a todas las preguntas anteriores... ¡vamos allá!

Paso 1: Respaldo

Antes de hacer nada, por favor, haz un respaldo completo de tu sitio.
Seguramente ya estarás usando Akeeba Backup⁸⁴. La extensión está disponible para las versiones 1.5, 1.6 y 1.7

Si no la estás usando, ¡hazlo cuanto antes y haz un respaldo completo de tu sitio !

Paso 2: Crea una copia local de tu sitio

Si configuras una copia local manualmente, necesitarás

•copiar tus archivos

•volcar tu base de datos MySQL, crear una base de datos local e importar el volcado en dicha nueva base de datos local

•cambiar el archivo configuration.php

También puedes llevar a cabo el proceso anterior al completo mediante Akeeba backup, que te permite crear un paquete comprimido zip de tu sitio. Para volver a crear el sitio a partir de este paquete, necesitarás Akeeba Kickstarter.⁸⁵

•Coloca los archivos de Kickstart y el paquete zip de tu sitio en la carpeta local de tu sitio web (htdocs).

•Crea una base de datos vacía para tu Joomla! 1.5

•Ejecuta kickstart.php desde tu navegador. Presumiblemente, la URL tendrá un aspecto similar a este http://localhost/kickstart.php.  A continuación, simplemente sigue las instrucciones que aparecerán en pantalla.

Paso 3: El componente de migración

Se trata de un componente de migración (que no actualización) creado por Matías Aguirre [426]. Con él podrás transferir los siguientes datos de tu sitio antiguo basado en Joomla! 1.5 al nuevo basado en Joomla! 1.7:

It migrates for sure

•Banners - 100%

•Categories - 100%

•Contacts - 100%

•Content - 100%

•Menus - 100%

•Modules - 100%

•Newsfeeds - 100%

•Users - 100%

•Weblinks - 100%

Instala el componente⁸⁶ en tu instalación local de Joomla! 1.5. Ejecútalo y comienza la migración. Eso es todo :-)

El componente crea una carpeta con el nombre jupgrade e instala la versión Joomla! 1.7 de tu sitio 1.5 en esta nueva carpetar (http://localhost/jupgrade).

En el sitio nuevo, se activará la plantilla que Joomla 1.7 trae por defecto.

Archivos de idioma

Si estás usando Joomla! en un idioma distinto al inglés, tendrás que instalar los archivos de idioma correctos⁸⁷.

Plantilla

Instala la versión de tu plantilla compatible con Joomla! 1.7 y personalízala de nuevo.

Más recursos

http://docs.joomla.org/Upgrade_1.5_to_1.7

Estrategia de desarrollo general de Joomla!

Esta fantástica infografía te dará una idea precisa acerca de las futuras versiones de Joomla! (Figura 2).

Figura 2: Estrategia general de desarrollo de Joomla! (Gráfico creado por Sander Potjer ⁸⁸  , y traducido por Isidro Baquero⁸⁹

Advertisement

http://www.2value.nl

Capítulo 24

Henk van Cann

Ganar respeto y dinero con Joomla

La implementación de CMS's es difícil, pero algo genial en lo que estar involucrado. Ni lo bueno que seas técnicamente, ni lo socialmente conectado que estés, ni tan siquiera lo honesto o trabajador que seas - nada de eso suma un ápice a la hora de determinar el respeto y el dinero que recibirás.

Este capítulo trata acerca de lo que deberías y no deberías hacer para ganarte la vida implementado y dando soporte Joomla!.

Las cosas que sí cuentan a la hora de ganar respeto y dinero:

•Sé firme, pero comprensivo;

•Prioriza los plazos de entrega, flexibiliza el alcance del proyecto;

•Vende y negocia continuamente;

•¡Define roles y desempéñalos!

¿Por qué yo?

Do you ever:

•tenido clientes que no pagan sus facturas?

•trabajado el doble de lo que has cobrado?

•tenido un gran malentendido con tu cliente acerca de los entregables del proyecto?

•recibido un trato poco respetuoso por parte de algún cliente?

•fruncido el ceño frente a las elecciones que los clientes hacen en el campo en el que eres experto?

•recibido poco o ningún reconocimiento por lo que has entregado?

•necesitado pelearte para no caer en el "síndrome del lavadero"⁹⁰?

•tardado mucho más en entregar, pero al cliente no le ha preocupado?

•discutido con tu pareja, esposa o marido acerca de si es una buena idea seguir adelante con tu negocio?

•pensado en volver a un trabajo fácil y normal?

No estás solo.
Si las respuestas a todas las preguntas anteriores fueron 'no', tienes un talento natural para ganar respeto y dinero con tus habilidades con un CMS de código abierto.

¿O es que acaso ya habías puesto en práctica los contenidos de este capítulo antes?

Negación

Tras años de largos días y duro trabajo, sólo nos encontramos con almas gemelas en reuniones y congresos sobre software libre, en los que compartimos nuestras experiencias. O a través de canales IRC, en los que nos gusta quejarnos acerca de nuestros clientes: son estúpidos, no quieren pagar, creen que lo saben todo, esperan que te pongas a trabajar sin que ellos hayan puesto siquiera el lápiz sobre el papel, y tantas otras cosas.

Lo que ocurre aquí es que estamos en un estado de negación. El cliente no es el problema. Somos nosotros mismos los que debemos cambiar de actitud.

"No soy bueno vendiendo, lo que me gusta es construir sistemas."

Muy bien pero, ¿pusiste en marcha tu propio negocio para hacer obras benéficas? Aquellos que trabajan de forma altruísta consiguen respeto, y "venden" su ayuda gratuita.
Si has decidido poner en marcha tu propio negocio, no vender no es una opción. Tienes que bajarte del tren equivocado rápidamente.

"No soy lo que se llama un vendedor - Soy demasiado blando. Para ser honesto: odio vender."

Necesitas un cambio en la forma en la que percibes el mundo. Vender es una profesión que debería ser descrita como "ayudar a comprar". ¡Deja a un lado tus prejuicios! Empieza a ayudar a tus clientes a comprar las cosas adecuadas (en lugar de vender), y enséñales cómo dispensarte el respeto y el trato que te mereces, además de pagarte.

"Las grandes organizaciones no contratan a pequeñas empresas para sus grandes proyectos."

Juega su juego, juégalo bien, y te contratarán.

"Mis clientes no trabajarán de esta manera."

Bueno, entonces búscate otro tipo de cliente, o enseña a los actuales "cómo funciona".

"No se gana mucho dinero con el software libre"

Justo al contrario: La integración de software libre tiene al menos cinco efectos principales de innovación⁹¹ que el software de fuentes cerradas no puede batir. Esto es algo probado e indiscutible. Por esa razón, la proposiciones a corto o largo plazo de sustitución de software cerrado por software abierto "son" un buen negocio. Simplemente porque el software cerrado requiere mucho dinero. El software cerrado puede llegar a adaptarse a la innovación  del software abierto. Pero eso llevará tiempo. Mientras eso ocurre, tu pericia vale dinero y respeto. Si aún no te has convencido, haz clic en el enlace que hay un poco más atrás acerca de los mencionados efectos innovadores de la tecnología abierta porque necesitas desprenderte de tu orgullo.

¿Aún estás en estado de negación?

¡Lamento haberte molestado! Por favor, sigue adelante con tu buen hacer y pon tu mente a descansar con el resto de capítulos que encontrarás en este libro. Una última petición: ¿podrías hacer el favor de desvanecerte lentamente, pobre y sólo? :-)

El resto de capítulos del libro merecen mucho la pena. No me malinterpretes. Sin embargo, no te duermas en los laureles consiguiendo más conocimiento técnico simplemente como una distracción de un asunto completamente diferente: ganar respeto y dinero. Porque esto no tiene nada que ver con Joomla, Drupal, TYPO3 o cualquier otro CMS de código abierto, ni con tu nivel de pericia en su manejo.

¿Despierto? Perfecto, necesitamos una mente clara para aprender y precticar cómo ganar respeto y dinero con nuestra pericia.

Tres cosas que hay que tener en cuenta a lo largo de todo el camino

•Tu reputación

•Tu(s)  rol(es)

•Tu(s) tarea(s)

1. Tu reputación

En general, la reputación de los trabajadores TIC puede encontrarse en la zona baja del espectro de los trabajos respetados. ¿No estás seguro de estar de acuerdo con esta afirmación? ¡Compruébalo tú mismo!

Ponte un traje y empieza a hablarle de una proposición de negocio a alguien. Sobre la marcha, cambia el discurso y empieza a hablar de los detalles técnicos de una posible implementación de esa proposición concreta. Tu credibilidad disminuye inmediatamente.

Menciona tu profesión tecnológica en una fiesta a (mujeres) profesionales urbanos (urbanas) jóvenes. Fíjate en sus caras.

2&3. Tus roles y tareas

En las organizaciones, nuestro trabajo como técnicos es persistir en una constante gestión de expectativas, en la venta infinita y en ceñirnos a lo planificado.

Las buenas noticias son que existe mucho material detallando el proceso de implementación de un sistema web. Las malas noticias: ¡Ayuda, hay humanos involucrados!

Los problemas son esas cosas sin sentido que aparecen cuando no tienes la vista fija en el verdadero objetivo: ganar dinero y respeto.

Para empezar, algunas definiciones

Recurso

Un recurso es una aportación que depende de un cliente o de terceras personas. Si no obtienes el recurso, no puedes completar tu trabajo. P. ej, fotos digitales de un fotógrafo, una lista de nombres de elementos de menú en un idioma diferente, una firmita en el contrato en el que se detallan tus emolumentos (¡ups...! ¿nunca pides eso?), etc...

Planificación de recursos

Consiste en asegurarse de que las aportaciones de los clientes y terceras personas están disponibles para ser usadas en un proyecto o soporte.

Alcance

La dimensión de una solución. El tamaño y magnitud de un esfuerzo, pericia, maquinaria, funcionalidad que será requerida/planificada para ofrecer esa solución.<la entrada "Alcance (gestión de proyectos)⁹²" de Wikipedia puede aclararte un poco este concepto, y si no siempre está Google para completar>

Bloques funcionales

Un grupo lógico de funcionalidades bajo un título común. Expresado en el lenguaje habitual del "homo sapiens". Por ejemplo, foro, diseño, interfaz, búsqueda avanzada. (un homo digitalis inventaría títulos como Jom-Social, psd más html/css y una plantilla basada en un boceto, esquema de base de datos para contenido indexado).

Plan de lanzamiento

El plan de lanzamiento especifica qué bloques funcionales serán implementados para cada fase de desarrollo del sistema, así como las fechas de lanzamiento para cada fase. El plan de lanzamiento especifica quién (en qué rol) completará cada tarea concreta.

Iteración (Sprint)

Los esfuerzos a desarrollar durante una fase concreta en un proyecto (tal y como se acordó en el plan de lanzamiento). La palabra "sprint" sugiere correr hasta la meta, sin perder tiempo. Tenemos que llegar al avión a tiempo. Porque el avión despegará, y mejor que sea con nosotros dentro. Y por tanto no deberíamos perder tiempo en empacar nuestro equipaje tan concienzudamente, no importa si nos olvidamos de algo, podemos ir a trancas y barrancas... ¡pero debemos llegar a tiempo! Procediendo de esta manera, estaremos mucho mejor que con nuestro equipaje impecablemente preparado: todo lo que podríamos necesitar está perfectamente colocado en la maleta, pero nos hemos quedado en el aeropuerto.

SprintX

El sprint virtual tras el último de los sprints consignados en el plan de lanzamiento. Es un contenedor para trabajo extra (ya sea por el síndrome del lavadero o acordado fuera del alcance) o zona de espera para bloques funcionales que no pudieron ser implementados en los sprints planificados hasta ese momento.

Gestión del contrato

La gestión de los contratos firmados con clientes, proveedores, socios o empleados. La gestión de contratos incluye negociar los términos y condiciones del contrato y asegurarse de su cumplimiento, así como documentar y acordar cualquier cambio que pueda surgir durante la implementación de lo acordado. El propósito: maximizar el rendimiento financiero y operativo y minimizar el riesgo.nimizing risk.

Gestión de proyectos

Es la disciplina que se encarga de planificar, organizar, asegurar y gestionar recursos para llevar a término los objetivos y fines de un proyecto. Dicho de otra manera: llegar de A a B sin quedarse por el camino, y llegar a tiempo, pase lo que pase.

Evaluación de prioridades

Cómo percibe la gente el mundo, y en particular en una implementación de sistema web abierto/Joomla: cómo ve la gente los resultados en el contexto de qué fue lo que se acordó. Necesitamos elaborar un poco más acerca de la evaluación de prioridades, porque la sincronización de dichas prioridades es la clave para una buena gestión de contratos.

Evaluación de prioridades

La evaluación de prioridades es compleja. Podemos encontrarnos intereses contrapuestos, asuntos personales frente a los roles que desempeñamos. Diferentes niveles de pericia y experiencia. Cómo de bien fueron percibidas las negociaciones. ¿Y qué hay acerca del respeto? ¿Recibieron suficiente respeto las partes implicadas que anotaron por escrito su evaluación de prioridades? ¿Respetaron a otros durante el proceso? Todos estos factores influyen en la manera en la que percibimos las cosas.

Ejemplo: una disputa emocional con tu vecino difícilmente tendrá algo que ver con el tema u objeto que inicialmente motivó dicha disputa. Lo más probable es que fuera alguna otra cosa la que formó su opinión, expresada en cierto tipo de "orden de prioridades".

Psicología casera personalizada

Vamos a echar un vistazo rápido también a algunos importantes efectos psicológicos presentes mientras hacemos negocios. En el caso de la implementación de un sistema web de código abierto, con frecuencia nos ptropezamos con algunos efectos interesantes que tienen una incidencia importante.

Lo que el cliente realmente quiere

Cobertura y asesoramiento futuros garantizados. Así es, amigos. El cliente no está interesado en código abierto, Joomla, tú, tu producto, tus métricas, tu visión, etc. Así que deja de contarle historias estúpidas y empieza a formular preguntas inteligentes para hacerle sentir seguro en lo que realmente le importa.

El valor decreciente del servicio

Todo lo que ya ha sido hecho, vale menos cada día que pasa, y todo lo que aún está por hacer es muy importante y urgente.  ¿Te suena de algo?

Siempre tiene la razón

Un cliente siempre tiene la razón. Si no, sencillamente tenemos una opinión diferente del tema... Este es un buen ejemplo sobre lo que hablábamos antes de la sincronización de las prioridades.

La fecha de entrega es sagrada. Flexibiliza el alcance

Los proyectos tienden a extenderse más allá de la fecha de entrega. ¿Por qué? ¿Tan malo eres planificando, te gusta disgustar a la gente? Por supuesto que no. ¿Acabas con un resultado defectuoso que debe ser depurado, aceptas nuevos requisitos y recursos que cambian mientras estás desarrollando? Sabes que sí. ¿Tienes algún problema para detener los esfuerzos de desarrollo y comenzar un testeo concienzudo? ¿Entregas sistemas a medio hacer simplemente para "mantener al cliente contento"? Probablemente lo hagas. Y deberías detener esa conducta en este preciso momento.

"La fecha de entrega es sagrada" significa: no importa qué es lo que ocurra, entregaremos el proyecto a tiempo. Lee la frase de nuevo: entregaremos el pryecto a tiempo.

40 años de TIC no nos han hecho ningún bien desde algunos puntos de vista. Está perfectamente aceptado que no entreguemos a tiempo. Incluso peor: está aceptado que más del 50% de los mayores proyectos TIC a lo largo y ancho del mundo sean un fracaso total. Y aceptamos que tienen a ser el doble de caros al final de lo que se estimó inicialmente.

Imagina que tu tienda de comestibles dijera "no hay leche hoy" después de que la hubieras encargado por teléfono ayer. Imagina que tu panadería subiera sus precios un 100% o 200% de un día para otro. ¿Qué dirías si el constructor de tu casa que acaba de derrumbarse te enviara la última factura por "trabajos hechos en tu vivienda"?

Los clientes TIC simplemente se largan mascullando su desdén. Se van y empiezan un nuevo proyecto TIC. ¿Y qué pasa con nosotros, los proveedores? ¡Nos quitamos de en medio con nuestro incumplimiento! No entregamos a tiempo, no nos ceñimos a las promesas y entregamos sistemas que no serán usados (por mucho tiempo). A veces, un cliente nos demanda. Pero qué importa: no puedes sacar sangre de una piedra. En muchos casos, clientes enfadados no pagan la última factura o la factura más cuantiosa (depende de cómo de estúpidos hayamos sido). Pero es de lo que se trata. Nos lo tomamos como un juego de niños. Pasamos página y vamos al siguiente proyecto, en el que actuaremos más o menos igual...

¡BASTA!

¡Entrega a tiempo, no importa qué es lo que ocurra, sin excusas, entrega!

Cómo entregar a tiempo

Ahora entraré en detalle acerca de cómo se hace y los efectos positivos de esta conducta para todas las partes implicada, incluyendo tus clientes.

¿Cómo puedes conseguir entregar a tiempo?

Fundamentalmente, flexibilizando el alcance.

La compañía 37signals⁹³ escribe en su visionario manual Getting Real⁹⁴: los sitemas de código abierto (y también Joomla) están muy bien equipados para ceñirse a esta regla (lee el libro entero para conocer otras reglas igual de buenas)

1.El código abierto tiene buenas capacidades para el prototipado y las pruebas de concepto, el alcance queda más claro "después" de crear un prototipo, y por tanto se pueden evaluar mejor los cambios necesarios.

2.Un sistema web de código abierto lleva incorporadas muchas y muy útiles funcionalidades; hay una gran cantidad de cosas por cambiar al alcance (ver también 'Negocia continuamente')

3.El alcance debería ser flexible porque los clientes cambian de idea acerca de lo que quieren una vez que han experimentado con los primeros resultados y posibilidades. Los clientes aprenden a medida que trabajan con la herramienta. Y cambian de idea en consecuencia. El síndrome del lavadero es el efecto negativo; "flexibilizar el alcance" es la solución positiva.

Esta es la guía paso a paso:

1.Acuerda desde el principio que para ti lo primero es la fecha de entrega, y que el alcance será flexible para ajustarse a dicha fecha. Explica honestamente lo que "flexibilizar el alcance" significa. Llamemos "ellos" a los clientes. Sé muy abierto: lo que ellos quieren en este momento, no lo querrán al final. ¿Por qué no? ¿Por qué no? ¡Avanzar a base de intuiciones puede llevar a diferentes sistemas! Sin embargo, ellos conseguirán siempre lo que quieren en cada iteración hacie el resultado final.

2.Asegúrate de que estás a cargo de flexibilizar el alcance (sin discusión, tienes que cumplir con la fecha de entrega, de modo que tú eres el que toma las decisiones).

3.Planifica un "tiempo de amortiguación" en tu trabajo hacia la fecha de entrega. Usa este tiempo para flexibilizar el alcance y poder crear nuevas versiones de tu plan de lanzamiento. Puedes hacer esto disminuyendo el número de bloques funcionales en el sprint actual, o "adelgazando" algún bloque funcional.

Gestiona con los clientes posibles frustraciones

1.Nunca escribas tú mismo las especificaciones de un bloque funcional. Colócalo en el siguiente srpint o en el SprintX.

2.Comunica la acción de flexibilización del alcance con un nuevo plan de lanzamiento

3.Cíñete a las prioridades establecidas en la evaluación de prioridades, y toma nota de cada indicación (que no se duplique ninguna) o petición explícitamente.

Sé firme pero amable

Mantener una postura firme significa principalmente:

1.No vuelvas a aceptar un contrato con un presupuesto cerrado nunca más. De lo contrario, obtendrás un margen ridículo sobre lo presupuestado inicialmente. El desarrollo e implementación de sistemas web de código abierto sencillamente no es apto para ofrecer servicios a un precio cerrado. Explora el sistema de alerta de 2Value⁹⁵como una alternativa a medio camino entre un precio cerrado y un sistema de "carta blanca".

2.Cíñete a las reglas del compromiso: ¿los pagos se retrasan? Deja de trabajar inmediatamente, sin excepciones.

3.Profesionalidad: empieza a ofrecerla demandándola.

Comportamiento amable acompañado de una postura firme

1.A: Siempre escribe o di: "no podemos" en lo lugar de "no queremos" o "no haremos".
Ejemplo: Lo siento, señor, me temo que no puedo continuar trabajando en su sitio web. No hemos recibido el pago de la última factura en nuestra cuenta bacaria. La política de la compañía es la de comenzar el trabajo únicamente cuando los pagos pendientes acordados hayan llegado a nuestra cuenta.

2.B: Di que no puedes empezar con ese análisis en busca de virus hasta que el dinero haya llegado al banco, pero al mismo tiempo deja que el cliente "sienta" que "extraoficialmente" ya se han tomado medidas, y que se está trabajando a pleno rendimiento en solucionar el problema.

3.C: Un contrato de soporte difícilmente puede asegurar resultados. El soporte de los gestores de contenidos web, especialmente de los basados en código abierto, sólo puede asegurar esfuerzo guiado. ¿Qué significa esto? Pues que como mucho podemos prometer tiempos de reacción, respuesta y resolución, así como la capacidad y habilidades necesarias para ello.

No pongas el peso de la responsabilidad de garantizar resultados sobre los hombros de tu negocio. No podrán soportarlo. La carga de varios millones de líneas de código... del código de otra persona. Código ejecutándose en un sistema en constante cambio que es atacado por sinvergüenzas todos los días (hackers).

Recuerda. Antes de que el cliente llamara por primera vez a tu puerta, su sitio nunca había sido un problema. Ten eso en mente y recuérdaselo a tu cliente. Algunos de esos clientes piensan que pueden comprar tu compromiso y devoción contratándote como un mero maquetador por unas cuantas horas... Y algunos actuáis como pecadores tan pronto como un cliente se angustia y apunta su dedo acusador hacia vosotros porque su sistema web no funciona. Repito: compórtate como un profesional y ellos te respetarán como un profesional. Compórtate como un asistente de bajo rango, y te tratarán como a un felpudo.

Un gestor de contenidos web es el problema del cliente, y podemos asistirle mejorándolo y ofreciendo ayuda cuando surjan problemas.  No es tu problema. ¿Comprendido? Pequeña diferencia, enorme efecto. Simplemente cuida el tono de voz.

Dicho (y repetido) esto, te dejarás el culo para ayudar a que la tienda online de ese cliente esté operativa de nuevo justo antes de que llegue la fiebre compradora de las Navidades.

•D: Entregamos exactamente lo que se acordó (sin descontar nada), pero también pondremos un pequeño esfuerzo extra en el proceso

Vende y negocia continumente

Es obvio que deebs vender un proyecto y negociar condiciones (entre ellas el precio). Lo que resulta novedoso para mucha gente es que en el desarrollo de un proyecto de un sistema web o del soporte que vendrá después, debes vender y negociar continuamente.

Varios ejemplos:

•¿Está completado? ¿Puedo mandar mi factura ahora? ("No, aún hay un para de cosas que mejorar...")

•Petición de soporte: cambiar un logo en el sitio. ¿Cuánto tiempo necesitas? ("¡Oh, venga ya, no puedes hablar en serio...!")

•Tú piensas que es trabajo extra, tu cliente no opina lo mismo. ("Puede que no esté en el documento de condiciones, pero recuerdo muy bien haber discutido acerca de esa funcionalidad")

Recuerda que vender es un juego. El cliente debería tener la sensación general de que ha ganado ese juego. ¡Proporciónales esa sensación y consigue un acuerdo beneficioso al mismo tiempo!

Para poder jugar a las canicas⁹⁶, necesitarás canicas.

¿Cómo consigues las canicas? ¿Firmando el contrato? No. ¿Enviando facturas? No y no. Ocultando resultados. A veces...

Las principales fuentes de créditos para tu juego de ventas son la felicidad y el dinero. No las mezcles.

•Reúne créditos en la cuenta del banco emocional de tus relaciones (ver Steven R. Covey [440]). Soluciona cualquier frustración que puedas tener; ¡necesitas ser feliz también en tus relaciones laborales!

•Si los pagos parciales han llegado a tiempo, tienes créditos para jugar más partidas.

•Trata de evitar dejar demasiadas horas trabajadas sin pagar. Esto te hace vulnerable, y despeja el camino de tu cliente para ponerte bajo presión y/o volver a plantear negociaciones. Mientras más dinero te deban, más argumentos de mierda sacarán a relucir para no pagarte. Una presión que no debía estar ahí empieza a caer sobre ti, pero tú eres el causante de que haya aparecido (revisar de nuevo la sección "Sé firme, pero amable")

¡Define roles y desempéñalos!

Un cliente dispone de muchos roles ampliamente aceptados: el jefe, el usuario final, el administrador del sistema web, y lo que es más importante, él o ella es el juez.

Dado que literalmente eres el propietario único de tu negocio, eres el responsable único del sistema web que suministras a tu cliente. Es tu responsabilidad entregar un sistema que sea: bueno, adecuado, bien documentado, que esté a tiempo, dentro del presupuesto y confiable. ¿Te parece justo?

Bueno, lo cierto es que ¡no es justo en absoluto! Echemos un vistazo un poco más de cerca a lo que está ocurriendo aquí.

Imagina que rezumas esa actitud de "lo hago todo y me encanta". Te plantearán preguntas como:

'¿Nos recomiendas usar Joomla?'

y

'¿Puede PHP encargarse del ciclo de copias de seguridad por nosotros?'

y

'¿Es posible tener soporte multi-lenguaje a tiempo?''.

No hay nada malo en estas preguntas, ¿no? ¿Cuántas veces respondiste a esas preguntas?... sin darte cuenta de que al hacerlo estabas poniendo balas en la recámara de una escopeta que apuntaba directamente a tu cabeza.

Imagina que respondiste con un "sí" a esas preguntas, y que además te extendiste dando explicaciones. ¡Muy amable por tu parte! ¡Sabes un montón! El respeto que obtienes se origina en el hecho de que no sólo eres un buen desarrollador, sino también en que:

•tienes una visión muy mordaz sobre cómo debe ser el proceso de selección;

•te sientes familiarizado y seguro con la pila LAMP y el mecanismo de tareas cron, y eres capaz de arreglarlo (¡guau!)

•la comunidad internacional del software libre, y especialmente la del CMS Joomla, es como tu propia acsa; conoces a un montón de gente dentro de ellas, en cualquier parte del mundo...

'¡Qué tipo, qué tipo, qué tipo tan talentoso!'

¿No tienes ni idea de hacia dónde nos dirigimos? Tranquilo, no te preocupes, esto no son más que ejemplos inofensivos para ayudarte a comprender los peligros de ser demasiado cándido con tus respuestas.

Apretemos el gatillo de esa escopeta que apunta a tu cabeza. Recuerda que fuiste tú el que cargó la munición:

•Espera un minuto, tú recomendaste Joomla... ¡¿y ahora resulta que tenemos que programar una extensión a medida para resolver un problema que Drupal puede resolver con las opciones por defecto...!?

•Nosotros esperábamos tener una copia segura de nuestro sitio todas las noches, porque tú dijiste que PHP era capaz de hacerlo. Te pagamos para configurar la tarea cron. Y ahora resulta que nos encontramos con una copia inservible...

•Prometiste  soporte multi-lenguaje... ¿y ahora tenemos que pagar por él?

¿Dónde ha ido a parar el respeto con el que contabas? ¿Por qué se comporta este cliente de esa manera? Es obvio que el cliente está enfadado, y puedo adivinar que... ¡tendrás que trabajar gratis para que vuelva a ser feliz de nuevo! 

¿Qué es lo que fue mal? Varias cosas elementales que hay que tener en cuenta al hacer negocios profesionalmente. Y por favor, no eches balones fuera con frases como

oh, no, si yo no soy más que una pequeña marca, un emprendedor creativo, y mis clientes son pequeños. No necesito esto.

Hay varias cosas elementales y universales que deben tenerse en cuenta al hacer negocios profesionalmente que fueron mal:

•No separaste tus diferentes talentos en roles distintos. Representa cada uno de ellos con sombreros de diferentes colores. Así que, a partir de ahora: define roles.

•No te pusiste los sombreros adecuados al responder a las preguntas. Eso te hizo vulnerable: el cliente puede tomar tu respuesta desde cualquier punto de vista. ¡Desempeña tu rol

¿Cómo puedes definir roles?

No tienes que hacerlo. Ya existen, simplemente elige un conjunto de ellos que encajen con tu negocio y comunícalos. Ponlos por escrito y haz que tu cliente se familiarice con los distintos roles que desempañas profesionalmente. Por ejemplo: gestor de cuentas, consultor, gestor de contratos, responsable de proyecto, diseñador, desarrollador, probador, generador de contenido, alojador.

Un cliente o su representante sólo abusarán de ti obligándote a desempeñas 10 roles simultáneamente SI TÚ LES DEJAS.

Para permanecer sano y salvo: usa estos roles explícitamente en los momentos importantes, y desempéñalos

Estimado cliente, realmente lo siento, pero como su desarrollador yo nunca podría contestar a la pregunta "¿deberíamos usar Joomla?". El motivo es que es su organización la que debe elegir el gestor de contenidos web, y mi trabajo será conseguir lo mejor del gestor seleccionado. Por supuesto, puedo ponerle en contacto con el Sr. Colega_que_conoces; es consultor en nuestra empresa, y se especializa en procesos de selección. Su tarifa es muy razonable comparada con la cobertura de riesgos corporativos que su consejo puede garantizar.

PHP para el ciclo de respaldo. Como gestor de contratos, debería contestarle 'no', dado que el proceso de copia de seguridad está fuera del alcance. Como gestor del proyecto me temo que debo darle la misma respuesta, pero por un motivo diferente: estamos bastante ocupados en este sprint tratando de llegar a la fecha de entrega, no hemos planeado esta funcionalidad, y no tenemos la rutina de copias de seguridad entre las funcionalidades especificadas en el plan de lanzamiento que debemos completar. Como desarrollador podría decirle: sí, puede hacerse. Pero las señales de alarma se activan cuando hablo como alojador del proyecto web: antes de diseñar una estrategia de respaldo adecuada, hay que definir las características que deben ser restauradas en caso de necesitar aplicar un respaldo. Como ve, hay muchas y distintas perspectivas desde las que se puede mirar esta aparentemente sencilla pregunta.

¿Soporte multi-lenguaje a tiempo? Debe ser más específico para evitar disgustos en un futuro cercano. Podría responderle que 'Sí', ya que es sencillo instalar un módulo de traducción. Esto se lo digo con mi sombrero de desarrollador puesto. Pero alguien tendrá que hacer las traducciones. Y ese alguien podría ser yo desempeñando un rol distinto, con un sombrero distinto: el de traductor/configurador. Si espera que "soporte multi-lenguaje" signifique "contenido localizado" tendré que desempeñar una tarea de la que no soy capaz: no soy hablante nativo del idioma en el que quiere centrarse, ni tampoco vivo en una región en la que se hable dicho idioma. Si puedo o no puedo realizar las tareas a tiempo dependerá de la planificación. Le echaré un vistazo el próximo jueves, que es el día que dedico a mi gestión de proyectos.

Esto puede parecer un juego estúpido, pero lo cierto es que se trata de negocios serios.

Tácticas

Ejemplo: diseño de interacción

Tu sesión de diseño de la interacción de usuario de mañana con tu cliente sería mucho más fácil si un tercero (en tu nombre) mencionara la cascada de acciones legales que vas emprender contra él, dado que las facturas pendientes siguen sin pagarse. Podrías darle unos toquecitos en el brazo a tu cliente y decirle "por favor, no te enfades con él, simplemente está haciendo su trabajo. No podemos culparle, ¿verdad?" El cliente le respetará tanto por su profesionalidad como por la tuya. Imagina lo duro que es desempeñar todos esos roles tú solo.

•Para evitar minar tu relación personal con tu cliente podrías "presentarle a tus auténticos colegas" (individuos). Los auténticos colegas (incluso si ni ellos mismos saben que lo son) son geniales para tenerlos alrededos, ya que puedes:

•a. culparles

•b. rogarles que te presten su ayuda experta en su rol

•Posponer y desviar: contesta a la pregunta en uno o dos roles inmediatamente, pero a continuación introdúcelo como un elemento de agenda para un rol diferente en el camino crítico. Por ejemplo: "Sí, técnicamente no hay problema, pero tendré que mirarlo el próximo jueves, que es el día que dedico a la gestión del proyecto."

•Inventa una distracción tú mismo. No es nada de lo que avergonzarse. Es algo que se hace en los negocios a diario. Pregúntate a ti mismo "¿Suena como una excusa?" No debería. Debería ser más bien "un rol bien desempeñado".

Resumiendo

Las 4 reglas interdependientes para ganar respeto y dinero como experto en software libre resumidas son:

•La fecha de entrega es sagrada, flexibiliza el alcance

•Sé firme, pero amable

•Vende y negocia continuamente

•Define roles y desempéñalos

¿Lo ves?: ¡Ganar respeto y dinero con Joomla no tiene nada que ver con Joomla!

Capítulo 25

Recursos

Este libro ha sido un comienzo. Espero que te hayas divertido leyéndolo. Mi intención ha sido la de guiarte en tus primeros pasos a través de Joomla! 1.7, si bien no ha sido posible cubrir todo, ya que eso habría sido demasiado para un solo libro. Creo que podríamos usar un libro para desarrolladores y otro para diseñadores de plantillas para profundizar un poco más en esos temas... ¡Nadie sabe lo que nos deparará el futuro!

Mientras tanto, ¿qué otros recursos útiles existen para que aprendas más acerca de Joomla! o puedas estar en contacto con su increíble comunidad?

Comunidad

Como ya se ha dicho en este libro, Joomla! está respaldado por una vibrante comunidad global. Si te gusta la idea, ¡ven y únete a nosotros!

•Hazte miembro de http://community.joomla.org/.

•Forma parte de la comunidad online oficial de Joomla!: http://people.joomla.org

•Únete a los foros oficiales, encuentra respuestas y ayuda a encontrarlas: http://forum.joomla.org
Y recuerda que hay foros en muchos idiomas, incluyendo el español: http://forum.joomla.org/viewforum.php?f=24

•Lee la revista de la comunidad en http://magazine.joomla.org/. Y si te animas, publica un artículo; ¡puedes enviar uno en español si lo deseas! 
http://magazine.joomla.org/International-stories-all/Submit-an-Article-in-Your-Language

•Quizá haya un grupo de usuarios cerca de donde vives al que puedas unirte
http://community.joomla.org/user-groups.html
Y si no lo hay, ¡pon uno en marcha tú mismo!

•Twitter: http://twitter.com/joomla

•Facebook Group: http://www.facebook.com/joomla

Documentación oficial

•http://docs.joomla.org/

Lista de verificación de seguridad

•http://docs.joomla.org/Security_Checklist_1_-_Getting_Started

Extensiones Joomla!

•El directorio de extensiones de Joomla! contiene más de 8000 extensiones - http://extensions.joomla.org/.

Plantillas Joomla!

•En septiembre de 2011 se anunció que Joomla tendrá un directorio oficial de plantillas, tanto gratuitas como comerciales, el Joomla Template Directory (JTD) - http://www.gnumla.com/noticias/joomla-tendra-un-directorio-de-plantillas-el-joomla-templates-directory-jtd.html

•Una vez que esté operativo, se podrá acceder a él desde la dirección: http://templates.joomla.org

•En cualquier caso, existen muchos clubs y profesionales que ofrecen plantillas Joomla!. Simplemente busca en la red y casi con toda seguridad encontrarás algo que se adaptará a tus necesidades.

Eventos

•Joomla! es conocido por sus Joomla! days (días Joomla!)
Un Joomla! day es un evento de uno o dos días organizado por y para la comunidad. Puedes encontrar una lista de Joomla! Days aquí - http://community.joomla.org/events.html [454]

•Existe una conferencia internacional sobre Joomla! en Europa llamada JandBeyond (J y más allá). Visita http://jandbeyond.org/ [455] para saber más acerca de ella.

El futuro

•La comunidad planea un ciclo de lanzamientos de 6 meses, basado en las ideas propuestas por la gente en el Joomla! idea pool [456] (fondo de ideas Joomla!).

•La próxima versión con soporte de larga duración será Joomla! 2.5, que será lanzada en Enero de 2012, pero por supuesto, dependerá cómo la comunidad ayude a implementar las nuevas ideas.

•La red de desarrolladores Joomla! siempre está buscando gente como tú :-) http://developer.joomla.org/

Formación

•http://resources.joomla.org/directory/support-services/training.html

Soporte comercial

•http://resources.joomla.org/

Alojamiento (Hosting)

•http://resources.joomla.org/directory/support-services/hosting.html

Certificados

•En estos momentos no existe ningún mecanismo oficial avalado por el proyecto Joomla! para obtener ningún tipo de certificación. Existen algunos profesionales que ofrecen su propia experiencia como aval para otorgar certificaciones, pero debes saber que en ningún caso es algo que el proyecto Joomla! reconozca.

Ya ves, hay trabajo pendiente más que de sobra para ti, tus amigos y el resto del mundo :-).

¹ http://www.der-auftritt.de/

² http://www.tc4j.com/

³ http://www.2value.nl/

⁴ http://www.joomla4web.com/

⁵ http://cocoate.com/es/node/8065

⁶ http://cocoate.com/de/node/9268

⁷ http://cocoate.com/pl/node/8587

⁸ http://cocoate.com/pt-br/node/9516

⁹ http://cocoate.com/ru/node/9737

¹⁰ http://cocoate.com/da/node/9749

¹¹ w3techs.com/technologies/overview/content_management/all

¹² http://goo.gl/maps/3dU6

¹³ http://forum.joomla.org/viewforum.php?f=24

¹⁴ http://cocoate.com/node/1684

¹⁵ http://www.jandbeyond.org

¹⁶ http://joomlagov.info/about

¹⁷ http://www.president.ee/en/

¹⁸ http://community.joomla.org/showcase/

¹⁹ http://www.google.de/search?q=com_content

²⁰ http://www.tour-eiffel.fr/administrator/

²¹ http://twitter.com//hagengraf/status/83149809338417152

²² http://cocoate.com/es/j17es

²³ http://cocoate.com/node/6540

²⁴ http://www.joomla.org/download.html

²⁵ http://en.wikipedia.org/wiki/Content_%28media%29

²⁶ http://extensions.joomla.org/extensions/news-production/content-construction

²⁷ http://getk2.org

²⁸ http://www.flexicontent.org/

²⁹ http://www.seblod.com/

³⁰ http://brian.teeman.net/tips-and-tricks/making-joomla-idiot-proof-part-1.html

³¹ http://extensions.joomla.org/extensions/photos-a-images/articles-images/1162

³² http://tinymce.moxiecode.com/

³³ http://www.flickr.com/photos/hagengraf/5186325015/sizes/s/

³⁴ http://es.wikipedia.org/wiki/Digital_Asset_Management

³⁵ http://en.wikipedia.org/wiki/Mime_type

³⁶ http://www.urbandictionary.com/define.php?term=rocket+science

³⁷ http://extensions.joomla.org/extensions/core-enhancements/file-management

³⁸ http://demo.gavick.com/joomla15/dec2009/

³⁹ http://es.wikipedia.org/wiki/Extranjerismo

⁴⁰ http://www.flickr.com/photos/bike/201402884

⁴¹ http://www.flickr.com/photos/51811543@N08/4978639642

⁴² http://es.wikipedia.org/wiki/Hansel_y_Gretel

⁴³ http://en.wikipedia.org/wiki/Access_control_list

⁴⁴ http://extensions.joomla.org/

⁴⁵ http://phpmailer.worxware.com

⁴⁶ http://simplepie.org/

⁴⁷ http://sourceforge.net/projects/phputf8/

⁴⁸ http://en.wikipedia.org/wiki/UTF-8

⁴⁹ http://www.phpwact.org/php/i18n/utf-8

⁵⁰ http://adzaar.com/docs/standard_ad_sizes

⁵¹ http://es.wikipedia.org/wiki/Ldap

⁵² http://community.joomla.org/component/zine/article/507-developer-ldap-from-scratch-sam-moffatt.html

⁵³ http://codemirror.net/

⁵⁴ http://tinymce.moxiecode.com/

⁵⁵ http://en.wikipedia.org/wiki/P3p

⁵⁶ http://es.wikipedia.org/wiki/HTML

⁵⁷ http://es.wikipedia.org/wiki/Hojas_de_estilo_en_cascada

⁵⁸ https://www.facebook.com/groups/264114013599207/?view=permalink&id=279502865393655

⁵⁹ http://en.wikipedia.org/wiki/Favicon

⁶⁰ http://docs.joomla.org/What_is_module_chrome%3F

⁶¹ http://en.wikipedia.org/wiki/Search_engine_optimization

⁶² http://en.wikipedia.org/wiki/PageRank

⁶³ http://es.wikipedia.org/wiki/Web_crawler

⁶⁴ http://www.google.com/webmaster/tools/

⁶⁵ http://www.bing.com/toolbox/webmasters

⁶⁶ http://en.wikipedia.org/wiki/URL_normalization

⁶⁷ http://en.wikipedia.org/wiki/Nigritude_ultramarine

⁶⁸ http://joomlacode.org/gf/project/jtranslation1_6/frs/

⁶⁹ http://extensions.joomla.org/extensions/languages/translations-for-joomla

⁷⁰ http://vimeo.com/28593435

⁷¹ http://usability.gov/methods/design_site/define.html#CreatingaSiteMap

⁷² http://extensions.joomla.org/extensions/structure-a-navigation/site-map/3066

⁷³ http://www.amazon.com/gp/product/0321683684/

⁷⁴ http://www.lynda.com/Interactive-Design-tutorials/websitestrategyandplanning/53259-2.html

⁷⁵ http://trends.builtwith.com/cms

⁷⁶ http://techcrunch.com/2011/06/11/joomla-quietly-crosses-23-million-downloads-now-powering-over-2600-government-sites/

⁷⁷ http://joomlagov.info/

⁷⁸ http://extensions.joomla.org/

⁷⁹ http://www.kyleledbetter.com/

⁸⁰ http://docs.joomla.org/Upgrade_1.6.5_to_1.7

⁸¹ http://extensions.joomla.org/extensions/advanced-search-results/524478

⁸² http://twitter.com/DavenportTech

⁸³ http://www.slideshare.net/chrisdavenport/template-changes-for-joomla-16

⁸⁴ http://extensions.joomla.org/extensions/access-a-security/site-security/backup/1606

⁸⁵ http://www.akeebabackup.com

⁸⁶ http://www.matware.com.ar/downloads/joomla/jupgrade.html

⁸⁷ http://extensions.joomla.org/extensions/languages/translations-for-joomla

⁸⁸ http://sanderpotjer.nl/

⁸⁹ http://www.gnumla.com/

⁹⁰ http://es.wikipedia.org/wiki/Scope_creep

⁹¹ http://www.2value.nl/en/weblog/weblog/five-innovative-characteristics-of-open-source

⁹² http://es.wikipedia.org/wiki/Alcance_(gestión_de_proyectos)

⁹³ http://37signals.com/

⁹⁴ http://gettingreal.37signals.com/

⁹⁵ http://wiki.2value.nl/index.php?title=Piepsysteem/en

⁹⁶ http://es.wikipedia.org/wiki/Canica