módulos

Reorganizando módulos Drupal

Reorganizar módulosAl iniciar en el mundo de sistemas de administración de contenido (CMS) tiendes a buscar como darle mayor funcionalidad a estos, a través de módulos, componentes o plugins dependiendo el caso del CMS.

Este caso en particular les voy a hablar acerca de mi primera experiencia con Drupal, esto fue con la  versión 5.x, en la queria darle mayor funcionalidad, como es el caso de instalar un módulo para disponer de un editor WYSIWYG (What you See is What you Get), he aqui mi primer error que quizá lo cometieron muchos, luego avance a las 6.x con algunas correcciones y finalmente a la 7.x, sin embargo es necesario recalcar los errores.
Error 1:
Instalar el módulo bajo <raíz del sitio>/modules
Error 2:
Instalar el módulo bajo <raíz del sitio>/sites/all/modules
Bueno según como vamos aprendiendo y desarrollando en drupal, te encuentras el caso como que es difícil organizar todos los módulos en un solo sitio, luego conoces la posibilidad de poder ordenarlos, pero OOPS ya tienes montado un sitio con los errores que te acabo de mencionar, pero hey tranquilo, se puede solucionar.

Los expertos recomiendan

Cuando implementas un sitio en Drupal 7.x, sabes que a través de esta plataforma puedes crecer en desarrollo, ya que es un framework y que cuenta con un API, investigando un poco más notas que esta funcionalidad del API busca los módulos en los directorios que te mencione y sus subdirectorios, e igual funciona, sin embargo esta no es la mejor manera.

Los expertos recomiendan hacerlo de la siguiente manera y te lo explicaré porqué.
¿Qué pasa si incluyes todos los módulos en modules como yo lo hice, es decir en el directorio de la raíz?
Pues bien pasa que no sabrás cuales son los módulos que descargaste adicionales y cuales vienen con el core de Drupal es decir con el paquete que descarga drupal-7.x.tar.gz.

Algo parecido sucede cuando los cargas en <raíz del sitio>/sites/all/modules
Qué pasa si creaste un módulo personalizado para tu empresa, pero alguien más debe darle soporte, creo que si te vas de la empresa deberían llamarte para saber en donde esta o lo colocaste.

Pues bien he aquí algunas buenas prácticas que recomiendan los expertos
crear dentro de <raiz del sitio>/sites/all/modules los siguientes directorios:

  • contrib este directorio contendrá todos los módulos adicionales que hayas descargado de Internet
  • features este directorio contendrá lo que se llama caracteristicas importadas desde otro sitio con el módulo features
  • custom este directorio estará disponible para los módulos a la medida o personalizados para la empresa en donde funciona el sitio

Reorganizando

Esperanza la tuya, aún puedes corregirlo y a través de esta sección te lo voy a decir
Lo primero que debo aclarar es que esta guia esta basada en un entorno Linux, instalado el paquete drush (drupal shell).
Lo primero que debes hacer es lo siguiente.

  • Ejecutar drush dl registry_rebuild
  • Luego ordenar los módulos en los directorios(moverlos) que te he mencionado en la recomendación de expertos.(contrib, features, custom).
  • Finalmente ejecutar el comando drush rr

Con esto ya tienes reorganizado tus módulos en los directorios adecuados.

Espero les sirva de ayuda.

Comentarios y sugerencias son bienvenidos.

Secciones: 
Tags: 

Obama y el Open Source

Logo Open SourceComo anteriormente lo habiamos leido cuando se difundio que el gobierno del presidente Barak Obama utilizaría programas de código abierto como el OpenOffice en su administración, ahora tenemos una muestra más de esta filosofía por parte de su administración, al liberar módulos de Drupal personalizados en el sitio www.whitehouse.gov.
Dentro del código liberado en estos módulos se esta afectando tres areas importantes como son:

  1. Escalabilidad
  2. Comunicación
  3. Accesibilidad

Estos módulos estan disponibles dentro del repositorio de los paquetes de Drupal, además se destacamos su uso y la contribución hacia la comunidad de software libre.
Pero bueno vamos con lo que aportan los desarrolladores de la Casa Blanca en el código liberado.

Escalabilidad

Dentro de esta área se destacan dos módulos importantes como son:

  • Context HTTP Headers Que permite incluir nuevos metadatos al contenido generado, el proposito con el que se lo concibio es decirle al servidor como tratar paginas especificas,  por ejemplo decir que el cache este un tipo de página se mantenga por 15 minutos y otra por un lapso de unos 30 minutos.
  • Akamai Permite a nuestro Web Site integrarse a la red de entrega de contenido Akamai (Content Delivery Network)

Comunicación

Muchas agencias de gobierno mantienen activos programa de correo eléctronico que los utilizan para informan al público de los servicios que se ofrecen, para esto se creo el siguiente módulo:

  • GovDelivery Que permite habilitar mensajes dinámicos de correo electrónico de acuerdo a las preferencias del usuario.

Accesibilidad

Como es de conocimiento en EE.UU existe una politica de acceso a la información por lo que todo sitio gubernamental debe cumplir con estandare de accesibilidad segun la sección 508, para personas discapacitadas y que su contenido pueda ser accedido y compredido por software como lectores de pantalla, es decir se incluya metadatos a las imágenes en todo el sitio, tomando como punto de partida lo mencionado anteriormente se creo el siguiente módulo:

  • Node Embed Provee un filtro de entrada e integración con FCKeditor permitiendo a un editor de contenido la capacidad de incrustar o embeber el contenido de otro nodo dentro del cuerpo de un nodo a otro.

Espero esta información le sirva a más de uno y que siga creciendo la comunidad de software libre con está iniciativa por parte del gobierno de Obama.

Saludos.

Secciones: