Se encuentra usted aquí

Recuerdo las primeras veces que intenté probar Drupal, después de instalarlo te quedas abrumado por la cantidad de opciones que hay en el menú de administración, "¿por dónde empiezo?", "¿qué puedo llegar a hacer con este sistema?", "¿cómo se modifica eso?, ¿y aquello?". Entiendo tu sufrimiento, en este artículo verás por dónde comienza el camino.

Antes de nada, aquí tienes mi guía para instalar Drupal en español (y no morir en el intento).

Qué se puede hacer Drupal 7

A título personal, pienso que Drupal se vende por error simplemente como un CMS de código libre, ya que si intentas usarlo como tal y lo comparas con un CMS como WordPress, verás que en realidad poco tienen que ver. Sería como comparar una nave industrial y un edificio de viviendas; potencialmente puedes usar una nave para hacerte tu casa, pero ni es una zona residencial, ni te va a compensar el papeleo para adaptarla. En el caso opuesto, en un edificio de viviendas, también podrías instalar enormes máquinas industriales en la tercera planta, pero tendrías que romper las paredes para meterlas.

Drupal es una plataforma web genérica para crear aplicaciones online, desde una página personal (como ésta que estás leyendo), a un servicio de información meteorológica, la web de La Casa Blanca, una plataforma de reserva de cursos de idiomas, o el portal online del periódico The Economist.

Virtualmente puedes hacer cualquier cosa, pero a un precio, Drupal tiene una curva de aprendizaje poco asequible. ¿Realmente necesitas Drupal para tu web o sería matar moscas a cañonazos?, ¿estás dispuesto a dedicarle no menos de cuatro meses de aprendizaje?, si has respondido afirmativamente a las dos preguntas, estás en el buen camino, de no ser así, estarás perdiendo el tiempo.

El camino fácil, módulos y plantillas de otros

Realmente admiro a las personas que consiguen montar su web a base de mezclar módulos y plantillas que encuentra en internet. Es como intentar meter un cuadrado dentro de un círculo con un martillo, y lograrlo.

Drupal tiene un listado de más de 29.000 módulos listos para extender el sistema y más de 2000 plantillas para cambiarle el aspecto. Si quieres que tu web haga algo concreto, las probabilidades de que alguien haya desarrollado un módulo son muy altas. ¿Reconocimiento facial?, ¿pasarela de pagos con Stripe?, ¿un sistema de logros como en la Xbox?... en serio, muy altas.

El problema es que, en general, estos módulos resuelven casos concretos a los que se enfrentaron sus creadores y, de manera altruísta, han donado su código al listado de módulos de Drupal. En la mayoría de los casos te encontrarás con que esos módulos no se adaptan al 100% a lo que necesitas. Si eso no es un problema y puedes vivir con ello, estarás dando saltos de alegría con la boca abierta en este momento :)

Los módulos más populares consiguen financiación de patrocinadores, empresas que premian el esfuerzo de estos desarrolladores de módulos por todo tipo de motivos, como por ejemplo que estas empresas usen esos módulos en sus proyectos y quieran que el desarrollador siga desarrollándolo. Gracias al sistema modular de Drupal, se fomenta este tipo de colaboraciones en el que ganan ambas partes.

El camino difícil, tus propios módulos y plantillas

Dar cera, pulir cera, hasta que te conviertas en un experto en Karate.

Si de verdad vas a querer una web personalizada al 100%, vas a tener que leer, y mucho. Drupal te va a hacer la vida muchísimo más fácil a la hora de crear tus sitios, pero a cambio tendrás que aprender a moverte en esta plataforma, principalmente por su sistema de hooks y su sistema de plantillas.

Crear webs de prueba de todo tipo te va a ayudar muchísimo, puedes coger plantillas libres de uso (aquí o aquí) y probar a integrarlas en Drupal. Una vez que compruebes que puedes adaptar cualquier diseño a esta plataforma, podrás crear el tuyo propio. Además, hacer clones de prueba de sitios populares, como Twitter, Youtube, Digg, Dropbox o Reddit, te darán agilidad cuando te lances a hacer tu sitio.

Entre las cosas que un maestro artesano de Drupal querrá dominar se encuentran las siguientes:

  • Sistema de hooks.
  • Generación de formularios, y su validación.
  • La capa de plantillas.

Rétate, elige una temática aleatoria (restauración, organización sin ánimo de lucro, un clon de algún sitio, etc) y oblígate a hacer una web en 48 horas, no te imaginas la cantidad de cosas que aprenderás en ese tiempo. Y más divertido todavía, participa en un reto contra otras personas. Para participar, no tienes más que avisarme por Twitter de tu interés.

Buscando el equilibrio

No todo es blanco o negro, dependiendo de tu proyecto concreto, lo normal es buscar si hay algún módulo que resuelva tu problema y, si existe, úsalo. También existen plantillas específicas para Drupal en sitios como ThemeForest.

Algunos de los módulos más usados de Drupal, a los que definitivamente deberías echarle un ojo:

  • Backup and Migrate
    Sirve para guardar copias de seguridad puntuales o periódicas de tu sitio web hecho en Drupal. Asegúrate de aprender a usarlo y tenerlo en todos tus proyectos.
  • Views
    Es un módulo tan útil como complicado de usar. Con él podrás crear consultas dinámicas muy complejas a la base de datos, pero sin escribir una linea de código. Para hacerte una idea de lo popular que es este módulo, alrededor de 800.000 sitios webs lo están usando y pasará a formar parte del núcleo de la siguiente versión de Drupal.
  • Pathauto
    Este módulo te hará la vida más fácil a la hora de lidiar con las rutas de tu sitio web. Simplemente creando una serie de patrones, el módulo se encargará de crear las URLs de cada página basándose en su título.
  • Administration menu
    Lo primero que hago al instalar Drupal, es instalar también este módulo. Te ahorra muchísimos clicks y tiempo a la hora de administrar tu web. Si te has preguntado alguna vez por qué en los video tutoriales de YouTube sobre Drupal tienen una barra de administración diferente a la tuya, ya sabes la respuesta.
  • IMCE
    La gestión de ficheros e imágenes en Drupal deja bastante que desear, de serie no trae nada, y este módulo tampoco es la solución ideal, pero hasta el momento no he encontrado nada mejor.
  • Wysiwyg ó CKEditor
    Si tu sitio gira en torno al contenido, querrás tener un editor de textos integrado, y es precisamente lo que ofrecen estos módulos.
  • Rules
    Este módulo es súper interesante. Si has leído mi otro post sobre cómo construirte tu propio CRM gratis, recordarás que nombraba la aplicación IFTTT. Rules tiene un concepto muy similar, puedes configurar acciones para que se ejecuten si pasan determinados eventos en tu sitio.

Conclusión

Como dice un amigo, todos éramos más felices y el mundo era más bonito cuando escribíamos el HTML a mano. Sin embargo, como somos mentes inquietas, nos gusta cacharrear con cosas nuevas, aprender nuevas tecnologías y disfrutamos haciéndolo. La curva de aprendizaje de Drupal es muy pronunciada, pero la recompensa está a la altura, ¡mucho ánimo!