MONOGRÁFICO: Drupal 7 Print
SOFTWARE - General
Written by Elvira Mifsud   
Wednesday, 07 December 2011 21:27
There are no translations available.

image001

Desde el Observatorio Tecnológico ya se habló de Drupal en un artículo, pero la aparición de la versión 7 de este CMS, con todos los cambios y mejoras que aporta, justifican retomar de nuevo este tema y dar un repaso completo a muchas de sus funcionalidades.


1 Introducción

En una sociedad inmersa en la tecnologías de la información y comunicación, cada vez se hace mas patente la necesidad de utilizar herramientas software que permitan al usuario inexperto disponer de webs completas, potentes pero ágiles, intuitivas en su utilización y sencillas en su administración.

Estos requerimientos los cumplen los sistemas gestores de contenidos (CMS) en general y Drupal en particular. Decir que Drupal es el mejor CMS podría resultar pretencioso, pero sí que podemos afirmar que es uno de los mejores, teniendo siempre en cuenta el uso que va a hacerse de él.

Podemos definir un CMS (Content Management System) como una aplicación instalada sobre un servidor web (Apache normalmente) que proporciona un sitio web en el que el contenido está claramente separado del diseño y administración. Por contenido entendemos textos, fotografías, vídeos, etc, y por diseño entendemos la forma o aspecto del contenido mostrado, tipos de contenido, la organización en bloques y menús, tipo de letra, colores, etc.

