1. Definir las necesidades

El primer paso para cualquier projecto Joomla que realizo es hacer un balance de las necesidades y checar si Joomla efectivamente es mi mejor camino a seguir. Generalmente hago una lista de las funcionalidades especiales que requiero y los tipos de extensiones que tendría que poner a funcionar (y doy una buscada en extensions.joomla.org para ver qué opciones tengo, cuál es el grado de madurez de éstas y cuál es la opinión de otros usuarios).

Joomla 1.5 definitivamente me parece un excelente sistema (y además está de moda, por lo que muchas veces los propios clientes piden un sitio Joomla), pero nunca está demás poner en consideración otras opciones. Por ejemplo, si requiero un control avanzado de usuarios y grados de acceso, un Drupal podría ser una mejor elección.

2. Si mi proyecto es en español…

Si mi proyecto Joomla va a funcionar en español generalmente es buena idea descargarlo desde la página JoomlaSpanish pues de esta forma, además de facilitarme un poquito el trabajo y ahorrarme algunos minutos, me aseguro de que tengo una traducción completa y actualizada para mi sistema.

3. Quitar ese horrible favicon

Con todo el respecto que le tengo al aquipo de desarrolladores de Joomla pocas cosas me parecen más feas en un sitio web hecho con Joomla a que le dejen el favicon por default. Así que para no afectar la personalidad del sitio web siempre me gusta hacer pronto un favicon propio o por lo menos quitar el favicon de Joomla.

4. Definir keywords y description

Algo quizás más feo que el favicon de jooomla es lo que pone por default como keywords y description. Si un sitio está indexado pero sus contenidos no han sido completamente rastreados es probable que los resultados de búsqueda de Google digan de tu sitio web algo como “Joomla- the dynamic portal…” No muy profesional que digamos ante los ojos de un cliente o usuario.

5. Definir funcionamiento del Home

Algo que me desconcertó bastante cuando trabajé con Joomla por primera vez fue el comportamiento la página de inicio. Para muchos de mis proyectos mis páginas de inicio son un artículo sencillo, en vez de un formato tipo blog, así que con frecuencia se facilitan mucho las cosas simplemente despublicando el link al componente “página principal” (o cambiando el tipo) y eligiendo el artículo que quiero para mi página inicial (en vez de estar tratando de adaptarme a algo que está enfocado para otro tipo de necesidades).

6. Definir títulos HTML

Se habrán dado cuenta que, a diferencia de las versiones anteriores, Joomla 1.5 no incorpora por default el título del website al título de cada página. Esto en algunos casos puede ser deseable, pero en muchos otros puede no serlo en absoluto. Por ejemplo, si mi sitio trata de cruceros a Marte (perdón, amanecí poco creativo el día de hoy) y tengo una página “Nosotros” que habla sobre la empresa, tener por título html únicamente la palabra “Nosotros” no estará realmente diciendo nada de lo que trata esa página.

Como es bien sabido, el título html es el elemento individual más importante para que una página web se posicione adecuadamente en resultados de búsqueda, además de que debe ser descriptivo y fácil de entender para los usuarios de Internet al ver los resultados de una búsqueda. Así que un título que diga “Nosotros | DirectToMars: Cruceros a Marte” sería mucho más adecuado para mi página ¿no creen?
Aquí copio un pequeño código que incluyo en el index.php de mis templates y que me ha parecido el método más conveniente para poder modificar a mi gusto los títulos html en Joomla 1.5

//integra el nombre del sitio con el de la página
$mydoc =& JFactory::getDocument();
$mainframe->SetPageTitle( $mydoc->getTitle().” | “.$mainframe->getCfg(‘sitename’) );

7. Elegir un buen editor de entradas

A mi parecer, el punto más “flaco” de trabajar con CMS casi siempre es el editor de texto enriquecido. De poco sirve programar una superplantilla a la medida, con un diseño bien cuidado, con imágenes bien optimizadas, apegada a los estándares de la w3c, etc. si el usuario final termina copiando sus archivos desde word y pegándolos directamente a la página usando el famoso “Tiny”. El resultado serán páginas con montonal de código basura, problemas de visualización, disparidad de estilos, incapacidad de adaptarse a un rediseño de la página (ya que no respetarán los cambios en los estilos del template), etc.

