Drupal 6

Drupal
Un repaso muy breve y general al gestor de contenidos Drupal.

En la fecha en la que realizamos el resumen (abril/2013) la versión estable que usamos es la 6.x

Drupal: Conceptos (I)

Qué es Drupal

Drupal es un Gestor de Contenidos Modular (CMS) de código libre. Permite generar y gestionar un sitio en Internet. Es muy configurable y personalizable.

Está conformado por código abierto, tiene licencia GNU/GPL, y está escrito en lenguaje PHP.

Ha sido desarrollado y está mantenido por una amplia y activa comunidad de usuarios.

Sobresale la calidad del código y la calidad de las páginas generadas, respetando los estándares de la web. Trata especialmente la usabilidad y la consistencia del sistema en su conjunto.

Qué tiene Drupal

El gestor de contenidos Drupal consta de una serie de ficheros y directorios iniciales, formando un conjunto, el "Core".

Para personalizar al máximo su uso y funcionalidad, se le añaden "Módulos" y "Temas".

Los modulos nos permiten ampliar las características básicas iniciales del conjunto, configurarlo y adaptarlo a nuestras necesidades.

Los temas nos permiten personalizar la parte visible del conjunto, lo que los usuarios ven y con lo que interactúan.

Cómo funciona internamente

Roles

Los roles determinan unos grupos a los que pertenecen los usuarios. Cada rol puede tener unas características diferentes y totalmente personalizables.

Permisos

Los permisos determinan qué puede o no puede hacer en el sitio cada rol. Se pueden configurar y personalizar.

Usuarios

Los usuarios pertenecen a un rol, cada rol tiene sus permisos. Por lo tanto: cada usuario, según el rol al que pertenezca, tendrá unos permisos para hacer o no hacer determinadas cosas en el sitio.

Contenido

Los elementos que nos permiten añadir contenido al sitio se dividen, básicamente, en dos tipos:
- Página ("page"): son elementos estáticos en los menús.
- Artículos ("story"): son elementos dinámicos.

Los primeros se usan para crear un contenido que no varíe demasiado en el tiempo. Por ejemplo los apartados de "Quienes somos", "La empresa", "Contacto", "Localización", etc.

Los segundos se usan para añadir contenido de forma periódica al sitio: artículos, noticias, productos, etc. Permite filtrar los contenidos en función de diferentes criterios.

Se pueden crear nuevos tipos de contenido, adaptados a nuestras necesidades y ajustados a las características que vamos a usar.

Taxonomías

Las "taxonomías" son los términos que usa Drupal para organizar el contenido, pudiendo filtrar la salida de las páginas en función de los mismos. Los términos se agrupan en "vocabularios".

Vistas

Es la forma que tiene Drupal de mostrar el resultado de una búsqueda, filtrándola según los criterios establecidos. Es totalmente personalizable.

Bloques

Los bloques permiten gestionar el modo en que determinada información se muestra en el portal, pudiendo ubicarlo y configurarlo para que muestren una información u otra y para que se muestre o no se muestre a un rol determinado.

Menús

Los menús permiten organizar los enlaces que queremos mostrar en el portal. También podemos configurar el lugar en que queremos que se muestren u ocultarlos.

Ayuda

Existen temas de ayuda según los módulos activados.

Si hemos activado "Advanced help" tendremos otras opciones.

Drupal: Descarga y preparación previa (II)

Descarga

Núcleo o "Core"

http://drupal.org/project/drupal
Descargar la última versión estable de Drupal que tenga el mayor número posible de módulos disponibles. Por ahora la 6.x.

Hay que tener muy presente que cualquier traducción, módulo, tema, etc., que descarguemos debe ser acorde a la versión del núcleo de Drupal que vamos a usar.

Traducción

http://localize.drupal.org/translate/languages/es
Descargar la traducción correspondiente a la versión que estamos manejando.

Preparación para instalar