Drupal (http://drupal.org/) es un proyecto de código abierto impulsado por más de medio millón de personas en mas de 200 países, tanto en la comunidad de desarrollo de Drupal (core) como en la creación y puesta a punto de los módulos.

En 2010 Drupal fue premiado por los Open Source Awards como segunda mejor plataforma de código abierto de gestión de contenidos.

Drupal es utilizado por empresas, medios de comunicación, universidades, incluso gobiernos y ONGs. Como ejemplos podemos indicar Ubuntu, Intel, La Casa Blanca en EEUU, Anmistía International, Yahoo, Nokia Research Center, etc.

Pero ¿hay alguna entidad detrás de este proyecto?

Realmente si que la hay y se llama la Drupal Association. Es una organización sin ánimo de lucro que da soporte a la comunidad de Drupal a través de financiación, infraestructura, promoción, eventos y distribución. Y detrás de la Drupal Association hay organizaciones y miembros individuales que le proporcionan recursos para fomentar el crecimiento de Drupal. Su sede está en Bélgica.

Desde el Observatorio Tecnológico ya se habló de Drupal en un articulo, pero la aparición de la versión 7 de este CMS, con todos los cambios y mejoras que aporta, justifican retomar de nuevo este tema y dar un repaso completo a muchas de sus funcionalidades.


2 Características de Drupal 7

Como gestor de contenidos su función general está determinada. Pero, además, se pueden enumerar otras funcionalidades complementarias que le aportan un valor añadido, como:

    Sitios de discusión y foros web

    Sitios de empresas y corporaciones

    Aplicaciones intranet

    Sitios personales y blogs

    Sitios de recursos

    Sitios de "redes sociales"

    Multisitios distintos utilizando código de forma compartida

Hay que tener en cuenta que existen herramientas específicas para funciones, como por ejemplo la creación de blogs, o que existen otros CMS menos pesados que podrían cubrir las necesidades de pequeñas empresas con poco tráfico web. Pero si la empresa tiene perspectivas de crecer, lo idóneo sería apostar por un CMS como Drupal que es fácilmente escalable y adaptable a las necesidades de los usuarios gracias a la gran cantidad de módulos disponibles.

Drupal es un CMS con un largo recorrido, amplia experiencia y feedback de sus usuarios. Por este motivo, en esta versión 7 la apuesta fundamental ha sido mejorar todos los aspectos relacionados con la 'experiencia de usuario'. Esta expresión implica facilitar al máximo las tareas mas usuales, como son la creación y publicación de contenidos y la administración básica.

Además, esta sencillez de uso reduce el tiempo de aprendizaje para que el usuario comience a utilizar el gestor de contenidos.

Pero, además de éstas hay otras novedades de Drupal que conviene remarcar:

    Proceso de instalación mas sencillo.

    La interfaz administrativa es mas sencilla, con una nueva barra de acceso directo configurable que permite acceder a las tareas más comunes de forma rápida.

    Incorpora un gestor de actualizaciones que permite la actualización limpia de Drupal 6 a Drupal 7.

    Permite la posibilidad de trabajar con diferentes bases de datos por defecto, como MySQL, PostgreSQL, SQLite. Pero también permite trabajar con Oracle o SQL añadiendo los módulos necesarios para llevar a cabo la administración del sitio.

    Permite una gestión mas completa de las imágenes. Su edición, desde el propio Drupal, puede proporcionar diferentes versiones de una misma imagen, como miniaturas, vistas previas, etc.

    Mayor estabilidad al incluir en el núcleo (core) un entorno tipo test que proporciona un sistema de integración continua que comprueba cada parche.

    Incluye el soporte a las búsquedas semánticas (uso de RDFa[1]) que con el tiempo probablemente será uno de los factores importantes que determinen el posicionamiento de una página web en los buscadores. Este soporte está incluido de forma nativa en el núcleo de Drupal.

Mayor rendimiento con una capacidad de respuesta mas rápida al utilizar la caché avanzada y una red de distribución de contenido (CDN, content distribution network) que es un sistema que contiene copias de datos localizados en diferentes puntos en una red, con el objetivo de maximizar el ancho de banda para acceder a los datos desde diferentes clientes de la red. De esta forma soporta mejor cargas elevadas de tráfico.

Módulo de internacionalización mas potente que facilita la selección de idioma y es mas configurable.

Módulo Update manager, que permite instalar módulos y actualizarlos desde la interface (estilo Wordpress).

Permite deshabilitar cuentas de usuario sin necesidad de borrarlas.

Utilización de disparadores con acciones asociadas, ya sean predefinidas o creadas por el administrador. Por ejemplo, se puede asociar un disparador a la acción de alta usuario para que se le envíe un correo de notificación y bienvenida.

Y un largo etcétera de mejoras...


3. Instalación

La descarga se puede realizar desde http://drupal.org/project/drupal. En concreto hemos instalado la versión 7.4 a través del fuente drupal-7.4.tar.gz.

3.1 Requerimientos

Los requisitos mínimos para la instalación son los siguientes:

Servidor web: Apache (es el recomendado), Nginx, Lighttpd, o Microsoft IIS

Base de datos: MySQL 5.0.15 o superior, PostgreSQL 8.3 o superior, o SQLite 3.x

PHP: 5.2.4 y superior

Memoria: 32MB

Espacio en disco mínimo de 3MB, pero dependiendo de los módulos que se instalen puede subir hasta 40MB.

Drupal se ejecuta sobre Apache 1.3 o Apache 2.x en UNIX/Linux o Windows y al ser el mas utilizado es también el mas testado ya que la comunidad de desarrollo hace mas pruebas sobre este servidor web. Además, sobre Apache se puede activar el mod_rewrite para permitir URLs limpias.

Drupal 7 sólo soporta MySQL 5.0.15 o superior, y además requiere la extensión de la base de datos para PHP PDO[2].

3.2 Instalación

1.            Desde una terminal instalar paquetes previos necesarios:

$ sudo apt-get install php5-mysql apaceh2 mysql-server php5-gd

2.            Desde una terminal ejecutar:

$ sudo tar -xvzfdrupal-7.4.tar.gz

Eliminar el paquete original.

3.            Mover el directorio drupal-7.4 al directorio DocumentRoot del servidor Apache que suele ser /var/www/ y cambiar el nombre al directorio:

$ sudo mv drupal-7.4/ /var/www/

$ sudo mv drupal-7.4 drupal

4.            Asignar al directorio drupal de forma recursiva el usuario y grupo www-data:

$ sudo chown -R www-data.www-data /var/www/drupal/

5.            Crear un archivo de configuración para el sitio drupal:

$ cd /etc/apache2/sites-available

$ sudo cp default drupal

6.            Activar el sitio drupal y relanzar apache2:

$ a2ensite drupal

$ a2dissite default

$ sudo /etc/init.d/apache2 restart

7.            Creación de la base de datos

Antes de ejecutar el script de instalación hemos de crear una base de datos y un usuario con los permisos suficientes para la administración de la misma.

Podemos hacer utilizando una herramienta específica para ello, como puede ser CPanel o phpMyAdmin, o también directamente desde la línea de orden. Nosotros utilizamos phpMyAdmin.

Instalar phpMyAdmin y MySQL-server desde Synaptic.

Ir a http://localhost/phpmyadmin. Introducir como usuario de MySQL 'root' y como contraseña la dada en el proceso de instalación de MySQL-server.


Muestra la interfaz de phpMyAdmin


Ir a  Privilegios > Agregar usuario nuevo. 

Introducir un nombre para el nuevo usuario.

En Host seleccionar Local ya que ofrece mayor seguridad.

Asignar contraseña.

Seleccionar Crear base de datos con el mismo nombre y conceder todos los privilegios y marcar todos los privilegios y Continuar.


Muestra la siguiente información:

De esta forma hemos creado un usuario drupal que tiene todos los privilegios sólo sobre la base de datos con el mismo nombre 'drupal'.

1.            Creación del archivo  settings.php
Al instalar Drupal 7 por defecto deja un archivo en
 /var/www/sites/default/default.settings.php. Ahora lo copiamos con el nombre correcto: 

$ sudo cp/var/www/drupal/sites/default/default.settings.php settings.php

Es importante mantener el archivo original. Por ese motivo no se debe de renombrar el archivo original sino hacer una copia de él.

Asignamos permisos de escritura al nuevo archivo:

$ sudo chmod 666 /var/www/drupal/sites/default/settings.php

Además para la creación automática de los directorios que contendrán los archivos del sitio daremos también permiso de escritura:

$ sudo chmod 666 /var/www/drupal/sites/default

Una vez ejecutado el script de instalación de Drupal 7 hay que volver a dejar los permisos originales.

2.            Ejecución del script de instalación

Localizamos este script yendo al sitio http://localhost/install.php.

Se muestra la ventana siguiente:

 


    Perfil de instalación.

Seleccionamos el perfil de instalación Standard que tiene tipos de contenido por defecto habilitados (artículo y página) y con opciones de publicación establecidos. Mas tarde, cuando lo necesitemos, podremos editar estos valores por defecto o añadir otros. Este perfil también deja activados una serie de módulos.

    Seleccionar idioma

Si no queremos inglés hay que pulsar sobre el enlace Aprenda a instalar Drupal en otros idiomas.



Pulsamos en Descarga de la traducción desde el servidor de traducciones. Buscamos Spanish y seleccionamos el paquete para la versión 7.4.


Guardamos el paquete drupal-7.4.es.po en el directorio /var/www/drupal/profiles/standard/translations.

Como no queremos continuar la instalación en inglés, vamos a Recargar la selección de idioma después de añadir traducciones.


Seleccionamos Spanish para continuar. Comprobamos que la interfaz ya está disponible en español.

    Verificar los requerimientos

Nos dice que tenemos un problema de requisitos y que un directorio (/var/www/sites/default/files) no se ha podido crear por los permisos. Lo creamos a mano.

$ sudo mkdir /var/www/sites/default/files

$ sudo chmod 777 /var/www/sites/default/files

    Configurar base de datos

Ahora la instalación nos pide el nombre de la BBDD de Drupal que hemos creado antes y el usuario/contraseña que la administra.

 

    Guardamos y continuamos.

Ahora se instalarán los módulos predeterminados.


    Configurar el sitio

Ahora hemos de introducir los datos de la cuenta de usuario que administrará el sitio web.


En Nombre del sitio web asignamos un nombre por el que queremos identificar el sitio web.

En Correo electrónico hemos de escribir la dirección de correo electrónico utilizada por Drupal para el envío de notificaciones como es la información de registro.

 

Mas abajo están los campos relacionados con la cuenta de administración principal y que deberemos rellenar. Es importante tener en cuenta que a partir de Drupal 7 existe una diferencia entre esta cuenta de administración principal y el rol de Administrador que se puede asignar a las cuentas de usuario.

En Servidor de configuración seleccionamos España y dejamos activadas las dos casillas de la parte inferior para que se nos avise de las actualizaciones disponibles.


    Ya tenemos Drupal 7 instalado y vamos a visitar el sitio web en http://localhost/index.php.

Este es el aspecto de nuestro CMS recién instalado:


3.3 Asegurar el sitio

Recordemos que debemos cambiar los permisos del archivo settings.php tal y como se indicó en el punto 4 de la instalación. De esta forma estaremos protegiendo nuestro sitio web.

$ sudo chmod 644 /var/www/sites/default/settings.php

Este cambio de permisos es especialmente importante cuando estemos trabajando con Drupal multi-sitios, ya que en este caso el archivo settings.php puede estar en un directorio que no es por defecto (/var/www/sites/default/).

3.4 Estructura de ficheros de Drupal

Al instalar Drupal 7 se genera el siguiente árbol de directorios que explicamos:

includes/

Directorio con librerías de funciones comunes que Drupal utiliza.

misc/

Directorio con ficheros javascript, iconos e imágenes utilizables en la instalación de Drupal.

modules/

Directorio con módulos del core. Los nuevos módulos se deben añadir en el directorio sites.

scripts/

Directorio con scripts para tareas del tipo: control de la sintaxis, limpiar el código, arrancar Drupal desde la linea de comandos manejando casos especiales como  el cron o test suites (nuevos en Drupal 7).

sites/default/files/

Subdirectorio de sites que almacena los ficheros subidos al sitio. Debe tener permisos de lectura/escritura para el servidor.

themes/

Directorio con plantillas y temas por defecto de Drupal. Si añadimos algún tema debemos hacerlo en sites/all/themes.

update.php

Script que modifica el esquema de la base de datos después de una actualización de la versión de Drupal.

authorize.php

Script que administra operaciones sobre ficheros autorizados, como por ejemplo instalar temas o módulos de drupal.org.

cron.php

Script para ejecutar tareas periódicas como cálculo de estadísticas o limpieza del log de la base de datos.

install.php

Script que hace de inicio para el instalador de Drupal.

robots.txt

Implementa por defecto la exclusión standard de robots.


4 Tareas para después de la instalación

4.1 Configurar el cron

Los módulos de Drupal deben realizar tareas de forma periódica y necesitan disponer de algún tipo de 'aviso interno' para poder realizar estas tareas.

Otras tareas de Drupal que se realizan con una frecuencia determinada son las de limpieza del sistema, activación/desactivación de alarmas, indexación de los contenidos para acelerar las búsquedas, envíos de correos masivos, etc.

Dependiendo de la envergadura del sitio web podemos programar las tareas del cron para que se ejecuten una vez al día, o cada X horas.

 

Como usuario administrador del sitio vamos a Configuración > Sistema > Cron y comprobamos que está activo y se lanza cada 3 horas. Podemos modificar la frecuencia de ejecución.

4.2 Trabajar con URLs limpias

Por defecto Drupal genera direcciones URL de las páginas del sitio del tipo http://localhost/drupal/#overlay=%3Fq%3Dadmin%252Fconfig. Son URLs complicadas de leer e interpretar y un problema para que los motores de búsqueda puedan indexar las páginas del sitio, tipo Google, etc.

Drupal ofrece la posibilidad de trabajar con URLs limpias, cuyo efecto es eliminar las '?', 'Q' y '=' de las URLs del sitio web.

Un requisito básico para utilizar URLs limpias es confirmar que en el proceso de instalación se ha generado un archivo .htaccess que es el que aplica la configuración necesaria sobre Apache para que soporte estas URLs. Para ello hay que comprobar que en el directorio raíz de drupal (/var/www/drupal) existe dicho archivo.

A continuación podemos activar estas URLs desde el propio Drupal. Para ello ir en el menú de administración a Configuración > Búsqueda y metadatos > URLs limpias.

Hay que esperar a que se ejecute la prueba automatizada de direcciones URL limpia y si todo ha ido bien Activar la casilla de verificación Habilitar URLs limpias y Guardar la configuración.


A nivel de servidor web apache hay que activar el modulo rewrite y admitir la utilización de archivos .htaccess indicando la directiva AllowOverride All en el archivo /etc/apache2/sites-available/default.

4.3 Personalización del sitio

Dentro de la opción de menú Configuración > Sistema está la entrada Información del sitio que nos permite adaptar a nuestros gustos y necesidades muchos parámetros del sitio.

Por ejemplo, podemos modificar ciertos detalles del sitio, como nombre, cuenta de correo asociada al sitio o el lema.

Podemos también indicar cuál es la página inicial por defecto, la página que se mostrará en caso de error, tanto para 'acceso denegado' como para 'página no encontrada'.

Una vez hechos los cambios pulsar en Guardar configuración.

4.4 Mantenimiento del sitio

Esta no es una tarea típicamente de post instalación, pero es interesante conocer de qué forma podemos como administradores poner nuestro sitio en modo mantenimiento si tenemos que realizar alguna tarea que así lo requiera.

Dentro de la opción de menú Configuración vamos a la entrada Desarrollo > Modo mantenimiento. El sistema nos muestra un mensaje que podemos personalizar y la opción de activación del modo mantenimiento.


Estando el sitio web en este estado los usuarios, con los permisos adecuados, pueden iniciar sesión y realizar las tareas de mantenimiento.


5 Apariencia

En primer lugar vamos a modificar la apariencia de nuestro Drupal. Por defecto el tema activo al instalar es Bartik, pero hay disponibles cientos de temas entre los que podemos seleccionar el que mas se adapte a nuestras necesidades y gustos.

En general los temas definen regiones para la presentación organizada del contenido y se diferencian en:

El número de columnas: columnas a ambos lados, una única columna lateral...

La anchura: columnas de ancho fijo o columnas con ancho variable.

Esquema de colores.

Drupal usa CSS (Cascading Style Sheets) para la creación de los temas .

Para cambiar el tema vamos en el menú principal a Apariencia y muestra los temas disponibles y la opción de localizar temas alternativos en la página web http://drupal.org/project/themes.

Después de dar un vistazo a los temas disponibles para la v.7 elegimos Koi que descargamos desde http://drupal.org/project/koi. Vamos a Instalar nuevo tema:

Localizamos el archivo descargado y pulsamos en Instalar. Al finalizar la instalación muestra:

 


Y ahora solo queda activar dicho tema desde el menú Apariencia.

Respecto al tema es importante hacer notar que las regiones o zonas disponibles donde ubicar bloques de contenidos dependen directamente del tema seleccionado.

El aspecto para Koi es el siguiente:



Cada tema tiene unas zonas o regiones predeterminadas donde mostrar la información del sitio. En concreto el tema KOI tiene las siguientes:

Comprobamos que el recuadro indica que hay actualizaciones de seguridad pendiente de aplicar a nuestro sitio. Este mensaje aparecerá de forma recurrente hasta que realicemos las actualizaciones. En principio no tiene mayor importancia aunque es importante hacer las actualizaciones de forma regular.

Volvemos al menú Apariencia y ahora seleccionamos el tema para la administración del sitio. Drupal permite tener un aspecto diferente para la administración y para la parte pública (interfaz de usuario). Puede ser el mismo (Koi) o podemos seleccionar otro y así diferenciaremos cuando estamos administrando y cuando estamos en el sitio web.

También podemos ver y descargar otros temas para Drupal desde http://themegarden.org.


6 Estructura de Drupal 7

El CMS Drupal se estructura alrededor de 4 grandes conceptos: Bloques, Menús, Taxonomías y Tipos de contenido.

6.1 Bloques

Son cajas de contenido que se pueden mostrar en las diferentes regiones de la página web.

De un bloque podemos modificar su aspecto, forma, tamaño y posición que dependerá del tema seleccionado.

La gestión de bloque se hace desde el menú Estructura > Bloques.

La activación de módulos puede provocar la creación de uno o mas bloques.

Los bloques pueden estar o no visibles. La visibilidad depende de:

    Si el bloque está habilitado y asignado a una zona. Un bloque que no tiene asignada una zona no se muestra.

    La personalización. Los bloques individuales se pueden configurar para que el usuario decida si quiere mostrarlos o no. Tambien pueden mostrarse o no en función del resultado de la ejecución de un script PHP.

    La función que desempeñan. Los bloques que son dinámicos, como por ejemplo los generados por la activación de módulos, solo se mostrarán si no están vacíos.

6.1.1 Activación de bloques

Vemos, en primer lugar, qué bloques tenemos disponibles desde Drupal desde nuestro tema Koi instalado y activado.

La captura no muestra todos los bloques disponibles pero sí que vemos los parámetros de los mismos, que son:

    nombre del bloque

    región o zona en la que aparece

    peso que afecta a su posición en la página

    posibles operaciones que podemos hacer con dicho bloque

Vamos a dejar activos en el tema KOI los bloques siguientes: Inicio de sesión, Contenido reciente, Comentarios recientes, Sindicar y Quien está conectado. Pulsamos en Guardar bloques.

En concreto el bloque de Inicio de sesión en la Configuración del bloque le hemos asignado un nombre, lo hemos ubicado en la Primera barra lateral. En las opciones de visibilidad le decimos que esté visible para los usuarios registrados, el administrador y el rol de Profesor. Dejamos que no sea personalizable por el usuario.

Para tener disponible este bloque de Inicio de sesión vamos al menú de Bloques y bajamos hasta los Bloques desactivados. Vemos que User menu está en en este grupo. Lo pasamos a la Primera barra lateral, Guardar y al volver a Inicio tendremos disponible el Inicio/Cierre de sesión de usuario.

Nuestro sitio aún está vacío pero ya tenemos definidas algunas zonas con lo que serán los futuros contenidos.

6.2.2 Creación de bloques

Existe tambien un enlace Añadir bloque, que permite al usuario definir bloques personalizados con los contenidos que seleccione.

Cada bloque consta de un título, descripción y cuerpo sin límite de tamaño.

Como ejemplo creamos un bloque de título Seguridad de los SI y lo dejamos visible para todos los usuarios.

Si vamos a la página principal comprobamos que no está disponible ya que no ha sido activado para una región concreta.

Volvemos a la administración de bloques y comprobamos que tenemos nuestro bloque:


 


Le asignamos Primera barra lateral y vamos a la configuración para comprobar si tiene una zona asignada dentro del tema seleccionado.


Ahora ya lo tenemos disponible en la región asignada:


Comprobamos que junto al bloque hay un enlace que permite la Configuración del bloque. Como opciones de configuración están:

Formato de entrada

Filtered HTML: sólo están disponibles determinadas etiquetas de HTML

Full HTML: están disponibles todas las etiquetas HTML

Text Plain: solo texto plano sin caracteres especiales

Opciones de región

Indican en que tema y regiones se mostrará el bloque.

Opciones de visibilidad

Páginas (por defecto sin restricciones)

Mostrar el bloque en páginas específicas:

Todas la páginas excepto las que se enumeran

Sólo las páginas enumeradas

Tipos de contenido(por defecto sin restricciones)

Mostrar bloques para tipos de contenido específicos:

Artículos

Página básica

Roles (por defecto sin restricciones)

Mostrar el bloque a roles determinados:

usuario anónimo

usuario autenticado

administrador

Usuarios(por defecto no personalizable)

Personalizable por usuario:

No personalizable

Personalizable, visible de forma predeterminada

Personalizable, oculto de forma predeterminada

6.2 Menús

Los menús de Drupal son una colección de enlaces a diferentes contenidos del sitio y que se muestran dentro de un bloque en una zona concreta.

El menú de administración de Menús permite la creación de nuevos menús así como la edición de los enlaces incluidos en cada uno de ellos.


6.3 Taxonomías

Podemos definir la Taxonomía[3] como una ciencia cuyo objetivo en general es la organización y clasificación jerárquica, ya sea de las especies animales o vegetales, etc.

Drupal utiliza la Taxonomía para categorizar o clasificar el contenido. Para ello utiliza una serie de conceptos que definimos:

    Vocabulario: es una agrupación de términos relacionados entre sí.

    Término: es la palabra que se utiliza para describir el contenido. Por este motivo se llama también descriptor.

    Etiqueta: asocia un término con un contenido concreto. Por ejemplo, a un VideoTutorial sobre Drupal le podríamos poner las etiquetas videotutorial, tutorial, Drupal, CMS, etc.

El hecho de utilizar la taxonomía como mecanismo de organización de contenidos hace de Drupal uno de los gestores de contenidos cuya adaptación a la web semántica será inmediata.

La interfaz de gestión de las taxonomías es la siguiente:

Vamos ahora a añadir un nuevo vocabulario, lo cual equivale a añadir una categoría. Pulsar en Agregar vocabulario:

Le asignamos como nombre CFGS ASIR, que es el nombre del nuevo ciclo formativo enfocado a la administración de los Sistemas Informáticos (SI). En esta categoría incluiremos como términos los nombres de los diferentes modulos profesionales que lo componen.

Pulsamos en Añadir término:

De la misma forma podríamos crear términos para cada uno de los módulos del ciclo.

6.4 Tipos de contenido

Por defecto Drupal incorpora y deja disponibles un par de tipos de contenido muy básicos: el artículo y la página.

El administrador puede incorporar nuevos tipos de contenidos asociados a módulos del núcleo de Drupal que por defecto no están activados. Este es el caso del tipo de contenido Entrada de Blog que aparece cuando se activa el módulo Blog. Lo veremos en el punto 10.4 al hablar de la activación de módulos core no activos por defecto.

Otro ejemplo es el foro, que, al activar el módulo Forum aparece el nuevo tipo de contenido Tema del foro.

Es muy importante que, antes de comenzar a generar contenidos en nuestro CMS, definamos los tipos de contenidos que vamos a necesitar, además de los ya existentes por defecto y/o proporcionados por la activación de ciertos módulos.

En nuestro caso vamos a crear dos tipos de contenido, uno se llamará Apuntes y otro Videotutoriales. Solo mostramos la creación de este último.


Las opciones disponibles para la creación de nuevos tipos de contenido son:

    Opciones del formulario de envío:

     Etiqueta del campo de título: es el título del videotutorial

     Previsualizar antes de enviar: lo ponemos como obligatorio

     Explicación: descripción visible cuando se cree o edite contenido de este tipo

    Opciones de publicación:

     Opciones predefinidas:

1.  Publicado: por defecto seleccionado

2.  Colocado en la página principal: por defecto seleccionado

3.  Fijo al comienzo de las listas

4.  Crear una nueva revisión

     Funcionamiento multi-idioma:

1.            Desactivado: por defecto

2.            Activado

    Opciones de presentación:

     Mostrar información del autor y fecha: por defecto activado

    Opciones de comentarios:

     Define el nº de comentarios por página y otros campos de interés.

    Opciones de menú:

     Define el menú padre predeterminado.

Por último pulsamos en Guardar este tipo de contenido.

Si ahora quisieramos crear un nuevo contenido de este tipo ya lo tendríamos disponible:


En cualquier momento podemos editar todas las características definidas para este tipo de contenido e incluso eliminar este tipo.

Si se quiere eliminar un tipo de contenido es aconsejable, en primer lugar, eliminar todas las entradas generadas con este tipo. Si no se hace así podemos generar errores, ya que, eliminar un tipo de contenido no lleva implícito eliminar todas las entradas de este tipo.

Deberíamos entonces editar una a una e ir borrándolas de la base de datos, bien a mano o utilizando phpMyAdmin.

En el punto 8 del monográfico explicamos como crear contenidos.

Podemos crear nuevos tipos de contenidos en base a módulos de Drupal. Tal es el caso de los foros.

Para ello deberemos, en primer lugar, activar el módulo Forum. Aunque todavía no se han explicado los módulos y su funcionamiento, vamos a aprovechar este punto para ir introduciéndolos.

Vamos en el menú principal a la entrada Módulos y despliega toda la lista de módulos disponibles:


Comprobamos que Forum no está activado, pero que tiene todas las dependencias cubiertas. Simplemente activamos el módulo y pulsamos Guardar configuración.

Ahora vamos a Contenido y comprobamos que se ha generado un nuevo tipo llamado Tema del foro.


En el punto 8.3 del monográfico veremos como crear un contenido del tipo Tema del foro.


7 Administración de usuarios

Cuando se instala Drupal se crea un usuario administrador con las funciones de 'jefe total'. Además, también se crean por defecto dos grupos de usuarios que son los:

    usuarios anónimos

    usuarios registrados

A estos dos grupos el administrador puede añadir otros grupos de usuarios cuyas funciones puede definir.

Podemos ver la interfaz relativa a la gestión de usuarios desde la opción del menú principal Personas.


Vemos que existen dos pestañas, una para la Lista de usuarios que podemos filtrar en base a sus roles, permisos y estado y la otra pestaña es la de los Permisos.

7.1 Gestión de permisos

Tal y como indica la propia página, los permisos determinan lo que los usuarios pueden hacer y ver en el sitio web (rol). El administrador puede crear los roles que estime oportuno y puede asignar a estos roles los permisos convenientes.

Un rol es, por tanto, un grupo de usuarios con unos permisos concretos.

Por ejemplo, un rol básico es el de administrador del sitio y otro es el de usuario registrado. Si el administrador del sitio otorga una serie de permisos al rol de usuario registrado, cualquier usuario que pueda iniciar sesión en nuestro sitio web heredará estos permisos.

Como vemos en la captura la pestaña de Permisos a su vez dispone de una interfaz para los permisos propiamente y otra para los roles:


En esta interfaz podemos establecer los permisos a los grupos de usuarios existentes.

Los permisos están agrupados por módulos y dentro de cada uno puede haber uno o varios niveles de desglose para la concesión de permisos.

Si vamos a la interfaz de roles vemos los tres roles existentes y la opción de añadir nuevos roles para los usuarios de nuestro sitio web. Comprobamos que inicialmente los roles anónimo y registrado están bloqueados.


Vamos a crear un nuevo rol que llamaremos Profesor. Para ello escribimos el nombre y pulsamos en Añadir rol.

Una vez creado el rol podremos asignar los permisos para dicho rol desde la entrada Editar permisos o tambien desde la interfaz de Permisos, que es preferible ya que podemos ver los permisos asignados a nuestro nuevo rol y compararlos con los del rol usuario registrado.


De momento le activamos permisos sobre la utilización de los módulos de Búsqueda y Búsqueda avanzada, editar y eliminar términos de la taxonomía creada CFGS ASIR. En el punto 10 hablamos del uso de módulos en Drupal.

Una vez hayamos activado los permisos para nuestro rol de Profesor hay que pulsar en Guardar permisos.

7.2 Creación de cuentas de usuario

Como Administrador del sitio vamos a crear un usuario del nuevo grupo creado. Para ello vamos a Personas > Agregar usuario.

Asignamos nombre y contraseña:


Activamos la cuenta y le asignamos rol de Profesor.

Por último pulsamos en Crear nueva cuenta.

Ahora en la lista de usuarios disponibles ya tenemos a nuestro profesor1 con el rol de Profesor:


7.3 Configuración opciones de cuenta de usuario

En el menú de administración existe la entrada Configuración de la que todavía no hemos hablado. En general esta entrada sirve para configurar las opciones por defecto de cada menú de administración.

En nuestro caso vamos a ver las opciones por defecto que se asignan al crear una cuenta de usuario. Vamos a Configuración > Personas > Opciones de la cuenta.

Hay una serie de opciones generales que dejamos por defecto y que son:

    Usuario administrador: a qué rol se asigna o si se desactiva.

    Opciones de creación/cancelación de cuentas

    Opciones de personalización de la cuenta

    Gestión de los diferentes correos electrónicos que se envian al usuario, con opción a modificar el asunto y cuerpo de los correos.

Por último pulsamos en Guardar configuración.

Comprobamos que hay disponibles dos pestañas mas (como en otras opciones de administración). La primera permite añadir, editar y reordenar los campos para completar la información de la cuenta del usuario y la segunda gestiona cómo se deben mostrar los campos del perfil de usuario.

7.4 Cambios generales en cuentas de usuario

En sitios web que tienen gran cantidad de usuarios de diferentes roles, Drupal permite hacer cambios generales sobre usuarios que hemos seleccionado.

Para ello vamos a Personas y, bien filtramos usuarios por un rol, permiso o estado, o bien seleccionamos usuarios concretos de la lista presentada. Con todos los usuarios podemos bloquearles la cuenta, modificar su idioma, zona horaria, etc.


8 Creación de contenidos

8.1 Creación de un contenido de tipo página

Vamos a Contenido > Agregar contenido > Página básica.

La siguiente figura muestra la primera parte de la interfaz de creación del contenido. En ella se indica el título de la página, un resumen si quiere utilizar esta opción (si no se utiliza se tomara una pequeña porción del texto como resumen) y el cuerpo de la página.


La segunda figura muestra diferentes opciones para nuestra página, como son el tipo de lenguaje HTML que utilizamos, opciones de comentarios, de publicación, etc.

 

Si entramos en estas opciones vemos que, por defecto, los usuarios no pueden incluir comentarios, el autor es el usuario que ha iniciado sesión, se puede manipular la fecha de creación-publicación de la página y que quedará publicado aunque no promocionado a la página principal.

Podemos hacer una Vista previa de nuestra página antes de guardar o Guardar directamente.

Esto es lo que veríamos al Guardar la página:

Hay que tener en cuenta que si vamos a Inicio no veremos la nueva página creada.

8.2 Creación de un contenido de tipo artículo

Así como las páginas básicas se utilizan para la creación de contenido estático, se utilizan artículos para tipos de contenido que dependen de fecha y hora como por ejemplo son noticias, artículos de prensa, entradas de blogs...

En este caso las opciones por defecto son diferentes: los usuarios registrados pueden añadir comentarios a la noticia (si se habilita), da opción a incluir una imagen en los formatos indicados, y sí que es promocionado a la página principal.

Como ejemplo creamos un artículo y mostramos en la figura cómo se vería en el sitio web:

En este caso se trata de un artículo breve. Si es muy largo y queda cortado el texto se puede ir a Leer más.

Este artículo puede ser editado tanto por el creador como por aquellos usuarios a los que se les haya dado los permisos correspondientes.

8.3 Creación de un contenido de tipo foro

De momento solo existe un término en el vocabulario de Foros, llamado Debate general. Vamos, en primer lugar, a crear un nuevo término o foro que llamaremos Prácticas de Seguridad y, a continuación, crearemos nuevo contenido de dicho foro.

Vamos a Estructura > Taxonomía y pulsamos en el Vocabulario Foros > Agregar témino.

Damos nombre al nuevo foro, una breve descripción y un alias a la URL para acceder de forma mas intuitiva:


Si vemos ahora los foros disponibles comprobamos que existen dos:


Vamos a crear contenido de este nuevo foro. Para ello ir a Contenido > Agregar contenido > Tema del foro. Seleccionar que es un item del nuevo foro Prácticas de Seguridad:


Como veremos en el punto 11, el aspecto de la interfaz es muy similar a la creación de una entrada de blog. En este caso es necesario indicar el foro asociado.

Lo dejamos visible para los usuarios registrados y roles de Administrador y Profesor.

Hemos guardado y publicado el item del foro y comprobamos que aparece en el bloque de Navegación.

8.4 Asignar permisos a roles para los tipos de contenidos

Podemos comprobar qué permisos tienen los usuarios con rol de Profesor respecto a la creación de contenidos. Para ello vamos al menú Personas pestaña de Permisos. La última columna es el rol de Profesor y si buscamos la zona de creación de los diferentes tipos de contenidos vemos que no tienen permisos para generar de ninguno de los tipos preexistentes ni el que hemos creado de Videotutoriales.

Aprovechamos para permitir al rol de Profesor crear contenidos de los tipos Videotutorial y Apuntes (no aparece, pero podemos crearlo como Administradores).



9 Uso de los nodos en Drupal 7

Cualquier elemento de contenido en Drupal 7 internamente se identifica mediante un nodo.

Cada nodo tiene su identificador único en la table node de la base de datos de Drupal. Lo podríamos comprobar yendo a http://localhost/phpmyadmin/.

Por ejemplo, el artículo o página básica que hemos creado en el punto anterior, si vemos en la zona de URL comprobamos que se corresponde con la dirección http://localhost/drupal/node/2. Es decir, el nodo 2 es el identificador del artículo que hemos creado.

Por lo tanto, cada vez que creamos un contenido estamos creando un nuevo nodo que podremos editar si tenemos los permisos adecuados.

Pero no todos los nodos son iguales, es decir, no todos tienen la misma estructura. Los nodos básicos (como pueda ser el asociado a un tipo artículo) almacenan cierta información. Pero existen nodos específicos asociados a módulos que, al activarlos y generar contenidos de estos tipos, almacenan información complementaria que amplían la información de un nodo básico.

Todavía no hemos hablado de los módulos, pero como ejemplo podemos decir que existe un módulo para las encuestas (poll). Si activamos este módulo (en el punto siguiente explicamos cómo) podremos generar formularios de encuestas que internamente de identificaran como nodos y en la tabla se almacenará toda la información necesaria.

Si de un nodo básico se almacenan los campos identificador, título y cuerpo, de un nodo tipo encuesta se almacena, además de estos campos, la fecha de expiración, el identificador de usuario, un identificador de voto y otras opciones específicas de la encuesta.

Pero, en Drupal no son todo nodos. Por ejemplo, los bloques, los usuarios y los comentarios no son nodos.


10 Módulos en Drupal 7

La funcionalidad de Drupal 7 está basada en la utilización de módulos. Existen ciertos módulos que son obligatorios, que se instalan y activan por defecto al instalar la herramienta. Pero existen muchos otros módulos que son opcionales y cuya activación o instalación-activación amplían las funciones disponibles.

El acceso principal a los módulos requiere se administrador y es directa desde el menú superior Módulos.

Hay módulos cuya casilla de activación está sombreada y que, por lo tanto, no podemos desactivar. Son módulos imprescindibles para el funcionamiento de Drupal. En muchos de ellos se indica qué parte o función de Drupal requiere dicho módulo. Son módulos del core de Drupal obligatorios.

La figura siguiente muestra una pequeña parte de la lista de módulos disponibles y en ella se puede observar qué operaciones se pueden realizar sobre ellos. También podemos ver la opción de Instalar nuevo módulo.


Como ejemplo de activación simple de módulo activamos Poll (Encuestas) que es el módulo que permite que el sitio capture votos sobre diferentes temas en forma de preguntas de opción múltiple. Guardar configuración.

Este módulo Poll es un módulo del core de Drupal pero no es indispensable para su funcionamiento.

Si ahora vamos a la lista de módulos vemos que en Poll al activarlo han aparecido dos operaciones: Ayuda y Permisos. Si vamos a Permisos podremos indicar las acciones disponibles sobre la encuestas y qué roles de nuestro sistema tienen opción a administrarlas.

Existen también los módulos externos que no aparecen en la lista, pero que podemos descargar, instalar y activar. Por ejemplo, desde el sitio oficial de Drupal http://drupal.org/project/modules.


Como ejemplo práctico de activación y configuración de módulo incluido en Drupal vamos a trabajar con el módulo Blog y el de Encuestas. Pero existen muchos otros interesantes como el módulo Contact que nos pueden servir para crear formularios de contacto personalizados, o el Content Traslation que permite el contenido sea traducido a varios idiomas, etc, los cuales simplemente habrá que activar y configurar.

10.1 Módulo Blog

Como administrador lo activamos desde la opción de menú Módulos y guardamos la configuración.

Ahora indicamos qué roles pueden actuar sobre los blogs y qué pueden hacer. Para ello vamos al menú Personas > Permisos y permitimos al rol Profesor crear entradas de blog, editarlas y eliminarlas. Marcamos las casillas correspondientes y vamos a Guardar permisos.

Abrimos una sesión en Drupal como un usuario del rol Profesor para crear una entrada de blog. Vamos en el menú de Navegación a Agregar contenido > Entrada de blog.

Damos un título a la entrada y escribimos el texto que consideremos y pulsamos en Guardar:


En Inicio veremos la entrada creada.

Por defecto las entradas de blog tienen los comentarios activados para todos los usuarios registrados, así que podremos añadir los comentarios que queramos. Los usuarios anónimos sólo podrán leerlos.

Las entradas de blog generan nodos que simplemente tienen los campos de un nodo genérico, no lo expanden. Son el identificador, el título y el cuerpo o texto.

Si queremos concretar mas las opciones de la entrada de blog generada vamos al menú de administración Contenido y editamos la entrada de blog creada. Las opciones disponibles son:

    Opciones del menú: para generar un enlace de menú que luego podremos utilizar.

    Información de la revisión: si se activa se permiten las revisiones y se puede personalizar un mensaje explicando los cambios realizados.

    Opciones de ruta URL: podemos desde aquí generar el alias que nos interese.

    Opciones de comentarios: esta opción puede estar abierta/cerrada, permitiendo a los usuarios con permisos enviar coemntarios o no.

    Información de autoría: permite modificar la autoría y fecha de creación de la entrada de blog.

    Opciones de publicación: por defecto publicado y promocionado a la página principal.

En ocasiones la activación de un módulo lleva implícita la aparición de nuevos bloques. Este es el caso del módulo Blog.

Si después de activarlo vamos a la opción de menú Estructura > Bloques, comprobamos que tenemos disponible el bloque Entradas de blog recientes pero que no está activado. Lo podemos situar en la barra lateral izquierda y asignarle un peso adecuado para que se situe abajo del menú de Navegación.


10.2 Módulo Encuestas

Activamos el módulo de encuestas (Poll). Vamos a la opción del menú de administración Módulos y buscamos la entrada Poll que marcamos. Guardar configuración.

Vamos a Configurar los permisos para los diferentes roles disponibles.

Por ejemplo, para el rol de Profesor vamos a permitir Votar en las encuestas. Guardar permisos.

Existen módulos cuya activación supone, a su vez, la activación de un bloque concreto. Este es el caso del módulo de encuestas (Poll). Si vamos a Estructura > Bloques comprobaremos que existe un bloque, por defecto desactivado, que se llama Encuesta mas reciente. Lo pasamos a la Primera barra lateral. El peso se ajusta en función de los otros bloques ya existentes en dicha barra.

Como bloque las encuestas permiten configuración, indicando diferentes opciones de visibilidad del bloque. Nosotros lo dejamos visible para los roles de administración y Profesor.

Ahora vamos a crear un sencilla encuesta de ejemplo.

Vamos a Contenido > Agregar contenido > Encuesta. Escribimos nuestras preguntas y dejamos activa y publicada la encuesta. La situamos en la Primera barra lateral:


Si queremos añadir otra pregunta, en realidad es una nueva encuesta que podemos crear y situar a continuación.

La encuesta está visible para los usuarios del rol Profesor que pueden ir votando y a la vez viendo como progresan las opciones votadas así como añadir sus comentarios. También se puede cancelar el voto si somos administradores. Todas estas opciones son configurables.

 


Podemos crear alias de rutas del sistema, sustituyendo los términos internos por otros que nos sean mas familiares. Por ejemplo, en el caso de las encuestas internamente se utiliza la palabra 'poll', pero podemos crear un alias entre la ruta por defecto y una nuestra:

Ruta por defecto de las encuestas: http://localhost/drupal/?q=poll

Alias creado por nosotros: http://localhost/drupal/?q=encuestas

Para poder crear alias de rutas debe estar activado el módulo Path.

10.3 Módulos externos

Ya hemos comentado que en http://drupal.org/project/modules hay disponibles gran cantidad de módulos que complementan y actualizan las funcionalidades de Drupal 7.

Módulos, como por ejemplo:

1.            Views (query builder) un constructor de consultas inteligentes de Drupal que permite mostrar vistas de datos seleccionados por el usuario (origen de los datos, campos a mostrar, condiciones de filtrado, tipo de ordenación, etc). Este módulo evita construir las consultas escribiendo código en PHP y generar informes de forma muy sencilla.

2.            Backup and Migrate permite automatizar las copias de seguridad de la base de datos de nuestro sitio creado con drupal o hacer la copia de la base datos de un sitio a otro sitio Drupal.

3.            Node clone permite clonar nodos y puede ser de gran utilidad si hay que hacer varios nodos similares. Con un clic se crea un nodo igual al clonado, y luego sólo hay que hacer los cambios necesarios.

4.            Printer, email and pdf versions, modulo que inserta tres enlaces en la parte inferior de los nodos y que proporcionan: una version para imprimir, la opción de enviar por correo electronico y generar un PDF utilizando alguna de las herramientas disponibles y que hay que tener instalada.

Para instalar un módulo externo hay que localizarlo en la web de Drupal y copiar la ubicación del enlace (botón derecho sobre el archivo tar correspondiente) del módulo en concreto que queremos instalar. Nosotros vamos a instalar el módulo Administration menu.

En nuestro sitio ir a Modulos > Añadir un nuevo módulo y en URL pegar la ubicación del enlace copiada. Pulsar en Instalar.

Luego se ha de activar este nuevo módulo que aparece mas abajo de los módulos del core, en el grupo de Administración. En Permisos y Configuración dejamos los valores por defecto.

También se puede instalar descargando el archivo tar al equipo y en Instalar nuevo módulo, desde Examinar localizamos el archivo tar.

El aspecto de la nueva barra de menú de administración es este:

Al pasar el ratón por las opciones de menú se van desplegando y muestran las opciones disponibles. Esta barra suele gustar mas para trabajar.

10.4 Desinstalación de módulos

En general para desinstalar un módulo lo primero que hemos de hacer es desactivarlo. En este paso hay que ir con cuidado porque puede ocurrir que ese módulo sea requerido para el buen funcionamiento de otros módulos.

En el menú desplegable de Modulos está la opción de Desinstalar. Si entramos veremos los módulos que se pueden desinstalar en ese momento y que deberán estar desactivados.

Si, por lo que sea, un módulo no permite su desinstalación desde la propia interfaz de administración habrá que hacerlo 'a mano'.

$ cd/var/www/drupal/sites/all/modules

$ ls

admin_menu i18n README.txt variable

Simplemente seleccionamos el directorio admin_menu y lo eliminamos. Pero ¡ojo con las dependencias! 

Tal y como se comentó en el punto 3.4 Estructura de archivos de Drupal, en el directorio /var/www/drupal/modules se encuentran los módulos del core y los nuevos módulos externos instalados se guardan en el directorio sites.

Cuando estamos trabajando con Drupal 7 dando servicio a varios sitios (Drupal multisites) hay que tener en cuenta que los módulos externos que se instalen van a un directorio  Modules dentro del directorio correspondiente a cada sitio en particular.

Por ejemplo, si tenemos dentro del multisite un sitio llamado  www.sitio1.com en /var/www/drupal/ habrá un directorio llamado /var/www/drupal/www.sitio1.com y dentro de este directorio habrá un subdirectorio para Files, otro para Modules y otro para Themes de ese sitio particular.


11 Sindicación desde Drupal

Recordemos que un canal web o feed se define como un medio de redifusión de contenido web y se utiliza para suministrar información actualizada a sus suscriptores.

Desde Drupal 7 se puede trabajar con feeds tanto RSS[4], RDF[5] como Atom[6]. Esto quiere decir que, cuando desde Drupal se está generando contenido, estos feeds permiten que se repliquen en todos aquellos sitios que nos han sindicado.

Un lector o agregador de feeds es una aplicación local o basada en web que interpreta los archivos RSS y visualiza su contenido.

Si se disponen de varios feeds RSS podemos leer una versión resumida de los contenidos de diferentes sitios web sin tener que de visitarlos uno por uno. Solo se accedería cuando se quisiera leer la versión completa.

Cada vez que un usuario añade un feed o canal a su agregador o lector de feeds se dice que se suscribe a ese feed.

11.1 Drupal como servidor de sindicación

La sindicación de nuestros contenidos se puede realizar gracias a un módulo core de Drupal que por defecto viene ya activado. En este caso nuestro Drupal está actuando como servidor de sindicación ya que otros sitios agregan nuestros contenidos.

La barra de URL muestra a la derecha el símbolo de sindicación que permitirá sindicar nuestro sitio web:

La ruta al feed RSS genérico de nuestro sitio Drupal es http://localhost/drupal/rss.xml. Pero también se pueden tener feeds a partes del sitio:

Si pulsamos sobre alguna de las etiquetas de nuestros artículos podemos acceder al Feed para esa etiqueta.

Si pulsamos sobre cualquiera de las categorías o foros accedemos al Feed para ese determinado foro.

En Configuración > Servicios web > Publicación RSS podemos configurar (dejamos las opciones por defecto):

Número de elementos de cada canal de noticias

Contenido sindicado:

Sólo títulos

Títulos y resumenes

Texto completo

11.2 Drupal como cliente de sindicación

Pero Drupal 7 también puede actuar como agregador de feeds RSS de otros sitios web. Para ello dispone del módulo core Aggregator, que no viene activado por defecto y que vamos a activar. Su objetivo es integrar contenido sindicado (canales de noticias RSS, RDF y Atom).

Para ello:

    Activar módulo: ir a Módulos > Aggregator, activar y Guardar configuración.

    Dar permisos: ir a Personas > Permisos y activar para el módulo Aggregator permisos para los roles de usuario anónimo y registrado, en concreto para:

    Acceder a canales de noticias

    Guardar permisos.

    Comprobamos que el rol de Profesor, como usuario registrado que es, hereda este permiso.

    Vamos ahora a: Configuración > Servicios web > Agregador de canales de noticias, cuyo objetivo es configurar qué contenido agrega nuestro sitio desde otros sitios, la frecuencia de actualización y su categorización.

Añadimos un canal de noticias referenciando al Observatorio Tecnológico del ITE: http://recursostic.educacion.es/observatorio/web/es/home?format=feed&type=rss

    Pulsar en Guardar.

    Para actualizar el feed podemos esperar a que transcurra el intervalo de actualización dado o podemos ir a Informes > Informe de estado > Ejecutar cron manualmente.

Podemos tambien categorizar los feeds de forma que queden agrupados elementos de canales de diferentes canales de noticias. Por ejemplo, varios canales relacionados con deportes pueden pertenecer a una categoría llamada Deportes.

Por ejemplo, si tenemos varios canales de noticias relacionadas con publicaciones técnicas relacionadas con las TIC en la educación, podemos editar cada uno de estos canales y asociarlos a una categoría ya existente TIC_Educación.

Ahora, al editar nuestro único canal creado Observatorio-ITE ya nos aparece en la parte inferior la opción de asociar el canal a la categoría creada (Categorizar elementos de noticias):

De esta forma podemos organizar nuestros feeds agrupandolos en categorías.

Obtener feeds es tan sencillo como acceder a Internet. Los propios sitios web, blogs, etc proporcionan esta opción. Por ejemplo, si lo que queremos es sindicar noticias sobre Drupal podemos utilizar Google y buscar la palabra Drupal y en Noticias ya tenemos la opción de sindicar, es decir copiar el feed RSS. De esta forma aprovechamos que Google tendrá actualizadas estas noticias de orígenes diferentes y nosotros las tendremos también actualizadas.

Una vez hemos copiado el feed vamos al Agregador de canales de noticias y creamos un nuevo canal 'Noticias Drupal' y en la URL pegamos el feed. Si tenemos una categoría especifica para este tema podemos categorizar el canal creado. Guardar.

Al igual que hemos hecho antes, si queremos que se actualice de forma inmediata hemos de ir a Informes > Informe de estado > Ejecutar cron manualmente.

Drupal 7 al crear nuevos canales de noticias y/o categoría genera bloques asociados que están desactivados por defecto. Podemos activarlos e indicar en que zona de nuestro sitio estarán visibles y a qué nivel.

Fijémonos que al crear el canal de noticias aparece un campo que indica 'Elementos de noticias en bloque'. En el podemos decir hasta cuantos canales queremos tener disponibles en el bloque generado.

Lo activamos y posicionamos en la segunda columna del pie de página y pasamos a configurarlo. Le damos un título y permitimos que esté accesible a los usuarios registrados.

Vamos a Inicio y comprobamos la sindicación realizada:

Por último decir que OPML és un formato XML utilizado para intercambiar múltiples canales entre agregadores. Un documento OPML puede contener muchos canales. Drupal puede analizar el archivo e importar todos los canales de una sola vez, ahorrándo así el trabajo de añadirlos manualmente. Se puede cargar un archivo local del ordenador o introducir una URL desde donde Drupal puede descargarlo.


12 Soporte multi-idioma

Vamos al menú Módulos y activamos el Content Traslation y Guardamos configuración.

A continuación podemos ver que en dicho módulo tenemos activas las opciones de Permisos que podemos configurar.

12.1 Configuración

    Pulsamos en Permisos y a los usuarios con rol de usuario registrado le dejamos que realice traducciones de contenido (por ejemplo). Guardar permisos.

    En el menú de administración vamos a Configuración > Regional e Idioma > Idiomas y añadir y activar los idiomas que se necesiten. En nuestro caso Inglés y Español.

12.2 Activar el soporte de traducción

    Ir a la opción de menú de administración Estructura > Tipos de Contenido

    Seleccionar el tipo de contenido que se quiere traducir y pulsar en Editar. En Opciones de publicación > Funcionamiento multi-idioma lo dejamos Habilitado con traducción.

    Hacer los mismo para todos los tipos de contenido que queramos con soporte multi-idioma.

Al crear o editar contenido de los tipos en los que se ha activado esta opción, hemos de seleccionar el idioma en la lista desplegable que muestra.

Tambien comprobamos que, si el rol del usuario tiene los permisos adecuados, tendrá disponible una nueva pestaña Traducir para realizar la traducción.

En esta pestaña se nos da la opción de generar la traducción:

Pulsamos en Agregar traducción y se genera un nuevo nodo en el que tendremos que incluir la traducción correspondiente al texto del artículo. Hay que tener en cuenta que la traducción del texto la hace el usuario.

Al Guardar e ir de nuevo a Inicio vemos que el artículo tiene la opción del idioma al pie del texto (English). Vemos también las opciones de Editar y Traducir porque estamos como administradores.

Si se quiere disponer de todo el sitio en bilingüe con opción a conmutar de idioma se ha de instalar el modulo de internacionalización i18n, que está disponible en http://drupal.org/project/i18n e instalamos siguiendo los pasos del punto 10.3.

Comprobamos en la web de Drupal que indica que este módulo i18n requiere tener instalado en módulo Variable que instalamos y activamos de la misma forma tanto el módulo principal como todos los módulos que ha arrastrado.

Ahora ya podemos activar el módulo i18n.

Vamos ahora a Estructura > Bloques y activamos el bloque Alternador de idiomas y lo situamos en el Header Menu.

Vamos ahora a configurarlo. Le asignamos el nombre Idioma y dejamos que todos los usuarios puedan utilizan este alternador de idioma, que se muestre el bloque para cualquier tipo de contenido. Guardar el bloque.


13 Conclusión y enlaces

La amplitud de Drupal 7 requiere un curso práctico completo. Pero con esta aproximación se puede comprobar su potencia y flexibilidad.

Si un centro educativo quiere o necesita estar presente en la web de una forma estructurada, completa y con un mantenimiento sencillo, creo Drupal 7 es una elección apropiada. Tiene todo lo necesario, solo hay que tener claro qué información se quiere mostrar, cómo se quiere mostrar y cómo se van a gestionar los usuarios y sus roles asociados.

Independientemente si el centro ofrece formación a distancia a través de un LMS tipo Moodle, para lo que es publicidad e información general de la oferta formativa del centro, gestión de los departamentos educativos, tutorías, noticias de interés, avisos de Secretaría, etc, con Drupal 7 queda cubierto ampliamente.

Enlaces que se incluyen:

    En http://www.drupalbook.com/ hay disponibles libros sobre el desarrollo en Drupal.

    http://www.lullabot.com/podcast/drupal-voices hay entrevistas a personas implicadas en Drupal en algún sentido.

    En http://acquia.com/resources/podcasts también hay discusiones y entrevistas sobre Drupal.

    En http://www.artisteer.com/ hay disponibles vídeos sobre este tema.

    http://drupad.com/ aplicación que funciona en iphone, ipod y ipad que sirve para administrar sitios desde estos dispositivos.

    http://www.drupalmexico.com/ tiene un curso completo sobre Drupal.

    Druppix es una distribución de linux que sirve para usar Drupal, para probarlo y aprender. Es de Chile.

    Drupalizeme tiene vídeos de iniciación a Drupal producidos por Lullabot relacionados con la programación.

Notas

Recordar que RDFa es un conjunto de extensiones de XHTML propuestas por W3C para introducir semántica en los documentos.

Recordar que PDO es un acrónimo de PHP Data Objects y es una capa de acceso a los datos que utiliza un sistema unificado API (Interfaz de Programación de Aplicaciones) y facilita la escritura de código a los desarrolladores. 

Es importante diferenciar entre Taxonomía y Thesaurus. Ambos son vocabularios pero la taxonomía jerarquiza la información, sin embargo el Thesaurus establece relaciones entre términos que pueden ser en todas las direcciones.

RSS (Really Simple Syndication): formato XML para sindicar o compartir contenido en la web

RDF: La versión 1.0 del lenguaje RSS también es conocida como RDF.

Atom: formato XML, similar a RSS, que permite la distribución de contenidos y noticias de sitios web. Un documento Atom puede contener más información (y más compleja) y es más consistente que un documento RSS. (http://www.microsiervos.com)