La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

CRIF "Las Acacias" Abril – 2010 Juan Félix Mateos

Copias: 1
Drupal 6 CRIF "Las Acacias" Abril – 2010 Juan Félix Mateos.

Presentaciones similares


Presentación del tema: "CRIF "Las Acacias" Abril – 2010 Juan Félix Mateos"— Transcripción de la presentación:

1 CRIF "Las Acacias" Abril – 2010 Juan Félix Mateos
Drupal 6 CRIF "Las Acacias" Abril – 2010 Juan Félix Mateos

2 ¿Qué es Drupal? Drupal es un gestor web de contenidos (CMS) que se distribuye con licencia GNU-GPL (software libre) y desarrollado con PHP. Drupal es la traducción del término neerlandés druppel, que significa gota. El fundador de Drupal es el belga de 31 años Dries Buytaert, que lo presentó por primera vez en 2001.

3 Características principales de Drupal
Drupal en sí, lo que conocemos como Drupal Core, ofrece una funcionalidad muy reducida, pero es una base muy bien diseñada para que otros puedan ampliar esa funcionalidad a través de extensiones, que se conocen como Módulos contribuidos. Tanto es así que muchos definen a Drupal más como un Framework que como un CMS. Drupal es extraordinariamente flexible. El código de Drupal está muy optimizado, por lo que es un sistema relativamente rápido teniendo en cuenta lo amplio de su espectro de aplicación. Mediante los temas podemos configurar completamente el aspecto de nuestros sitios.

4 Algunos puntos débiles de Drupal…
La interfaz de administración de Drupal resulta compleja y poco manejable. Su extraordinaria flexibilidad lo convierten en un producto complicado de configurar cuando se quieren desarrollar sitios avanzados. Drupal procura mantenerse siempre en la cresta de la ola de la tecnología, sacrificando para ello la compatibilidad de unas versiones con las anteriores.

5 … y sus posibles excusas
La versión 7 de Drupal promete ser una revolución en la usabilidad de la interfaz de administración. Aunque Drupal es complejo de configurar, permite crear sitios avanzados que con otros sistemas simplemente serían imposibles o requerirían programación "ad hoc" de extensiones, lo que suele resultar aún más complicado. Al renunciar a la compatibilidad con versiones anteriores consigue que el código sea más elegante y eficiente, además de aprovechar los últimos avances tecnológicos.

6 Las versiones de Drupal
En todo momento están disponibles tres versiones de Drupal que son las únicas para las que se ofrecen actualizaciones de seguridad. Versión de desarrollo: No se recomienda su uso en sitios en explotación. Versión actual estable: Es la versión recomendada para sitios en explotación. Versión anterior estable: Se recomienda la actualización de esta versión a la siguiente. Drupal incluye un módulo que nos avisa cuando se publican nuevas versiones de Drupal o aparece un parche que resuelve un fallo de seguridad importante. A fecha de hoy, la versión actual de Drupal es la 6.16, y la anterior es la 5.22.

7 Actualización de Drupal
Cada vez que se presenta una versión nueva de Drupal sólo incluye la actualización del núcleo y de los módulos del núcleo, pero no de los módulos contribuidos. Es responsabilidad de los desarrolladores de los módulos contribuidos adaptarlos a la nueva versión, y esto puede requerirles meses, o incluso renunciar a actualizarlos… por este motivo es aconsejable utilizar sólo módulos contribuidos de prestigio que ofrezcan garantías sobre su continuidad en el futuro.

8 ¿Cómo funciona Drupal? Drupal es una aplicación que se ejecuta sobre un servidor web y hace uso de PHP para efectuar consultas sobre una base de datos y construir dinámicamente las páginas que sirve al usuario utilizando estándares web como XHTML, CSS y JavaScript. En cierta forma Drupal es un intermediario entre los datos y los usuarios, encargado de suministrárselos en un formato atractivo y de ofrecerles opciones de interacción sobre ellos.

9 La estratificación de Drupal

10 Instalación de Drupal: Requisitos previos
Para instalar Drupal necesitamos: Espacio de alojamiento en un servidor web provisto de PHP 5.2. Generalmente se utiliza el servidor Apache. Acceso a una base de datos web (Drupal puede albergar sus tablas en una base de datos exclusiva o dentro de una base de datos que ya utilicemos para otros sistemas como blogs, comercio electrónico, …). Generalmente se utiliza el servidor de bases de datos MySQL.

11 Instalación de Drupal: Convertir nuestro ordenador local en un servidor web
XAMPP: Windows y Linux WampServer: Windows MAMP: Macintosh Descargar e instalar WampServer de

12 Instalación de Drupal: Crear la base de datos
Si tenemos contratado un alojamiento remoto es probable que la base de datos debamos crearla a través del panel de control (cPanel, Plesk). Si vamos a instalar Drupal en nuestro ordenador local podemos crear la base de datos directamente con phpMyAdmin.

13 Instalación de Drupal: Crear la base de datos con phpMyAdmin
El cotejamiento debe ser utf8_spanish_ci

14 Instalación de Drupal: Crear un usuario para la base de datos
Página de inicio Privilegios Agregar un nuevo usuario

15 Instalación de Drupal: Descomprimir y colocar los archivos de Drupal en el servidor
Descomprimir el archivo drupal-6.16.tar.gz utilizando, por ejemplo, 7-zip.org Copiar los archivos/carpetas anteriores en el servidor (mediante FTP en remoto, o directamente copiándolos a una subcarpeta dentro de c:/wamp/www). Una misma instalación de Drupal puede servirnos para varios sitios, facilitando así mucho las tareas de mantenimiento. En la carpeta sites/all colocaremos los módulos y temas que deseemos añadir a nuestra instalación básica de Drupal. Crear un duplicado del archivo sites/default/default.settings.php en la misma carpeta pero con el nombre settings.php y con los permisos 666.