sites
sites/default
Crear el directorio "files" en sites/default, darle permisos 777.
Copiar el fichero default.settings.php y renombrarlo a settings.php, darle permisos 777. Al terminar, deben quedar ambos ficheros: default.settings.php y settings.php.

all
sites/all
Crear dos directorios denominados "themes" y "modules" en sites/all.

Basta con pegar en cada carpeta los módulos o temas que necesitemos y activarlos luego en el sitio.

translations
profiles/default/translations
Crear el directorio "translations" en profiles/default y guardar dentro el fichero de traducción que hemos descargado previamente, renombrado a "es.po".

www
Si queremos la dirección del portal con www o sin www, debemos configurar el fichero htaccess, descomentando las líneas correspondientes.

Si queremos la URL con www, hay que eliminar el comentario de la línea 90 y 91.
# RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
# RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

Si queremos la URL sin www, hay que eliminar el comentario de la línea 96 y 97.
# RewriteCond %{HTTP_HOST} ^www\.usasoftwarelibre\.es$ [NC]
# RewriteRule ^(.*)$ http://usasoftwarelibre.es/$1 [L,R=301]

Sólo descomentamos un grupo u otro.

Se sustituye "example.com" por la dirección del sitio que estamos gestionando.

El fichero está oculto y se llama .htaccess, para verlo se quita el punto. En el servidor debe estar como .htaccess

Si el fichero .htaccess no está en el servidor, las URL limpias no funcionarán.

Drupal: Instalación (III)

FTP

Subimos por FTP el contenido preparado anteriormente al servidor. Si vamos a trabajar en "localhost", lo dejamos en la carpeta en nuestro servidor local.

Si queremos usar otros módulos o temas diferentes a los que trae el Core de Drupal, debemos subirlos a las carpetas "modules" y "themes".

Eventualmente, algunos módulos podrían necesitar que se creen otras carpetas, por ejemplo para las librerías o bibliotecas.

Instalación

Instalación

Abrimos la direccion del sitio y comienza la instalación. Si todos los pasos anteriores se han dado, preguntará si queremos instalar en "inglés" o en "español".

Necesitaremos el nombre de la Base de Datos, su nombre de usuario y la clave de acceso a la Base de Datos. También el nombre de usuario, una dirección de correo electrónico y una clave para acceder al sistema.

Una vez finalizada la instalación, el sistema nos avisará y cambiaremos, vía FTP, los permisos al directorio "files" a 755; y al fichero settings.php, cambiarle los permisos a 644.

Traducción inicial

Acceder al portal para traducir el contenido.

Pulsamos "Administer | Translate interface".
"Import"
"Examinar"
Localizar el fichero "es.po"
"Import"

Ajustes iniciales

Mantenimiento del sitio

Activamos el portal en modo mantenimiento.

"Administrar | Configuración del sitio | Mantenimiento del sitio"
Cambiamos el mensaje si queremos.
"Desconectado"
"Guardar configuración"

Puede darse el caso de que hayamos activado el sitio en "modo desconectado" y cerremos la sesión, con lo que los enlaces no estáran disponibles. En ese caso, basta con añadir "/user" al nombre del dominio para tener la página de acceso para identificarnos de nuevo en el sistema.

Fecha y hora

"Administrar | Configuración del sitio | Fecha y hora"
Zonas horarias configurables por los usuarios: Desactivado
Primer día de la semana: Lunes
Formato corto de fecha: dd/mm/aaaa
Formato medio de fecha: día, dd/mm/aaaa
Formato largo de fecha: día, dd mes aaaa
"Guardar configuración"

Opciones de usuario

Impedimos que se puedan registrar los usuarios libremente.

"Administrar | Administración de usuarios | Opciones de usuario"
Registros públicos: Sólo los administradores del sitio pueden crear nuevas cuentas de usuario.
Es necesaria la verificación por correo cuando un visitante crea una cuenta: Marcado.
Permitir firmas: Desactivado ó Activado
Soporte para imágenes: Desactivado ó Activado
"Guardar configuración"