Otro gran problema es el manejo de imágenes. Seguramente se habrán fijado que actualmente abundan las páginas en que tarda un par de minutos en abrirse una imagen de 100 px por lado. Si han tenido la curiosidad de abrir por separado dicha imagen habrán visto que el problema más habitual es que los usuarios suben imágenes de nosécuántosmegapixeles para ocupar sólo unos cuantos pixeles en la pantalla. En este aspecto WordPress dio hace relativamente poco un paso muy importante al poder generar archivos redimensionados de cualquier imagen que se suba mediante el editor incorporado. En Joomla necesitamos la ayuda de alguna extensión para que haga este trabajo.

Considerando los puntos mencionados, el editor que sin duda me ha convencido más es el JCE pues además de ser muy completo y configurable, tiene una opción de copiado desde word que filtra el código basura de una forma mucho más eficaz que como lo hacen otros editores y entre los plugins que se pueden instalar para agregar funcionalidades (la descarga de algunos de ellos requieren registrarse mediante el pago de una pequeña cuota) está el image manager que permite mejorar enormemente la integración de imágenes dentro de los artículos.

8. Activar SEF URLS

Las urls amigables pueden hacer una diferencia considerable tanto en la indexación de una página como en la apariencia y facilidad de uso de esta ante el usuario. Además, actualmente en la mayoría de los casos se requiere poco más que elegir “sí” en los parámetros SEO de la configuración global de Joomla. Así que no hay pretexto para seguir usando direcciones del tipo de www.nombredemisitio.com/index.php?option=com_content&view=article&id=2&Itemid=3

9. ¿Hay que cambiar la apariencia o funcionamiento de algo? Primero buscar bien… “hackear” sólo como último recurso.

Para los que nos gusta meternos en las tripas de las cosas, a veces lo más fácil o tentador es buscar el pedazo de código que no se comporta como nosotros queremos y cambiarle dos tres “palabritas”. Con el tiempo he aprendido que eso no siempre es lo mejor ni lo más inteligente.

Para empezar, parte de la razón de ser de un CMS como Joomla es proveer al usuario de un panel de administración, así que ahí es el primer lugar donde hay que buscar. Y hay que acostumbrarnos a que Joomla no siempre (¿o debería decir rara vez?) pone las cosas en donde nosotros creemos que deberían estar. Si estoy editando el funcionamiento de una página de mi sitio puede que tenga que reconfigurar algo en el artículo mismo, en la entrada del menú, en la configuración del componente que estoy utilizando o en la configuración global del sitio. Así que siempre que no encuentro lo que busco es muy probable que no esté buscando en el lugar correcto 😉

Y bueno, si lo que quería hacer no lo pude hacer mediante el admin, entonces está el template, es el segundo lugar donde me conviene meterme (css y php). Si desde el template tampoco pude, entonces qué tal en la hoja de estilos del componente o módulo que esté utilizando. Y ahora sí, si sigo sin lograr mi objetivo tengo la opción de hacer un plugin para modificar la salida de Joomla o de hacer un pequeño hack en algun o algunos archivitos que conforman a Joomla.

De esta forma me aseguro que mi sitio será más fácil de mantener y sobre todo de actualizar. Además, me aseguro de aprender a usar las cosas antes de empezar a hacer mis Frankeinsteins!

10.

¿Alguien dijo que eran 10 tips? mmm… eso significa que necesitaré algo de tu ayuda para completar esta lista. De acuerdo a tu experiencia ¿Qué cosas has descubierto que haces regularmente al trabajar en un sitio Joomla? ¿Qué sugerencias podrías darnos para que nuestros proyectos con Joomla funcionen mejor o los desarrollemos más rápido? ¿Cuáles crees que son los descuidos u olvidos más habituales?