16 Instalación de Drupal: Iniciar la instalación y traducir Drupal al castellano
Acceder a la dirección de nuestro servidor (por ejemplo, Hacer clic sobre el enlace Learn how to install Drupal in other language. Hacer clic sobre el enlace a translation of this Drupal version. Descargar el archivo de la traducción al castellano, descomprimirlo y copiar los archivos/carpetas resultantes en la carpeta raíz de Drupal (c:/wamp/www/drupal). Hacer clic sobre el enlace Return to choose a language.

17 Instalación de Drupal: Introducir los datos de la base de datos
Mediante la sección Opciones avanzadas podemos añadir un prefijo a las tablas de Drupal de modo que se acoplen sin problemas en una base de datos que ya estemos usando para otro sistema.

18 Instalación de Drupal: Configuración inicial del sitio
Antes de introducir ningún dato comprobar la sección URLs limpios. Si nuestro servidor no admite esta opción es porque no tiene activado el modulo rewrite_module de Apache; activarlo y pulsar F5. Usuario: admin Contraseña: cursodrupal Actualizar notificaciones

19 Instalación de Drupal: Fin de la instalación

20 Reasignar una contaseña al administrador
Si, por cualquier motivo (por ejemplo, hemos utilizada una dirección falsa para el administrador) no recordamos la contraseña del administrador y no podemos recuperarla mediante la opción Solicitar una nueva contraseña del bloque Inicio de sesión, tendremos que acudir a phpMyAdmin para editar la tabla users e introducir en el campo pass el hash MD5 de la nueva contraseña que deseemos asignar al administrador.

21 Módulos: Activación/Desactivación
Los módulos son fragmenos de código que añaden funcionalidad adicional a Drupal. Existen módulos del núcleo, que se distribuyen junto con Drupal, y módulos contribuidos que podemos instalar de forma separada. Es frecuente que los módulos de Drupal estén concebidos para permitir que unos puedan interactuar con otros; por ejemplo, un módulo de galería de imágenes y otro de comentarios pueden cooperar para que los visitantes tengan la opción de comentar las fotografías de la galería. Administrar>Construcción del sitio>Módulos

22 Módulos: Configuración
Administrar>Por módulo Configurar permisos Obtener ayuda

23 Módulos: Módulos esenciales (obligatorios) del núcleo
Block Filter Node System User

24 Módulos: Los principales módulos del núcleo
Blog: Enviar contenidos fácilmente Comment: Comentar contenidos Contact: Formulario de contacto Forum: Un foro básico Menu: Controla el sistema de navegación por menús Path: Permite crear alias más amigables para los URL Poll: Encuestas Taxonomy: Clasificar los contenidos mediante etiquetas Update Status: Saber si existen versiones nuevas Upload: Subir contenidos

25 Módulos: Algunos módulos contribuidos populares
CCK: Content Construction Kit Administration Menu FCKeditor Views: Sirve para configurar los listados de contenidos. Fivestar: Módulo de votaciones Pathauto: Crea automáticamente alias amigables para los URL Token: Permite personalizar los contenidos con marcadores de posición como %site-name FileField: Permite integrar campos de archivo en CCK ImageField: Permite integrar campos de imagen en CCK IMCE: Gestor de descargas Webform: Sirve para crear formularios Panels: Editor visual para crear distribuciones de contenidos adaptadas a cada usuario

26 Usuarios: Roles y Permisos
Administrar>Administración de usuarios>Usuarios: Inicialmente Drupal tiene un único usuario, el usuario 1, o administrador. Este usuario es especial, porque tiene poder absoluto sobre el sitio (lo puede todo, incluso estropear el sitio). Administrar>Administración de usuarios>Roles: Inicialmente Drupal tiene dos roles: Usuario anónimo Usuario autenticado Administrar>Administración de usuarios>Permisos: Drupal nos permite configurar los permisos de cada rol para cada módulo. Administrar>Administración de usuarios>Usuarios>Editar: Cada usuario puede tener asignado uno o más roles, que determinan sus permisos dentro del sistema.

27 Contenidos: Tipos de nodos y nodos
Los tipos de nodos son los tipos de datos que "comprende" Drupal: Artículos, encuestas, temas del foro, … Administración>Administración de contenido>Tipos de contenido: Inicialmente Drupal incluye sólo 2 tipos de nodos: Artículo/Story: Optimizado para publicar noticias mostrando los datos del autor, la fecha de creación, admiten comentarios y se muestran en la página principal. Página/Page: Ideal para contenidos estáticos. Los tipos de nodos se crean mediante Administrar>Administración de contenido>Tipos de contenido>Añadir tipo de contenido Los nodos poseen: Campos: Determinan las propiedades del nodo, como título, cuerpo, autor, … Opciones de funcionamiento básicas: Determinan cómo son tratados los nodos por Drupal; por ejemplo, si se publican automáticamente, o si se muestran en la página principal Opciones de funcionamiento añadidas: Ciertos módulos pueden añadir posibilidades adicionales a los nodos, como la capacidad de recibir comentarios. Los nodos se crean mediante Crear contenido.

28 Contenidos: Creación de nodos
Título Opciones de menú Cuerpo/Resumen Filtrado Revisiones Comentarios (*) Autoría Publicación (*) (*) Estas opciones pueden configurarse de forma predeterminada en el tipo de nodo, pero siempre prevalecen las establecidas en el propio nodo y, consecuentemente, al cambiar las opciones del tipo de nodo no se alteran automáticamente las de los nodos que ya teníamos previamente.

29 Contenidos: Presentación
Básicamente, cada página de un sitio Drupal muestra un único nodo o un listado de nodos en su zona principal Cada nodo es accesible a través de un URL del tipo /node/1

30 Contenidos: Navegación
Para facilitar la navegación por los contenidos podemos utilizar menús. Inicialmente Drupal incluye 3 menús: Navegación Enlaces primarios Enlaces secundarios Los menús se gestionan mediante Administración>Construcción del sitio>Menús.

31 Bloques, regiones y temas
Administrar>Construcción del sitio>Bloques: Cada página de un sitio Drupal, además de un nodo o listado de nodos, puede mostrar fragmentos de información adicional denominados bloques. Los bloques pueden mostrarse en diferentes zonas de la página, que se denominan regiones y que tienen "nombres propios". Los bloques pueden mostrarse en sólo algunas páginas y/o sólo a los usuarios de ciertos roles. La visualización de los menús depende de su bloque asociado. Al crear un menú se crea automáticamente un bloque, aunque inicialmente está desactivado. Administrar>Construcción del sitio>Temas: Las regiones posibles, sus posiciones, nombres y demás características están determinadas por el tema asignado al sitio.

32 Resumen de nomenclatura
Módulos Del núcleo Contribuidos Contenidos Tipos de nodos Nodos Usuarios Roles Permisos Menús Temas Bloques Regiones

33 Ejercicio: Crear un nodo y asignarle un acceso mediante menú
Crear un nodo de tipo página con las siguientes características: Título: Bienvenido al sitio de las jornadas TIC Título del enlace del menú: Inicio Elemento padre: Enlaces primarios Cuerpo: Este sitio es un medio de contacto para los asistentes a las <b>jornadas TIC</b>. Puedes contactar con el administrador en Formato de entrada: Filtered HTML Publicado: Sí Promocionado a la página principal: Sí Comprobar que este nodo se ha convertido automáticamente en la página inicial de nuestro sitio (la que aparece al hacer clic sobre el logotipo de Drupal o sobre la opción Inicio del menú Enlaces primarios) Comprobar que no aparece en negrita jornadas TIC porque el elemento <b> no está permitido en el formato de entrada Filtered HTML.

34 Ejercicio: Posibles mejoras al núcleo para crear contenidos
¿Qué sensaciones tiene después de crear su primer nodo en Drupal? Se agradecería un editor más completo para el cuerpo del nodo  Módulo WYSIWYG + FCKeditor Estaría bien que las direcciones de se ofuscaran automáticamente para evitar spam  Módulo SpamSpan

35 Ejercicio: Instalar WYSIWYG + FCKeditor
Crear una carpeta llamada modules dentro de sites/all Descargar el módulo WYSIWYG filtrando las categorías de módulos de drupal.org por compatibilidad con la versión 6.0 y por proyecto Filters/Editors. La versión disponible actualmente es WYSIWYG 6.x-2.1. Descomprimirlo y copiar la carpeta resultante WYSIWYG en la carpeta sites/all/modules. Activar el módulo mediante Administrar>Construcción del sitio>Módulos. Crear una carpeta llamada libraries dentro de sites/all Acceder a la página de administración del módulo mediante Administrar>Por módulo>WYSIWYG. Pulsar el enlace Download de la sección FCKeditor. Descargar FCKeditor 2.6.6, descomprimirlo y copiar la carpeta FCKeditor resultante en la carpeta libraries. Lo interesante de WYSIWYG es que nos permite asignar un editor diferente a cada formato de entrada. Acceder a la página de administración del módulo mediante Administrar>Por módulo>WYSIWYG y asignar el editor FCKeditor al formato Filtered HTML. Acceder al nodo de bienvenida, hacer clic sobre Editar y comprobar que al elegir el formato Filtered HTML aparece efectivamente el editor FCKeditor.

36 Ejercicio: Instalar SpamSpan
Descargar el módulo SpamSpan filtrando las categorías de módulos de drupal.org por compatibilidad con la versión 6.0 y por proyecto Filters/Editors. La versión disponible actualmente es spamspan 6.x-1.4. Descomprimirlo y copiar la carpeta resultante spamspan en la carpeta sites/all/modules. Activar el módulo mediante Administrar>Construcción del sitio>Módulos. Este módulo realmente es un filtro para los formatos de entrada, por lo que para hacer uso de él tendremos que acceder a Administar>Configuración del sitio>Formatos de entrada>Filtered HTML [Configurar] y activar la casilla Hide addresses using SpamSpan technique. Acceder al nodo de bienvenida, ver el código fuente de la página y comprobar que efectivamente se ha ofuscado. acceder a Administar>Configuración del sitio>Formatos de entrada>Filtered HTML [Configurar]>Configurar para activar la casilla Use a graphical replacement for

37 Ejercicio: Instalar Administration Menu
El acceso a las opciones de configuración mediante el menú Navegación resulta un tanto engorroso por el número de veces que tenemos que hacer clic, especialmente cuando al principio aún no tenemos muy claro dónde está cada opción y tenemos que ir buscándola. Para resolverlo podemos instalar el módulo Administration Menu, que insertará un menú desplegable (como el de cualquier aplicación) en la zona superior de nuestro sitio. Descargar el módulo Administration Menu filtrando las categorías de módulos de drupal.org por compatibilidad con la versión 6.0 y por proyecto Administration. La versión disponible actualmente es admin_menu 6.x-1.5. Descomprimirlo y copiar la carpeta resultante admin_menu en la carpeta sites/all/modules. Activar el módulo mediante Administrar>Construcción del sitio>Módulos.

38 Resumen: ¿Cómo instalar un módulo?
Descargarlo del sitio web de Drupal. Descomprimirlo. Copiar la carpeta resultante dentro de sites/all/modules. Administrar>Construcción del sitio>Módulos para activarlo. Administrar>Por módulos para ver sus opciones de configuración.

39 Módulos: El modulo SMTP Authentication I
Algunos hostings no permiten usar la función mail de PHP, o si hemos instalado nuestro servidor local mediante WampServer no tendremos un servidor de mail, y consecuentemente nuestra instalación de Drupal no podrá enviar correos. Para resolverlo podemos instalar el módulo SMTP Authenticacion. Tras instalar este módulo deberemos crear en su misma carpeta una subcarpeta llamada phpmailer y copiar en ella el contenido de la carpeta phpmailer de la versión de PHP que tengamos configurada:

40 Módulos: El modulo SMTP Authentication II
Imaginemos que queremos utilizar una cuenta de gmail como remitente genérico de nuestro sitio. Deberemos introducir esta cuenta en Administrar>Configuración del sitio>Información del sitio y configura SMTP Authentication como se muestra en la figura. Es necesario que tengamos instalado el módulo php_openSSL La mayoría de los servidores (como educa.madrid.org) utilizan el puerto 25, pero gmail utiliza el 465.

41 Taxonomía: Vocabularios y términos
El módulo de Taxonomía nos permite asignar etiquetas a nuestros nodos, de modo que luego podemos acceder a todos los nodos que comparten una misma etiqueta. Estas etiquetas se denominan términos. Los términos deben agruparse en vocabularios, que pueden ser de dos tipos: Etiquetas: El propio usuario puede escribir libremente los términos. Fijos: Los términos deben elegirse de entre los que contiene el vocabulario, pudiendo forzar a que se elija al menos uno o permitir que se elija incluso más de uno. Cada vocabulario puede asignarse a uno o más tipos de nodos. Se pueden configurar los términos jerárquicamente, de modo que unos sean hijos de otros. Cada término de cada vocabulario tiene aparejado un número, y el listado de los nodos que tienen asignado ese término son accesibles a través del URL taxonomy/term/1. Además podemos mostrar nodos de varios términos: taxonomy/term/1,2: Muestra el listado de los nodos que tienen asignados los términos 1 Y 2. taxonomy/term/1+2: Muestra el listado de los nodos que tienen asignados los términos 1 O 2. taxonomy/term/1/2: Muestra el listado de los nodos que tienen asignado el término 1 o cualquiera hijo de él hasta 2 niveles de profundidad. taxonomy/term/1/all: Muestra el listado de los nodos que tienen asignado el término 1 o cualquiera hijo de él. Para crear un vocabulario recurriremos a Administración de contenido>Taxonomía>Agregar vocabulario. Para crear un término recurriremos a Administración de contenido>Taxonomía>Agregar términos. Para conocer el número aparejado a un término concreto recurriremos a Administración de contenido>Taxonomía>Lista de términos. El módulo de taxonomía es muy versátil, permitiendo por ejemplo que un término posea varios padres, o incluso que tenga sinónimos.

42 Ejercicio: Crear un vocabulario
Crear un vocabulario llamado "sesiones", que sólo permita elegir entre términos predefinidos y que obligue a elegir un término y sólo uno. Agregar a este vocabulario los términos "General", "Sesión 1", "Sesión 2" y "Sesión 3". Crear 3 nodos de tipo página llamados "Programa sesión #", cuyo contenido sea el supuesto programa de actividades de una sesión y asignando a cada uno un término de los creados anteriormente. Crear un cuarto nodo de tipo página llamado "Programación de sesiones" que simplemente contenga un enlace a cada uno de los nodos anteriores y que tenga asignado el término General.

43 Ejercicio: Crear un menú para el vocabulario
Instalar el módulo taxonomy_menu y activarlo. Editar el vocabularios sesiones para que se cree automáticamente un menú para sus términos dentro de Enlaces primarios (Administrar>Administración de contenido>Taxonomía>editar vocabulario). Modificar la jerarquía de los término para que General sea el padre de los demás (Administrar>Administración de contenido>Taxonomía>lista de términos). Modificar las opciones de los menús para que las opciones de menú secundarias de las opciones de Enlaces primarios se muestren en Enlaces secundarios (Administrar>Construcción del sitio>Menús>Opciones>Origen para los enlaces secundariosEnlaces primarios).

44 Registro de usuarios Administrar>Administración de usuario>Opciones de usuario Existen 3 métodos de registro: Sólo los administradores pueden crear usuarios. Cualquiera puede registrarse sin más. Cualquiera puede solicitar registrarse, pero deberá ser aprobado por un administrador. Conviene dejar activada la casilla de confirmación por . Podemos configurar el texto de los correos que el sistema envía a los nuevos usuarios. Podemos admitir el uso de firmas. Podemos admitir el uso de avatares.

45 Ejercicio: Registro de usuarios
Configurar Drupal para que permita el registro de usuarios pero que deban ser aceptados por el administrador. Registrarse como un usuario nuevo. Activar el usuario como administrador. ¿Qué perfil adquiere por defecto este nuevo usuario?

46 Ejercicio: Roles y permisos
Crear un rol nuevo llamado autor con los siguientes permisos: Acceder a los contenidos Crear contenidos de tipo artículo Modificar sus propios artículos Asignar este rol al usuario creado en el ejercicio anterior. ¿Puede este usuario subir imágenes mediante IMCE?

47 Perfil de usuario Cada usuario de Drupal adquiere automáticamente una opción en el menú Navegación (desactivable) para acceder a una página con opciones referentes a su cuenta: Puede modificar sus datos ( , contraseña, …) Elegir un avatar

48 Masquerade Al configurar los roles y permisos de usuarios es esencial comprobarlos concienzudamente y para hacerlo cómodamente disponemos del módulo Masquerade, que nos permite acreditarnos fácilmente en el sistema como cualquier otro usuario y regresar posteriormente a nuestro rol de administrador sin tener que escribir nombres de usuario ni contraseñas. Este módulo puede ofrecer las opciones de cambio de usuario a través de un ítem de menú o de un bloque.

49 TAC: Taxonomy Access Control I
TAC es un módulo que permite controlar el acceso de los usuarios a los nodos filtrándolos por: Roles de usuario Términos de vocabulario asignados a los nodos En otras palabras, TAC controla qué roles tienen acceso a qué nodos basándose en los términos de taxonomía que estos últimos tienen asignados. Para que TAC pueda aplicarse a un rol, ese rol debe tener en la configuración general de permisos de Drupal (Administración de usuarios>Permisos): Activado el permiso de acceso a nodos. Desactivado el permiso de administración de nodos. Desactivado los permisos de edición y eliminación si queremos controlarlos a través de TAC. Todos los roles heredan las propiedades del rol Usuario autenticado y, en este sentido, debemos tener en cuenta que un permiso permitido (Allow) en cualquier rol de un usuario prevalecerá sobre la denegación de ese mismo permiso (Deny) en cualquier otro rol de ese mismo usuario (recordemos que un mismo usuario puede tener asignados varios roles). A su vez, un nodo podría tener asignados varios términos de taxonomía; en este caso prevalece la denegación (Deny) sobre la permisión (Allow) dentro del mismo rol (recordemos del punto anterior que si intervienen varios roles siempre prevalece la permisión (Allow) sobre la denegación (Deny).

50 TAC: Taxonomy Access Control II
Los permisos que se pueden configurar a través de TAC son: Ver: Determina si el rol puede ver los nodos que tienen asignado ese término. Actualizar: Para que funcione debemos desactivar el privilegio de actualización en la configuración de permisos de Drupal. Eliminar: Para que funcione debemos desactivar el privilegio de eliminación en la configuración de permisos de Drupal. Crear: Permite al rol asignar ese término a los nodos que cree. Lista: Permite mostrar el nodo a través de la taxonomía (/taxonomy/term/1). Si un rol tiene privilegio de Lista pero no de Ver, no podrá ver los nodos que tengan asignado ese término. Si un rol tiene privilegio de Ver pero no de Lista, podrá ver el nodo a través del acceso habitual a los nodos (node/1), pero en él no se mostrará el término de taxonomía que tiene asignado. La configuración de TAC se realiza a través de Administración de usuarios>Taxonomy Access Permissions TAC permite asignar permisos a cada término, pero también nos ofrece una opción default (predeterminada) en cada vocabulario, que se utiliza en ausencia de una configuración de permisos más específica.

51 Ejercicio: Taxonomy Access Control
Crear un tipo de nodo nuevo llamado Noticia de informática (noticia_informatica). Crear un vocabulario de taxonomía llamado Informática que incluya los términos software y hardware (que obligue a elegir forzosamente uno de los dos) y asignado al menú Enlaces primarios. Crear dos roles llamados Redacción de software y Redacción de hardware, ambos con permiso de Acceso al contenido y creación de noticia_informatica. Crear dos usuarios, uno en cada rol, llamados Paco de software y Paco de hardware. Configurar Masquerade para que permita alternar entre estos usuarios. Configurar TAC para que cada Paco sólo pueda ver, editar, eliminar, crear y listar noticias de informática de su redacción (software o hardware). Crear una noticia de informática con el perfil de Paco de software ¿puede verla Paco de hardware? Configurar TAC para que cada Paco pueda ver todas las noticias de informática pero crear sólo las de su redacción.

52 IMCE IMCE es un gestor de subida de archivos con el que nos resultará muy sencillo incluir imágenes en nuestros nodos. Además permite configurar permisos con tamaños máximo de archivo, extensiones de archivos, y carpetas de destino. Instalar y activar IMCE WYSIWYG API Bridge IMCE Administrar>Wysiwyg>Editar FCKeditor>Buttons and Plugins  Activar Image, IMCE y todos los demás botones que se deseen. Administrar>Configuración del sitio IMCE IMCE incluye el enlace Explorador de documentos en la página del perfil de cada usuario para que pueda gestionar en un lugar centralizado todas sus imágenes.

53 Ejercicio: IMCE Insertar una imagen en un nodo.
Hacer clic sobre el icono Insertar/Editar imagen de FCKeditor. Pulsar el botón Ver servidor. Pulsar el enlace Subir. Pulsar el enlace Enviar a fckeditor. Pulsar el botón OK.

54 Perfiles IMCE IMCE usa sus propios perfiles, que se configuran mediante Administrar>Por módulo>IMCE. Cada perfil de IMCE puede asociarse a uno o más roles de usuario Drupal. Para cada perfil podemos configurar: Tamaño máximo de archivo admitido Cuota máxima por directorio Cuota máxima por usuario Extensiones admitidas Tamaño máximo de las imágenes Directorios a los que tiene acceso cada usuario (%uid) y con qué permisos (Explorar, Subir, Miniaturas, Eliminar o redimensionar) Los tipos de miniatura que puede generar.

55 Ejercicio: Perfiles IMCE
Crear un perfil de IMCE llamado autor que permita acceder a los siguientes directorios: Uno con el id del usuario en el directorio /sites/default/files, con permiso de explorar, subir y miniaturas. Otro llamado imágenes generales en el directorio /sites/default/imagenes_generales, sólo con permiso de explorar. Permitir que pueda generar dos tipos de miniaturas: pequeñas (45x45) y grandes (90x90). Comprobar que la carpeta imágenes_generales se crea automáticamente la primera vez que el usuario intenta insertar una imagen.

56 Blog El módulo Blog nos permite crear automáticamente un blog para cada usuario (si en su rol tiene permiso para crear entradas de blog). El blog de cada usuario es accesible a través del url /blog/%uid Al activar el módulo Blog se crea automáticamente en el menú Navegación una opción que permite acceder al blog propio, pero como está subordinada a otra opción general (Bitácoras) no se muestra automáticamente. Tenemos que acceder a Administrar>Construcción del sitio>Menús>Navegación para activar el enlace general a todos los blogs (Bitácoras).

57 Ejercicio: Blog Activar el módulo de blog.
Crear un vocabulario de taxonomía para este tipo de dato que permita categorizar las entradas. Activar las opciones de menú que permiten mostrar los enlaces a los blogs. Crear una entrada de blog. ¿Dónde se muestran los términos de taxonomía asociados a la entrada de blog?

58 Comentarios Los comentarios están controlados por el módulo Comment.
Cada tipo de contenido puede configurarse para admitir o no comentarios. Los permisos de los comentarios son: Acceder Administrar Publicar Publicar sin aprobación Las opciones de comentarios pueden configurarse globalmente para cada tipo de nodo, y localmente para cada nodo (esta configuración particular prevalece sobre la general). La aparición de los avatares en los comentarios está controlada por el tema (Construcción del sitio>Temas>Configurar).

59 Ejercicio: Comentarios
Activar el módulo Comment. Configurar el tipo de nodo Blog para que admita comentarios. Crear un comentario. Aprobar el comentario.

60 Trigger: Disparadores y acciones
En Drupal podemos configurar que se realicen automáticamente ciertas acciones (como mandar un ) cada vez que se produzca cierto evento o disparador (como que se envíe un nuevo comentario). Esta funcionalidad se consigue a través del módulo Trigger del núcleo. Primero se definen las acciones a través de Configuración del sitio>Acciones. Aunque el módulo Trigger ofrece varias acciones predefinidas, como "Hacer el envío pegajoso". Y después los disparadores a través de Construcción del sitio>Disparadores. Los disparadores pueden desencadenarse a raíz de operaciones con: Comentarios: Tras enviar un comentario nuevo Contenidos: Tras actualizar un nodo Taxónomia: Tras crear un término Usuarios: Tras crear una cuenta de usuarios

61 Trigger: Ejercicio Configurar un Disparador/Acción que envíe un mail a cierta dirección cada vez que se cree una cuenta de usuario nueva. Configurar un Disparador/Acción que despublique los comentarios que contengan como palabras clave ciertos insultos.

62 Token: Personalización mediante variables
El módulo contribuido Token funciona en combinación con otros módulos, como Ubercart o Pathauto, ofreciéndoles variables (como [site-name]) que se sustituyen por cadenas de texto (en este caso, por el nombre del sitio configurado en Configuración del sitio>Información del sitio). Estas variables se denominan comodines. Los Token también pueden utilizarse en las acciones de Trigger, pero se requiere activar el módulo Token Actions incluido con el propio Token.

63 Token: Ejercicio Crear una acción que muestre un mensaje con comodines al usuario cada vez que envíe un comentario. El cuerpo del mensaje será el siguiente: Hola [user-name]: Gracias por enviar el comentario siguiente: [comment-body] para el artículo [title] de [author-name] el día: [site-date]

64 El módulo Path Como ya sabemos, todos los nodos de Drupal son accesibles añadiendo al URL de nuestro sitio /node/x (donde x es el número del nodo al que queremos acceder). Sin embargo, este método no es muy descriptivo, y tampoco favorece la catalogación de los buscadores como Google. El módulo del núcleo Path, nos permite asignar un nombre concreto a cada nodo a través de la opción Opciones de ruta URL que aparece en la página de creación/edición de los nodos al activar este módulo. Esta ruta es lo que tendremos que escribir en lugar de node/x para acceder a él (no anula la forma node/x). Estas rutas alternativas se denominan alias.

65 Ejercicio: El módulo Path
Activar el módulo Path. Crear un nodo con ciertos datos personales y asignarle la ruta de acceso curriculum. Comprobar que este nodo es accesibe a través del URL:

66 El módulo Pathauto I El módulo Path tiene 2 inconvenientes:
Es tedioso tener que indicar los alias manualmente Puede producir inconsistencia en los alias. Por ejemplo, un usuario puede utilizar un patrón distintos a las normas generales. Afortunadamente podemos evitar esos inconvenientes gracias al módulo contribuido Pathauto. Este módulo crea automáticamente alias para los nodos (node/x), usuarios (user/x), términos de taxonomía (taxonomy/term/x), blogs (blog/x) y es compatible también con módulos que añaden otros tipos de nodos). Lo interesante de Pathauto es que puede servirse del módulo Token para introducir en los alias información referente al propio contenido, como el nombre del usuario, o el título del artículo.

67 El módulo Pathauto II Tras instalar Pathauto es recomendable retirar a los usuarios que lo tuvieran el permiso de crear alias (es mejor que todos sean automáticos para que se ajusten al mismo criterio). Las opciones de Pathauto se configuran a través de Construcción del sitio>Alias de URL. En Opciones de alias de rutas automáticas se configura el aspecto que tendrán los alias que generará Pathauto automáticamente a partir de su activación… Pero si también queremos aplicar este patrón de alias a los contenidos previos a la instalación de Pathauto (¡ojo!, sólo a los que no tuviesen ya un alias creado con Path) tendremos que activar la casilla Generar alias en masa…

68 El módulo Pathauto III La actualización de un contenido puede provocar que su patrón de alias varíe, y la opción Opciones generales>Acción al actualizar nos permite elegir entre: No hacer nada. Dejar intacto el alias anterior. Crear alias nuevo. Dejar el alias anterior operativo. Crear alias nuevo. Borrar alias anterior. Crear alias nuevo. Redirigir desde el alias anterior. Ésta es la opción más favorable (para que esté disponible es necesario instalar el módulo contribuido Path redirect).

69 Ejercicio: El módulo Pathauto
Instalar y activar los módulos Pathauto y Path redirect. Comprobar que ningún rol tiene permisos para los módulos (de este modo sólo el administrador puede configurar los alias y se asegura la consistencia): Path Path redirect Pathauto Explorar las Opciones de alias de rutas automáticos: Realizar una generación de alias en masa para actualizar todo el sitio. Observar que, en el caso de los nodos, los patrones de reemplazo nos permiten utilizar, por ejemplo, fechas. De modo que podríamos clasificar los nodos por años; por ejemplo: content/[yyyy]/[title-raw]

70 WebForm I El módulo contribuido WebForm nos permite crear nodos que sean, en realidad, formularios. Los usuarios podrán rellenar estos formularios, y los datos que introduzcan se almacenarán en el sistema y, opcionalmente, se enviarán por correo a la dirección que configuremos. El acceso a los formularios puede limitarse: Por roles Por número de veces Los campos de los formularios se denominan componentes y pueden ser de varios tipos: archivo date hidden select textarea

71 WebForm II Los resultados de los formularios pueden descargarse también en formato Excel. El procedimiento general para crear un formulario es: Administración de contenido>Crear contenido>Webform Aquí configuramos el título del formulario, los roles que tienen acceso a él, las opciones de envío por y el número de veces que cada usuario puede enviar el formulario. Añadir los componente (campos) necesario y configurarlos. Podemos indicar qué campos serán obligatorios y cuáles se enviarán además en el correo electrónico Si se desea utilizar el contenido de algún campo como detalle del (remitente o asunto), volver a la configuración del Webform. Analizar los resultados.

72 Ejercicio: WebForm Crear un formulario que:
Sea accesible a través del menú Navegación mediante un item llamado Examen. Sea accesible para los usuarios de un rol determinado (por ejemplo alumnos). Contenga un campo oculto en el que se almacene el nombre del usuario (%username). Contenga varios campos de selección, de modo que en cada uno de ellos se ponga un término en español y se pregunte su traducción al inglés. Configurar todos los campos para que se envíen por . Descargar los resultados con formato Excel.

73 Registration code I Este módulo contribuído sólo permitirá registrarse en nuestro sitio Drupal a los usuarios que dispongan de un código de registro. Estos códigos de registro pueden generarse con el propio módulo, que permite limitar cuántas veces es válido cada código de registro, es decir, cuántos registros de usuario pueden realizarse con cada código. Registration code permite generar fácilmente códigos a granel y gestionarlos, pues se apoya en el módulo taxonomía para asignar términos a los códigos, y en el módulo Views Bulk Operations para realizar operaciones en conjunto sobre ellos. La versión de Views Bulk Operations (VBO) dependerá de la versión de Views: Views 6.x-2.x utiliza VBO 6.x-1.x Views x utiliza VBO 6.x-3.x

74 Registration code II Registration Code crea automáticamente un vocabulario de taxonomía llamado Registration codes, pero sin términos. Es aconsejable crear los términos antes de empezar a generar códigos de registro (por ejemplo, podríamos crear términos como ESO, Bachillerato, Primero, Segundo, …). Si lo deseásemos, también podríamos elegir cualquiera de los vocabularios ya existentes mediante Opciones de Registration code. Para crear los códigos acudiremos a Administración de usuario>Registration code>Crear. Este formulario nos permite crear códigos en masa sin más que indicar un prefijo en Registration code e indicar cuántos códigos necesitamos en Number of codes to generate. El formato de las fechas Active from y Expires on puede ser, entre otros, AAAA/MM/DD. Los códigos pueden estar compuestos sólo por letras, sólo por números, por letras y números, o ser números hexadecimales.

75 Registration code III Los códigos pueden gestionarse a nivel individual mediante Lista (activarlos, desactivarlos, borrarlos, …). Los códigos se gestionan a nivel global mediante Manage. El módulo Registration code viene acompañado de otros de interés: Code mailer: Permite enviar lotes de códigos a direcciones de utilizando el comodín [regcode]. Dynamic code support: Cuidado con este módulo porque permite al usuario crear códigos que cumplan un cierto patrón (por defecto, cualquier número mayor que a incrementos de 7). Mejor desactivarlo. Role assigment: Permite asignar un rol concreto en función del término de taxonomía que tenga asignado cada código de registro.

76 Ejercicio: Registration code
Instalar Views Bulk Operation. Instalar Registration code, Code mailer y Role assigment. Añadir los términos ESO y Bachillerato al vocabulario Registration code. Generar un lote de 10 códigos de registro con cada uno de los términos anteriores. Configurar los códigos de uno y otro término para que adquieran roles diferentes en Drupal. Enviar varios de estos códigos por (utilizando [regcode]). Comprobar que efectivamente los códigos permiten registrarse.

77 Contactos El formulario de contacto sirve para que los usuarios puedan contactar con nosotros a través de correo electrónico pero sin desvelar nuestras direcciones. Los formularios de contacto están controlados por el módulo Contact. Drupal nos permite crear distintas categorías de formularios de contacto. En las opciones podemos configurar: El número máximo de mensajes que puede enviar un usuario por hora. Si queremos que se muestre un formulario de contacto para cada usuario en su perfil. Al activar este módulo se crea automáticamente el ítem de menú correspondiente en el menú Navegación, pero está inicialmente desactivado. También tenemos que configurar los permisos del módulo Contact para definir quién (qué roles) puede acceder a estos formularios. Adicionalmente, cada usuario puede configurar en su página de perfil si quiere o no mostrar su formulario de contacto.

78 CCK: Content Creation Kit
Fields: Tipos de datos Integer Decimal Float Text Node reference: Referencia a un nodo User reference: Referencia a un usuario Widgets: Presentación para introducir el tipo de dato Text field Text area Check box Radio buttons Select list Autocomplete text field Formatters: Presentación de los datos. Permite definir qué campos se mostrarán en el modo resumido y en el modo extendido del nodo.

79 Instalar CCK Descargar el módulo CCK filtrando las categorías de módulos de drupal.org por compatibilidad con la versión 6.0 y por proyecto Content. La versión disponible actualmente es CCK 6.x-2.6. Aprovechar también para descargar el módulo FileFiled, que se encuentra en la versión 6.x-3.2. Descomprimirlos y copiar las carpetas resultante cck y filefield en la carpeta sites/all/modules. Acceder a Administrar>Construcción del sitio>Módulos y activar los siguientes módulos: Content FileField Node Reference Number Option widget Text User reference

80 Ejercicio: El tipo de nodo taller
Crear un tipo de nodo llamado taller. Configurar en él los siguientes campos: Taller (*Título) Descripción (*Cuerpo) Departamento: Text – Select list Responsable: User reference – Select list Precio: Decimal – Text field Usar la opción Display fields para que las etiquetas aparezcan junto a los datos en lugar de sobre ellos.

81 Ejercicio: El tipo de nodo inscripción
Crear un tipo de nodo llamado inscripción. Configurar en él los siguientes campos: Nombre (*Título) Observaciones (*Cuerpo) Taller: Node reference – Select list Copia DNI: archivo – File upload (que se guarden en files/dni) Usar la opción Display fields para que las etiquetas aparezcan junto a los datos en lugar de sobre ellos.

82 Instalar Advanced Help
Descargar el módulo Advanced Help filtrando las categorías de módulos de drupal.org por compatibilidad con la versión 6.0 y por proyecto Utility. La versión disponible actualmente es CCK 6.x-1.2. Descomprimirlos y copiar la carpeta resultante advanced_help en la carpeta sites/all/modules. Acceder a Administrar>Construcción del sitio>Módulos y activar el módulo Advanced Help. Comprobar cómo aparecen nuevas opciones de ayuda en las páginas relacionadas con CCK.

83 Views Campos (no sólo campos de tipos de nodos, también términos de vocabularios, nombres de usuarios, archivos, …) Filtrado Filtrado dinámico (argumentos) Orden Visualización Attachment Block Feed Page Relaciones

84 Instalar Views Descargar el módulo Views filtrando las categorías de módulos de drupal.org por compatibilidad con la versión 6.0 y por proyecto Content Display. La versión disponible actualmente es CCK 6.x-2.8. Descomprimirlos y copiar la carpeta resultante views en la carpeta sites/all/modules. Acceder a Administrar>Construcción del sitio>Módulos y activar los módulos: Views Views UI Configurar los permisos para que sólo el administrador del sitio pueda administrar y tener acceso a todas la vistas.

85 Ejercicio: Crear una vista que liste los artículos más recientes I
Crear la vista: Construcción del sitio>Views>Add View name: articulos_recientes View tag: articulos View type: Nodo Configuración default Campos Añadir los campos Nodo: Post date Borrar su etiqueta Formato personalizado: j \d\e F \d\e Y, g:i a Nodo: Título Borrar la etiqueta Link this field to its node Colocar el campo Título delante de Post date Filtros Añadir los filtros Is one of Artículo Nodo: Published

86 Ejercicio: Crear una vista que liste los artículos más recientes II
Sort criteria (orden) Añadir el criterio Node: Post date y configurarlo en orden Descending Basic settings (primera columna) Items to display: 4 Style: HTML list Crear el display de bloque Seleccionar Block y pulsar Add display Block Settings (debajo de Basic Settings)>Admin: Artículos recientes Guardar la vista Construcción del sitio>Bloques para mostrar el bloque

87 Ejercicio: Crear una vista que liste los usuarios agrupándolos por roles I
Crear la vista: Construcción del sitio>Views>Add View name: lista_de_usuarios View tag: usuarios View type: Usuario Elegir el tipo de display: Seleccionar la opción Página y pulsar Add display. Ruta: lista_de_usuarios Menu: Normal menu entry Título: Lista de usuarios

88 Ejercicio: Crear una vista que liste los usuarios agrupándolos por roles II
Campos: Hacer clic sobre el signo + que hay a la derecha de Fields, añadir los siguientes campos y pulsar Add. Usuario: Created date Usuario: Delete link Usuario: Edit link Usuario: Imagen Usuario: Nombre Usuario: Último acceso Configurar la etiqueta de los campos del siguiente modo y actualizando la configuración defaults (Update default display): Fecha de creación Operaciones Editar Imagen Nombre Último acceso Hacer clic sobre la doble flecha que hay a la derecha de Fields y colocar los campos en el siguiente orden:

89 Ejercicio: Crear una vista que liste los usuarios agrupándolos por roles III
Ya podemos ver la previsualización de la vista en la zona inferior. Estilo: Basic settings (primera columna)>Style>Tabla y Update default display. Configurar la tabla del siguiente modo: En la columna Column del field (campo) Editar seleccionar Operaciones En la columna Separator del field Operaciones escribir espacio|espacio Activar todas las casillas Sortable Elegir Nombre como Default sort Update default settings Filtros: Hacer clic sobre el signo + que hay a la derecha de Filtros, añadir Usuario: nombre y configurarlo como Is not one of Anonymous Argumentos: Hacer clic sobre el signo + que hay a la derecha de Arguments Añadir Usuario: Roles Título: %1 Action to take if argument is not present: Summary, sorted ascending En el resto de la configuración mantener las opciones predeterminadas Guardar la vista

90 Ejercicio: Crear una vista que liste las últimas entradas de blog por usuario I
Crear la vista: Construcción del sitio>Views>Add View name: entradas_blog_recientes View tag: blog View type: Nodo Configuración default Campos Añadir los campos Nodo: Título Borrar la etiqueta Link this field to its node Colocar el campo Título delante de Post date Filtros Añadir los filtros Nodo: Type Is one of Entrada de bitácora Nodo: Published

91 Ejercicio: Crear una vista que liste las últimas entradas de blog por usuario II
Sort criteria (orden) Añadir el criterio Node: Post date y configurarlo en orden Descending Basic settings (primera columna) Items to display: 4 Style: HTML list Arguments Añadir el argumento Usuario: uid Título: Entradas recientes de %1 Action to take if argument is not present: Provide default argument User ID from URL Also look for a node and use node author Validator: Usuario Probar el argumento escribiendo 1 en el campo de la sección Live preview Crear el display de bloque Seleccionar Block y pulsar Add display Block Settings (debajo de Basic Settings)>Admin: Entradas de blog recientes Guardar la vista Construcción del sitio>Bloques para mostrar el bloque

92 Ejercicio: Crear una vista de talleres
Vamos a crear una vista que muestre todos los talleres propuestos. Administrar>Construcción del sitio>Views>Add. View name: Talleres View tag: Talleres (sólo sirve para ordenar las vistas en la zona administrativa) View type: Node Pulsar Next para empezar a configurar la vista.

93 Ejercicio: Configurar la vista talleres
En la sección Basic Settings: Título: Talleres propuestos Style: Tabla Use pager: Sí – Full pager Empty text: Aún no se ha propuesto ningún taller

94 Ejercicio: Añadir campos a la vista talleres
En la sección Fields, pulsar el icono + para añadir cada uno de los siguientes campos: Nodo: Título Nodo: Post date Contenido: Precio Contenido: Responsable Y configurarlos así: Título: Link this field to its node Post date: Date format Precio: Formato Responsable: dejar por defecto Comprobar que en la previsualización de la vista se muestran todos los tipos de nodos (no sólo los de tipo taller). Reordenar los campos como se muestra en la figura.

95 Ejercicio: Filtrar la vista talleres
En la sección Filtros, pulsar el icono + para añadir los siguientes filtros: Nodo: Published Nodo: Type (Is one of Taller)

96 Ejercicio: Establecer un orden en la vista talleres
En la sección Sort criteria, pulsar el icono + para añadir el siguiente criterio: Nodo Post date Descendant Granurality: second La granularidad sirve para indicar a qué nivel deben considerarse idénticos en ordenación dos nodos (por ejemplo, si tiene la misma hora aunque los minutos/segundos sean distintos). Esto es muy útil para poder aplicar criterios de ordenación secundarios. Por ejemplo, ordenar primero por fecha y luego por título todos los talleres propuestos para el mismo día.

97 Ejercicio: Crear un display para la vista talleres
En la sección Defaults, seleccionar Página y pulsar Add display. Configurar la sección Page Settings del siguiente modo: Ruta: talleres Menú Normal menu entry Título: Talleres propuestos Menú: Navegación

98 Ejercicio: Crear un argumento en la vista talleres
En la sección Arguments, pulsar el icono + y configurar el siguiente argumento: Contenido: Departamento Título: Talleres propuestos por el departamento %1 Action to take…: Summary, sorted ascending Display: List Display record count with link (mediante el icono de la rueda dentada) Comprobar cómo ha variado el comportamiento del enlace "Talleres propuestos"

99 Ejercicio: Crear la vista de inscripciones
Vamos a crear 3 displays para la vista de inscripciones: Uno que muestre todas las inscripciones recibidas Otro que muestre en una ficha adicional del nodo de cada taller las inscripciones que ha recibido Y una última que muestre en un bloque las inscripciones que ha realizado el usuario actualmente acreditado

100 Ejercicio: Configurar los defaults I
Construcción del sitio>Views>Lista>Add View name: Inscripciones View tag: inscripciones View type: Node Next Style: Table Use Pager: Yes, Full pager Empty text: No se han realizado inscripciones aún. Añadir los siguientes campos (fields): Contenido: Taller - Link this field to its node Nodo: Post date – Elegir un formato de fecha que indique el día de la semana Nodo: Título - Link this field to its node Usuario: Nombre – Etiqueta=Solicitante

101 Ejercicio: Configurar los defaults II
Recolocar los campos situando el node reference al taller en último lugar Añadir un orden (Sort criteria) que ordene las inscripciones en sentido descendente de Post date Añadir los siguientes filtros: Nodo: Publicado - Sí Nodo: Tipo – Is one of Inscripción

102 Ejercicio: Crear el display de todas las inscripciones
Añadir un display de tipo Page Configurar el acceso para los Asesores Pulsar Override Seleccionar Role Pulsa Actualizar Seleccionar el rol Asesor Pulsar Actualizar Crear un ítem de menú Ruta: inscripciones Menú: Normal menu entry – Título: Inscripciones – Menú: Navegación

103 Ejercicio: Crear el display de las inscripciones de un taller
Añadir un display de tipo Page y cambiar su nombre a Inscripciones por taller Restringir el acceso de este display para que sólo puedan usarlo los asesores Añadir un Relationship al elemento Contenido: Taller y activando la opción Require this relationship Esto lo hemos hecho porque queremos que se muestren sólo las inscripciones recibidas para un taller en particular.

104 Ejercicio: Crear el display de las inscripciones de un taller
Override los arguments Crear este argumento: Nodo: Nid Relationship: Taller Título: Inscripciones recibidas para el taller %1 Action to take…: Display empty text Validator: Nodo Taller Validate user has access to the node

105 Ejercicio: Crear el display de las inscripciones de un taller
Configurar los Page Settings: Ruta: node/%/inscripciones Menú Menu tab Título: Inscripciones Override los fields y eliminar los campos Contenido: Taller Contenido: Título

106 Ejercicio: Crear el display de las inscripciones de un usuario
Añadir un display nuevo de tipo Bloque Título: Mis inscripciones Style: HTML List Unordered list Block settings Admin: Inscripciones por usuario Override los Fields y eliminarlos todos menos Contenido: Taller, que configuraremos del siguiente modo: Desactivar Link this field to its node Etiqueta: Ninguno Formato: Title (no link)

107 Ejercicio: Crear el display de las inscripciones de un usuario
Override los Filtros y añadir uno nuevo: Usuario: Current Is the logged in user: Sí Colocar el bloque (Administrar>Construcción del sitio>Bloques) en el lateral derecho. Configurar el bloque para que sólo se muestre a los usuarios Asistentes.

108 El módulo Aggregator Este módulo sirve para incluir en nuestro sitio contenidos proporcionados por los enlaces de sindicación (RSS, Atom, RDF, ..) de otros sitios Podemos organizar las suscripciones en categorías. Cada suscripción/hilo y cada categoría configura automáticamente un bloque. Cada suscripción es accesible a través de un URL del tipo: aggregator/sources/1 Cada categoría es accesible a través de un URL del tipo: aggregator/categories/1 La actualización de los hilos se realiza automáticamente a través de Cron

109 Ejercicio: Aggregator
Activar el módulo Aggregator Crear una categoría llamada Educación (Administración de contenido>Agregador de feeds). Agregar 2 hilos en esa categoría: CRIF Las Acacias CTIF Madrid Norte Configurar las opciones para que se admita el elemento <img> (Opciones) Crear un ítem de menú que permita acceder a la categoría. Cambiar el formato de fecha Configuración del sitio>Fecha y hora>Formato medio de fecha Configurar el CRON con: wget -O - -q -t 1

110 Temas Instalación: Descargar, descomprimir y ubicar la carpeta resultante en sites/all/themes Activación: Construcción del sitio>Temas Configuración: Por ejemplo, podemos hacer que aparezcan los avatares en los nodos y/o comentarios

111 Ubercart I El módulo contribuido Ubercart es la opción más popular para construir sitios de comercio electrónico basados en Drupal. La instalación de este módulo requiere que esté activado el módulo Token y además es aconsejable disponer de los siguientes: CCK FileField ImageAPI ImageCache ImageField Lightbox 2 Google Analytics La mayoría de las pasarelas de pago compatibles con Ubercart requieren que nuestro servidor tenga instalada la extensión Curl de PHP.

112 Ubercart II Tras instalar Ubercart activaremos sólo los 5 módulos obligatorios del núcleo: Cart Conditional actions Order Product Store … y posteriormente añadiremos los demás módulos que esperemos necesitar.

113 Ubercart III Tras instalar Ubercart, configurar las opciones del país: Store administration>Configuration>Country settings>Import Country. Configurar las opciones de la tienda: Store administration>Configuration>Store settings (especialmente el titulo de la tienda y los formatos). Instalar y activar los siguientes módulos: ImageCache ImageAPI ImageAPI GD2 CCK ImageField Acceder a Store Administration y, en los mensajes de estado (abajo), hacer clic sobre el enlace para habilitar el uso de imágenes en los productos. Crear las clases de productos que sean necesarias (Store Administration>Products>Manage classes). Cada clase es, en realidad, un tipo de nodo de Drupal. En realidad sólo hay que crear clases si nuestros productos son de naturaleza o con opciones de comercialización muy diferentes; por ejemplo, libros en papel y ebooks.

114 Ubercart IV Crear un producto a través de Administración de contenido>Crear contenido>Product. Los productos son sencillamente nodos. SKU: Stock Keeping Unit (número de referencia). MSRP: Manufacturer Suggested Retail Price (precio recomendado por el fabricante).

115 Ubercart V Obviamente, no resulta cómodo acceder a los productos individualmente como si fueran nodos, por lo que podríamos crear una vista, que es precisamente lo que hace por nosotros el módulo adicional Catalog de UC. Activar este modulo. Catalog crea un vocabulario de taxonomía llamado Catalog aplicable a todas las clases de productos, y al que añadiremos los términos en los que deseemos clasificar los productos; por ejemplo: libros, discos y ebooks. Cada término puede tener asociado una imagen. El catálogo es accesible añadiendo al URL de nuestro sitio catalog. Crear un enlace en el menú Navegación que permita acceder fácilmente al catálogo. Configurar la vista del catálogo en rejilla (Grid) a través de Store administration>Configuration>Catalog settings.

116 Ubercart VI Para traducir Ubercart al castellano:
Acceder al sitio Seleccionar Translate y elegir el idioma Spanish y el proyecto Ubercart. Hacer clic sobre Export y elegir la última release disponible. En el formato de exportación, seleccionar Translation y All in one file. Al pulsar Export se descargará un archivo con la extensión .PO. Construcción del sitio>Traducir interfaz>Importar. Seleccionar el archivo PO y pulsar Importar.

117 Backup and migrate I Recordemos que cualquier sitio desarrollado con Drupal es una combinación de archivos en el servidor y tablas en una base de datos. Los archivos pueden copiarse y trasladarse fácilmente de un servidor a otro con cualquier cliente FTP, como FileZilla. Pero las tablas son un poco más engorrosas de trasladar, y aquí es dónde va a ayudarnos el módulo contribuido Backup and migrate. Además, Backup and migrate es muy útil para realizar copias de seguridad periódicas de las tablas de nuestro sitio. Esta operación la realiza en combinación con CRON, pero si no podemos configurar el demonio CRON en nuestro sitio, tendremos que recurrir al módulo contribuido PoormansCron.

118 Backup and migrate II El procedimiento general para migrar un sitio Drupal de un servidor de origen a otro de destino (por ejemplo de nuestro servidor local a un servidor de producción) es: Instalar el módulo Backup and migrate en nuestro sitio de origen. Realizar una copia de seguridad de las tablas del sitio de origen mediante el módulo Backup and migrate. El resultado será un archivo que podremos descargar. Trasladar todos los archivos de Drupal de un servidor a otro utilizando un cliente FTP (FileZilla). En el sitio de destino, borrar el archivo sites/default/settings.php y crear un duplicado del default.settings.php renombrándolo como settings.php. Acceder al sitio de destino y llevar a cabo la instalación de Drupal con normalidad, introduciendo las credenciales de la nueva base de datos. El resto de datos que introduzcamos (como las credenciales del administrador) son indiferentes, pues se sobrescribirán con las originales al realizar la restauración. Activar el módulo Backup and migrate en el sitio de destino. Realizar la restauración de las tablas utilizando el archivo descargado en el paso 2.

119 Backup and migrate III ¿Cómo realizar una copia de seguridad?
Administración de contenido>Backup and migrate>Backup Podemos elegir entre descargar el archivo de copia de seguridad o almacenarlo en el propio servidor dentro del directorio Manual Backups Directory. Si lo deseamos, podemos utilizar la ficha Advanced backup para: Elegir un método de compresión. Bloquear las tablas (Lock tables) para evitar una posible corrupción de datos. Poner el sitio fuera de línea durante la realización de la copia de seguridad.

120 Backup and migrate IV ¿Cómo realizar una restauración?
Administración de contenido>Backup and migrate>Restore En Opciones avanzadas es aconsejable poner el sitio fuera de línea durante la restauración. Recuérdese que la restauración también incluye las credenciales del administrador.

121 Backup and migrate V ¿Cómo configurar la realización de copias de seguridad periódicas? Administración de contenido>Backup and migrate>Schedules>Create schedule Las opciones más importantes son: Backup every (periodicidad de la operación; cada día suele ser una buena opción). Esta periodicidad estará supeditada a la del demonio CRON (véase la siguiente diapositiva). Number of backup files to keep: A menos que nuestro espacio de hosting se esté agotando es aconsejable dejar el valor 0 que no borra ninguna copia de seguridad. Si elegimos otro valor se irán borrando las copias de seguridad más antiguas. Es aconsejable que el perfil que elijamos tenga activadas las casillas Lock tables during backup y Take site offline (poner sitio fuera de línea)

122 CRON CRON es un demonio que se ejecuta en los servidores web, es decir, una aplicación que está siempre en funcionamiento, y cuya misión es ejecutar ciertos archivos cada cierto tiempo. Algunos módulos de Drupal requieren que se realicen ciertas tareas de mantenimiento periódicamente (por ejemplo, el módulo que comprueba si hay actualizaciones nuevas, o el módulo Backup and migrate), y se las encargan a un archivo llamado cron.php que se encuentra en la raíz del sitio. Podemos ejecutar este archivo cron.php manualmente simplemente accediendo a él ( o bien podemos configurarlo como una tarea más de CRON para que se ejecute automáticamente cada cierto tiempo. El problema es que muchos hostings económicos o institucionales no permiten a los usuarios configurar CRON. Si tenemos instalado el módulo Administration Menu, también podremos ejecutar CRON manualmente desplegando el menú representado por una gota (en el extremo izquierdo de la barra de menús).

123 Poormanscron El módulo contribuido Poormanscron es la solución para quiénes no pueden configurar CRON en sus servidores. Este módulo ejecuta el archivo cron.php periódicamente siempre y cuando haya accesos a nuestro sitio web (para que se active Poormanscron es necesario que alguien acceda a nuestro sitio, pues no es un CRON real sino un simple módulo que cada vez que alguien accede a nuestro sitio comprueba cuánto hace que no se ejecuta cron.php y, si ha pasado más tiempo del establecido, lo ejecuta igual que si lo hiciésemos nosotros manualmente pero en segundo plano (de forma transparente para el usuario)). Una vez instalado Poormanscron podremos configurar su periodicidad a través de Configuración del sitio>Información del sitio>Automatically run cron.

124 Supercron El módulo contribuido Supercron sirve para saber qué tareas está pidiendo cada módulo que se ejecuten con cada CRON y cuánto tiempo consumen. Una vez activado, hay que copiar el archivo supercron.php de la carpeta del módulo a la raíz del sitio. Con Supercron (Configuración del sitio>Supercron) podremos activar o desactivar las tareas que nos interesen para incluirla o no en la ejecución de CRON, o invocarlas individualmente. Otro detalle interesante es su pequeño Firewall, con el que podemos permitir la ejecución directa de CRON sólo cuando la petición proceda de una cierta dirección IP. Esto es importante porque usuarios malintencionados pueden cometer abusos.

125 Actualizar Drupal o un módulo
Si se trata de un módulo, desactivarlo (Construcción del sitio>Módulos). Poner el sitio fuera de línea (Configuración del sitio>Mantenimiento del sitio). Sobrescribir lo archivos de Drupal/módulo con los de la nueva versión (si se trata de un módulo es mejor borrar los viejos y colocar en su lugar los nuevos). Acceder al sitio como administrador ( y ejecutar una actualización de la base de datos, bien a través de la dirección o bien ejecutando el comando Run updates del menú con forma de gota de Administration Menu. Si se trata de un módulo, activarlo. Poner el sitio nuevamente en línea.


Descargar ppt "CRIF "Las Acacias" Abril – 2010 Juan Félix Mateos"

Presentaciones similares


Anuncios Google