Permitimos que se puedan registrar los usuarios libremente.

"Administrar | Administración de usuarios | Opciones de usuario"
Registros públicos: Los visitantes pueden crear cuentas con la aprobación del administrador.
"Guardar configuración"

Roles

Creamos grupos para poder asignar luego a los usuarios, según su perfil pueden hacer unas acciones o no.

"Roles"
Poner un nombre corto y explicativo y "Añadir rol".

Ahora, una vez creado el rol, podemos darle los permisos adecuados para los módulos instalados. Si, posteriormente, instalamos nuevos módulos, o creamos nuevos tipos de contenido, debemos volver a los permisos para actualizar dichos datos respecto de los nuevos tipos de contenido o módulos instalalados.

Usuarios

Crear un usuario de prueba para cada rol.

"Usuarios"
"Añadir usuario"
Nombre de usuario: nombre
Dirección de correo electrónico: dirección
Contraseña: clave
Confirmar contraseña: clave
Estado: Bloqueado ó Activo
Roles: seleccionar uno de los disponibles, dejando, al menos, "usuario autenticado"
Notificar al usuario acerca de su nueva cuenta: Marcado
Idioma: Español

Tema

"Administrar | Construcción del sitio | Temas"
Marcamos las casillas "Activado" de aquellos temas que queremos tener disponibles.
Marcamos la casilla "Predeterminado" para aquel tema que queremos usar.
"Guardar configuración"

URL limpias

Si el fichero .htaccess no está en el servidor, las URL limpias no funcionarán.

"Administrar | Construcción del sitio | Módulos"
En "Core - opcional", marcamos el módulo "Path"
"Guardar configuración"

"Administrar | Configuración del sitio | URL limpias"
Marcamos la casilla "Activado"
"Guardar configuración"

Actualizaciones

Actualización del sistema
Para actualizar el portal de Drupal, basta con sobreescribir el contenido, salvo el directorio sites.

Es una buena práctica hacer una copia de seguridad de la Base de Datos con Backup&Migrate.

Actualización de módulos
Si actualizamos algún módulo (basta con sobreescribir el existente con la nueva versión), ejecutamos
/update.php

Drupal: Mejoras I (IV)

Mejorando el sitio

Introducción

Ya hemos llevado a cabo la configuración inicial del gestor.

Ahora podemos mejorar el aspecto y comportamiento del sitio. Necesitaremos dejar en el directorio "sites/all/modules" algunos módulos. Luego necesitamos activar dichos módulos y, si dicho módulo tiene su traducción disponible, debemos descargarla e importarla al sitio para trabajar en español con ese módulo.

Los módulos se descargan e instalan en función de las necesidades.

Cuando en el texto se indique que hay que activar un módulo, se sobreentiende que, primero, lo hemos subido por FTP al directorio "sites/all/modules".

Sobre módulos y traducciones

Algunos módulos tienen traducción, así que la descargamos e importamos.

http://localize.drupal.org/translate/languages/es

"Administrar | Construcción del sitio | Traducir interfaz"
"Importar"
"Examinar"
Localizar el fichero "NombreModuloVersion.po"
"Importar"

Reconstruyendo permisos

Cuando instalamos algún módulo nuevo, los permisos para ese módulo están desactivados. Es necesario activar el uso del módulo para cada rol.

Para ello:
"Administrar | Administración de usuarios | Permisos"

Se presentan una serie de filas en las que, nominalmente, se muestran las diferentes acciones organizadas por módulos (acceder, administrar, create, delete, edit, ver,...) y, en las columnas, se muestran los roles existentes (usuario anónimo, usuario autenticado,...).

Marcamos las casillas necesarias y
"Guardar permisos"

Un sólo tipo de enlace

Esto permite que las url sean adecuadas:
- URL no amigables: ?q=direccion
- URL amigables: /node/1
- URL semánticas: /enlace

http://drupal.org/project/globalredirect
Necesitamos tener el módulo "Global Redirect" guardado en el directorio "sites/all/modules".

"Administrar | Construcción del sitio | Módulos"
En "Otros", marcamos "Global Redirect"
"Guardar configuración"

"Administrar | Configuración del sitio | Global Redirect"
Cambiar, si fuera necesario, las opciones o "Restablecer a los valores por defecto"
"Guardar configuración"

URL automáticas

El módulo "PathAuto" permite asignar URL de forma automática. Hay que activar, previamente, el módulo "Token".

"Administrar | Construcción del sitio | Módulos"
En "Otros", marcamos "Pathauto" y "Token"
"Guardar configuración"

Cambiando la página de inicio

Creamos la página que queremos usar como inicio (o cualquier otra) y la guardamos. Para ello:
"Crear contenido | Página"
Añadimos los datos que nos pide.
"Guardar"

Para enlazar esa nueva página (o cualquiera otra) como página principal (la que se muestra al llegar al portal), necesitamos el número de nodo. Para anotar el número de nodo de esa página:
"Administrar | Administración de contenido"

Aparece un listado con el contenigo generado hasta ahora (páginas, artículos, etc.).
En la columna de la derecha, bajo el epígrafe "Operaciones", aparece la opción "editar".

Si colocamos el puntero del ratón sobre dicho enlace, sin pulsar, en la barra inferior aparece el número de nodo al que hace referencia. Algo así:
?q=node/1

Ese es el número de nodo de ese contenido. En este caso el número 1.

Ahora vamos a configurar el portal para que la página de inicio sea ese nodo.

"Administrar | Configuración del sitio | Información del sitio"
"Página inicial predeterminada:"
Anotamos
"node/1"
"Guardar configuración"

Si sólo dejamos "node" como página principal se muestra, por defecto, la página de bienvenida de Drupal.

Tema

Nos interesa personalizar el tema que vayamos a usar para evitar que nuestro portal se parezca a otros sitios que usen el mismo tema.

Puede haber varios temas activados, pero sólo se permite seleccionar un tema. Se puede permitir cambiar de tema a los usuarios registrados.

"Administrar | Construcción del sitio | Temas"

Aparece una Captura de pantalla del tema, el Nombre del tema, la Versión, si el tema está Activado, si es el tema Predeterminado y la Operación que se puede realizar con ese tema (generalmente "configurar").

"Administrar | Construcción del sitio | Temas"
"Configurar"

Podemos configurar a nuestro antojo, de forma general (para todos los temas) o de forma específica para un tema:
"Cambiar la visualización"
"Mostrar información del envío en"
"Opciones de la imagen del logo"
"Opciones de iconos de acceso rápido"
Marcando o desmarcando casillas y anotando las rutas o bien subiendo las imágenes.
"Guardar configuración"

Datos del portal

"Administrar | Configuración del sitio | Información del sitio"
Añadir textos en "Lema", "Misión" y "Mensaje del pie de página".
"Guardar configuración"

Errores frecuentes

Gestionamos los errores más frecuentes, las páginas no encontradas y los accesos denegados.

Primero debemos crear el contenido adecuado a cada error según lo explicado más arriba y debemos tener en cuenta el número de nodo de cada página, según lo explicado más arriba.

"Administrar | Configuración del sitio | Informar de errores"
Página 403 predefinida (acceso denegado): node/nº
Página 404 predefinida (no encontrada): node/nº

Gestión de errores

Para evitar que se muestren los errores al usuario final en pantalla, gestionamos éstos.

"Administrar | Configuración del sitio | Informar de errores"
"Informar de errores"
Escribir los errores en el registro

Drupal: Mejoras II (V)

Metatags

Activar:
- PageTitle (Depende de: Token)
- NodeWords
- Nodeword basic meta tag

Aparecen nuevas opciones en Administración de contenido para el nuevo contenido que vayamos a introducir o bien el que ya hemos añadido.

"Administración de contenido | MetaTags"
Seleccionamos las opciones conveientes y añadimos los textos.

Es bueno tener palabras clave (155 caracteres) y una descripción (155 caracteres) para cada página.

En Google, podemos poner site:NombrePortal para ver qué contenido tiene indexado Google sobre ese portal.

"Administar | Por módulo | Node"
Configurar Meta tags to show on edit forms
Descripción y palabras clave
Máx. metatag length 155
Lo más importante que queremos que aparezca en Título de la página

En Default and specific meta tags, podemos configurar diferentes páginas específicamente.

Gestionar los Bloques

Se pueden construir bloques personalizados.

Dentro de un bloque personalizado se puede incluir todo el contenido que se quiera, así como qué rol lo puede ver.

La ubicación del bloque dentro de un tema está predeterminado para cada tema.

Las ubicaciones laterales y el pie de página son lugares básicos, las demás ubicaciones no, serán específicas de cada tema.

Se pueden activar las reglas de los bloques para todos los temas de forma global y/o para un tema concreto. En cada caso habrá una prevalencia de una sobre otra. Es decir, si un elemento no está activado en un bloque particular, no se verá, aunque sí esté activado de forma general para todos los bloques.

Los bloques se pueden mover o activar a voluntad, simplemente arrastrándolos. Lo que hagamos con ellos no surte efecto hasta que no se guarda esa configuración.

Los bloques se pueden configurar según nuestras necesidades.

Para que un bloque no muestre el título escribimos en dicho apartado. Es muy útil para bloques creados por nosotros.

Los bloques "navegación" e "inicio de sesión" son excluyentes: se muestra uno u otro, nunca los dos.

Si se pierde de vista el bloque "navegación" y estamos ya identificados como usuario registrado, ponemos /admin al final de la ruta.

"Administrar | Construcción del sitio | Bloques"
Se muestra la disposición de los diferentes elementos, podemos reorganizarlos.
"Guardar configuración"

Añadir bloque personalizado

"Administrar | Construcción del sitio | Bloques | Añadir bloque"
"Opciones específicas del bloque"

Añadir los datos correspondientes en "Descripción del bloque", "Título del bloque" y "Cuerpo del bloque (incluido html)".

Dentro del apartado "Cuerpo del bloque", podemos poner lo que queremos mostrar: texto, enlaces, imágenes, etc.

Seleccionar el "Formato de entrada" para que sea "Filtered HTML" o "Full HTML".

En "Opciones de visibilidad específicas por usuario", en "Opciones de visibilidad personalizadas", seleccionar la que más nos convenga si es necesario:
- Los usuarios no pueden controlar la visibilidad de este bloque.
- Mostrar este bloque de forma predeterminada, pero permitir a cada usuario ocultarlo.
- Ocultar este bloque por defecto, pero permitir a usuarios individuales mostrarlo.

En "Opciones de visibilidad específicas por rol", "Mostrar el bloque a roles determinados", seleccionar la que queremos si es necesario:
- anonymous user
- authenticated user
- otros roles

En "Opciones de visibilidad específicas por página", "Mostrar el bloque en páginas específicas", seleccionar la que queremos si es necesario:
- Mostrar en todas las páginas salvo en las de esta lista.
- Mostrar sólamente en las páginas de esta lista.
- Mostrar si el siguiente código PHP devuelve el valor TRUE (modo PHP, sólo para expertos).
"Guardar bloque".

Mostrar bloque

"Administrar | Construcción del sitio | Bloques"
En el apartado "Desactivado" localizamos el bloque que deseamos activar.
En la columna "Región", seleccionamos el lugar donde queremos que se muestre el bloque dentro de la página. O bien, con el puntero del ratón pulsamos sobre el manejador situado más a la izquierda del nombre del bloque (una cruz con flechas) y lo arrastramos a la región que queremos.
"Guardar bloque".

Configurar bloque

En cualquier momento, una vez situado el bloque en su sitio y guardado, podemos volver a configurarlo (título, a quién se muestra, en qué paginas, etc.) pulsando sobre "Configurar", situado en la columna "Operaciones".

Borrar bloque

En la columna "Operaciones", pulsamos sobre "Eliminar".

Menú Jerárquico

Podemos crear un menú desplegable cuando creemos contenido y marquemos en 'Opciones de menú' que pertenece a un elemento padre que nosotros hayamos creado, formando así una jerarquía.

Para que esta jerarquía sea efectiva hay que seleccionar un tema que permita estos menús y además en la administración de menús hay que activárselos. También existe un módulo que lo permite Jquery Menu, hace que los menús aparezcan colapsados.

Una vez añadido algún contenido (páginas o artículos), para tener un Menú jerárquico (un contenido dentro de otro ya creado, desplegable) y si el tema predeterminado lo permite, hay que activarlo.

"Administrar | Construcción del sitio | Menús | Enlaces principales (o secundarios)"
activar Expandido del contenido deseado.
"Guardar configuración".

También podemos ordenar los elementos del menú. Para ello:
"Administrar | Menús | Elegir el nombre del menú | Ordenar a nuestro gusto"
"Guardar"

Búsquedas

Para permitir búsquedas en el portal, hay que activar el módulo Search:
"Administrar | Construcción del sitio | Módulos | Core - opcional | Search"
Activarlo.
"Guardar configuración".

Luego, en el tema activado y predeterminado, hay que activarlo en
"Administrar | Construcción del sitio | Tema | Cambiar la visualización"
Bloque de búsqueda
"Guardar configuración".

Este módulo de Búsqueda sólo busca contenido si se indexa el contenido. Para ello, se debe ejecutar manualmente cron (/admin/reports/status/run-cron) o bien configurarlo para que realice el indexado periódicamente (debe ejecutarse desde el panel de control del servidor).

Estadísticas
"Administrar | Construcción del sitio | Módulos | Statistics"

Informes del sitio
"Administrar | Configuración del sitio | Informes del sitio"

Opciones registro Acceso

Activar Registro acceso para conocer la información estadística que mantiene Drupal acerca del sitio.

"Administrar | Opciones del registro de acceso"
"Activar el registro de acceso" marcado
"Descartar los registros de acceso anteriores a" 1 semana
"Guardar"

En principio sólo está visible para User1, pero se puede activar para los demás usuarios.

Copia de Seguridad

Con el módulo Backup & Migrate se puede hacer una copia de seguridad de la base datos. También restaurarla.

Esta copia de seguridad, combinada con una copia del directorio "sites" permite restaurar la configuración del portal.

"Administrar | Backup and Migrate | Backup now"
Seleccionar dónde guardar el fichero generado.

Subir archivos

Activar el módulo IMCE.
"Administrar | Construcción del sitio | Módulos | IMCE"
"Guardar cambios".

En Menú navegación, "Mi cuenta File Browser" aparece la carpeta raíz de ese usuario. Ahí se incorporan todas las imágenes, código CSS, etc. de ese usuario. Se puede configurar a medida.

"Administrar | Configuración del sitio | IMCE"
Se pueden ver y configurar las diferentes opciones.

Formato de texto e imágenes

Formato de texto

Con el módulo BUEditor se puede dar formato HTML al texto, también se puede añadir una imagen.

"Administrar | Construcción del sitio | Módulos | BUEditor"
"Guardar cambios".

Al generar contenido, aparece una barra de formato de texto sobre el campo.

Sobre la barra, pulsar Insert/edit image. Hay dos opciones:
- "Subir una imagen nueva | Buscar" y "Subir".
- Usar una imagen ya subida y usar "Send to editor".

En ambos casos Full HTML.

Para SEO, en el caso de las imágenes, es bueno que el nombre de la misma también tenga el nombre personalizado para la indexación.

Licencia de Creative Commons
Drupal 6 por Usa Software Libre está licenciada bajo Creative Commons Reconocimiento-CompartirIgual 4.0 Internacional License.
Creado a partir de la obra en http://www.usasoftwarelibre.es/content/drupal-6.

Manual