CREIX AMB INTERNET Introducción a Drupal OPS Consulting ¿Qué es Drupal? Drupal es un sistema de gestión de contenido modular multipropósito y muy configurable que permite publicar artículos, imágenes, u otros archivos y servicios añadidos como foros, encuestas, votaciones, blogs y administración de usuarios y permisos. Drupal es un sistema dinámico: en lugar de almacenar sus contenidos en archivos estáticos en el sistema de ficheros del servidor de forma fija, el contenido textual de las páginas y otras configuraciones son almacenados en una base de datos y se editan utilizando un entorno Web. El diseño de Drupal es especialmente idóneo para construir y gestionar comunidades en Internet. No obstante, su flexibilidad y adaptabilidad, así como la gran cantidad de módulos adicionales disponibles, hace que sea adecuado para realizar muchos tipos diferentes de sitio web. Drupal como CMS Control sobre el flujo de creación, edición, borrado y publicación de contenidos. Categorización y organización de contenido. Gestión de usuarios y roles. Privacidad, control de acceso. Presentación de contenido en diversos formatos. Sistema ampliable y extensible. Drupal es multiplataforma Arquitectura de Drupal Drupal es software libre Publicado bajo licencia GNU/GPL 2 o superior. Libre descarga, modificación y reutilización. Distribución bajo la misma licencia. Todos los plugins (módulos) y plantillas (temas) que se incluyen tanto en la descarga. inicial como en las descargas desde el repositorio oficial tienen licencia GPL. Licencia GPL Es la licencia que garantiza las libertades del software libre. Un software es "libre" si garantiza las siguientes libertades: – la libertad de usar el programa, con cualquier propósito. – la libertad de estudiar cómo funciona el programa y modificarlo, adaptándolo a tus necesidades. – la libertad de distribuir copias del programa, con lo cual puedes ayudar a tu prójimo. – la libertad de mejorar el programa y hacer públicas esas mejoras a los demás, de modo que toda la comunidad se beneficie. Las libertades 2 y 4 requieren implícitamente el acceso al código fuente porque estudiar y modificar software sin su código fuente no es viable. ¿Qué se puede hacer con Drupal? Portales corporativos Galerías de fotos Intranets Galerías de vídeos. Blogs E-commerce Foros E-learning. Comunidades Aplicaciones. Wikis ... ¿De dónde sale Drupal? Dries Buytaert es el fundador y desarrollador inicial de Drupal Mantenedor principal del núcleo Creador y propietario de la marca Fundador de la empresa Acquia, que proporciona servicios de soporte a Drupal a corporaciones Algunas prestaciones de Drupal Permite la creación y gestión de contenidos. Habilita taxonomías. Genera automáticamente menús. Maneja el estado de publicación de los contenidos. Gestión de usuarios y permisos de acceso a los contenidos. Genera RSS automáticamente. Permite gestionar webs multilenguaje. Maneja formularios. Es multisite, varias webs con una única instalación. Es muy flexible y ampliable con módulos. Puntos fuertes de Drupal Extensible: gran cantidad de módulos contribuidos. Flexible: permite crear infraestructuras muy diversas y dinámicas. Muy seguro: equipo dedicado a la seguridad, granularidad de permisos. Sistema de plantillas muy potente. Comunidad: centralizada, activa y numerosa. Soporte: una comunidad activa y disponibilidad de profesionales. Software libre y gratuito. API accesible: permite crear desarrollos propios y modificarlo. Puntos débiles de Drupal Curva de aprendizaje inicial pronunciada. Interfaz por defecto poco amigable. Número de temas contribuidos limitado. Antes de empezar Antes de empezar a configurar el software tendremos que: Analizar los requisitos del site que queremos − Definir la arquitectura de información (contenidos) que vamos a emplear − Nos fijará la construcción de los bloques, menús, vistas, etc. Establecer los requisitos de acceso de los usuarios − Nos fijará los tipos de contenidos a configurar y las taxonomías Establecer la usabilidad y criterios de navegación del site − Nos fijará los módulos necesarios Nos fijará los tipos de usuarios y roles Establecer el diseño gráfico − Nos ayudará a decidir el tema y si es necesario personalizarlo Construcción de un sitio Drupal básico Tareas a realizar Seleccionar los módulos que implementen la funcionalidad deseada Diseño de la estructura de contenidos y presentación Instalación de la plataforma Drupal Configuración del site (“construcción del sitio”) Instalación y adaptación del tema de visualización Construcción de la estructura y adaptación del entorno visual (tipos de datos, bloques, menús, paneles, vistas, etc) Lanzamiento del site Creación y mantenimiento de los contenidos Elección de la plataforma para Drupal En primer lugar deberemos decidir si tenemos un servidor propio o realizamos un hosting En cualquier caso, las tecnologías involucradas son: Sistema operativo: Linux (recomendado), Windows o Mac OS X Servidor Web, con soporte PHP: Apache (recomendado) o IIS Base de datos: MySQL (recomendado) o PostgreSQL Navegador para el acceso a las pantallas de administración Conexión a Internet Si lo instalamos en modo hosting, un cliente de ftp para acceder a los archivos La plataforma idónea es un sistema LAMP (Linux, Apache, MySQL y PHP) Instalación de Drupal en el servidor Una vez tenemos la plataforma LAMP operativa la instalación de Drupal es muy simple: Se descarga la aplicación Drupal de www.drupal.org Se descomprime el fichero Se copian todas las carpetas y archivos en el directorio raíz del servidor web Preparación de la instalación En ./sites/defaults renombramos default.settings.php a settings.php. settings.php tiene que tener permisos de escritura. Creamos la carpeta files en nuestra web ./sites/default/files ./sites/default/files tiene que tener permisos para escritura El siguiente paso es acceder la página www.nuestraweb.com/install.php y empezar la configuración de la infraestructura Al finalizar es importante quitar los permisos de escritura a settings.php Pantalla inicial de instalación Configuración inicial del site Los pasos iniciales son: Configuración de los datos de acceso a MySQL − − Nombre de la base de datos Usuario y password Datos básicos de nuestro site − − − − Nombre del site Datos del usuario administrador (¡¡¡Ojo con el password!!) Zona horaria Tipo de URLs que utilizaremos en nuestro site Conceptos Básicos: node El node es el componente básico y general de todo el contenido en Drupal Cada node tiene un identificador único, el node id. Este identificador nos permite hacer referencias al node y “buscarlo” con distintas herramientas en el conjunto de contenidos de Drupal Genéricamente todos los tipos de contenido son nodos Podemos verlo como la unidad mínima de contenido que podemos gestionar en Drupal Como excepción, algunas unidades de información no son nodos y por lo tanto no tienen un node id Usuarios Comentarios Taxonomías Conceptos básicos: tipos de contenidos Los “tipos de contenido” son las definiciones de lo que un node puede almacenar como datos Tipos de contenidos básicos: Páginas Historias Otro s son definidos por los usuarios o los módulos instalables − Imágenes − Videos − Noticias − Formularios − Libros − ... Conceptos básicos: fields Los campos o fields son las unidades de información dentro de un nodo Puede ser estándares de Drupal o definidas por el usuario Los campos definidos en cada nodo dependerán del tipo de contenido al que pertenezca ese nodo Los nodos tiene unos campos obligatorios, como por ejemplo el nombre de nodo, y otros opcionales que pueden quedar vacíos Algunos módulos nos permiten ampliar la capacidad de Drupal para tratar con los campos en los nodos Conceptos básicos: taxonomías Las taxonomías o categorías son los elementos de Drupal que nos permiten asociar los nodos a palabras clave Existe todo un gestor de las taxonomías, para definir su estructura y palabras claves permitidas en cada tipo de contenido Las palabras claves asociadas a cada nodo nos permitirán luego acceder a ellos de forma selectiva mediante las herramientas de Drupal Conceptos básicos: regiones de presentación Drupal divide la pantalla en varias regiones o áreas de presentación, donde se visualiza el contenido: Cabecera Cuerpo de página Columna izquierda Columna derecha Pie de página Cada región tiene un forma específica de presentar el contenido Conceptos básicos: bloques Los bloques son unidades de presentación de información, en general asociados a algún tipo de información, pequeña aplicación o módulo opcional Cuando construimos el site decidimos qué bloques se presentarán en cada región, y bajo que condiciones Algunos módulos opcionales aumenten la capacidad de trabajar con bloques de Drupal Ejemplos de bloques: El bloque “buscar”, el bloque “login”, los bloques de menús, ... En general un usuario no puede definir un tipo de bloque nuevo, esto se hace mediante la incorporación de módulos opcionales Conceptos básicos: menús Drupal dispone de un sistema menús personalizable Los menús permiten construir la navegación primaria o secundaria del sitio web Se pueden añadir jerarquías de enlaces internos y externos y automáticamente se generan los bloques correspondientes para ser incluidos en las regiones de visualización El sistema de menús complementado con el sistema de taxonomías de Drupal forman una navegación coherente y flexible dentro del sitio web. Conceptos básicos: users y roles Los usuarios el el elemento básico que nos permite implantar un sistema de control de acceso a los contenidos y capacidades de modificación de nuestro site Drupal permite agrupar las capacidades que se pueden asignar a un usuarios en roles Los roles permiten una granularidad muy grande en lo que se permite hacer o no hacer en el site Un rol básico es del administrador, con capacidad para modificarlo todo Drupal puede funcionar también sin definir usuarios. En ese caso, todo el acceso se realiza bajo el rol de “usuario no registrado” Conceptos básicos: vistas Las vistas (views) es el constructor básico de consultas sobre nodos Nos permite seleccionar qué nodos se presentarán en cada acceso, según los parámetros de búsqueda predefinidos En muchos casos se utilizan asociadas a las taxonomías Conceptos básicos: módulos Los módulos son pequeñas aplicaciones que se integran con Drupal y aumentan sus capacidades En general son contribuidos por la Comunidad Drupal Los módulos no son contenidos, deben verse como extensiones del programa En general los módulos adicionales se deben ubicar en la carpeta /sites/all/modules Conceptos básicos: temas Los temes (Themes) son el componente de Drupal que define cómo se visualiza el site desde el punto de vista estético Los temas más elaborados pueden también redefinir las regiones de presentación Es importante antes de construir el sitio tener claro las regiones y temas que queremos utilizar, ya que sino la visualización puede resultar deficiente Los temas pueden modificarse con facilidad si se conoce un poco de programación de hojas de estilos en cascada (CCS) La capacidad de Drupal para trabajar con temas muy diversos es lo que proporciona la posibilidad de crear webs tan distintas con la misma infraestructura En general los temas adicionales se deben ubicar en la carpeta /sites/all/themes El panel de administración El menú de administración nos permite controlar toda la estructura y comportamiento del site. Los apartados principales son: Administración de contenido Construcción del sitio Configuración del sitio Administración de usuarios Reports El panel de administración Tipos de contenidos Drupal tiene varios tipos de contenidos predefinidos Páginas Historias Comentarios Taxonomías Con módulos auxiliares pueden incorporarse más tipos de contenidos Imágenes Libros Flash También pueden definirse contenidos personalizados. Algunos módulos proporcionan herramientas muy potentes para ello CCK Gestión de los contenidos Cuando se define un tipo de contenido, el menú de administración de contenidos permite configurar el comportamiento del portal para ese tipo de contenidos Un tipo de contenido muy especial son los comentarios. De hecho no es propiamente un tipo de contenido independiente, pues siempre está asociado a otro tipo (las páginas e historias, por ejemplo) Las taxonomías son otro tipo de contenido especial No tiene mucho sentido por él mismo Nos proporciona una estructura de palabras clave y categorías para clasificar el resto de contenidos La clasificación a base de taxonomías de los contenidos es básica para la recuperación posterior de los contenidos bajo criterios de búsqueda y presentación La gestión de contenidos está asociada a los roles de usuario y sus permisos La primera página del site Los contenidos pueden ser “promocionados” a la primera página, apareciendo automáticamente ahí si se desea Pueden promocionarse automáticamente o manualmente Los nuevos contenidos promocionados van sustituyendo a los antiguos, según la “cola” predefinida También pueden promocionarse en modo “pegajoso" Los contenidos “pegajosos” no son desplazados por los nuevos contenidos, quedan “pegados” en la primera página Edición de los contenidos La creación y edición de contenidos se realiza mediante el formulario predefinido para cada tipo de contenido, con el menú principal “Crear contenido” El administrador puede configurar los formularios para que se comporten de una forma predeterminada y puedan admitir o no varios tipos de contenidos distintos (textos, imágenes, videos, ficheros adjuntos, etc.) La introducción de los contenidos puede realizarse con un formulario “tipo web” o un editor WYSIWYG, si el administrador ha configurado el site para ello Drupal se encargará de generar el código web para cada página cuando un usuario haga una petición Pueden configurarse varios filtros para tratar el código html de las páginas e imponer limitaciones a lo que los usuarios pueden introducir Los contenidos pueden editarse a posteriori, accediendo al nodo correspondiente con la pantalla “Gestión de Contenidos” del menú de administración Configuración del site El site presenta una serie de aspectos comunes en todas las páginas que hay que configurar globalmente La mayoría de ellos se configuran en “Información del sitio” en el menú de “configuración del sitio” Nombre del sitio Misión Eslogan Texto de pie de página Cual es la página principal Otro aspecto importante es el uso o no de “URL limpias” Los menús en Drupal Los menús de acceso a las páginas se crean y gestionan automáticamente Tenemos tres menús predefinidos Menú de navegación Menú de enlaces primarios Menú de enlaces secundarios Para incluir una página en un menú debemos indicar, cuando se crea, que queremos que pueda ser accedida desde ese menú. No tenemos, sin embargo, que gestionar los enlaces Las páginas tiene un “peso” en el menú Las páginas más pesadas se “hunden” en el menú, las páginas menos pesadas “flotan” Los menús de usuario Podemos crear todos los menús que queramos, dándoles un nombre y el título con el que se deben presentar Los menús son jerárquicos, podemos tener submenús que dependen de otros menús El “menú padre” es el que contiene el submenú Los submenús se llama “menús hijos” La administración de los menús se realiza desde “construcción del sitio” Cada enlace a una página en el menú puede estar activado o no Una página puede ser accedida por un número ilimitado de menús En la configuración del menú tenemos que indicar el enlace a la página. Lo más habitual es indicar el número de nodo de la página Los bloques Los bloques nos permiten presentar contenido fuera de la región central de Drupal Podemos entenderlos como “cajas” que presentan información Los bloques de definen en el menú de administración de “construcción del sitio” Es la forma más típica en que los módulos de Drupal permiten presentar los contenidos que generan en el site En general como administradores nunca crearemos bloques. Los bloques los crean los módulos que tenemos instalados en el sistema Lo que si deberemos hacer como administradores es decidir qué bloques queremos presentar a los usuarios, en qué regiones y bajo qué condiciones Drupal trae predefinidos una serie de bloques que podemos utilizar directamente Un tipo de bloque importante es el de menús. Cuando creamos un nuevo menú automáticamente se crea también su bloque correspondientes, para poder ser presentado a los usuarios Administración de los bloques Presentación de los bloques En un Drupal estándar disponemos de 5 regiones para colocar los bloques Cabecera Cuerpo Columna izquierda Columna derecha Pie de página También podemos configurar las condiciones en las que un bloque debe aparecer o no para un usuario, indicando con qué páginas debe mostrarse o con qué páginas no Los bloques es la herramienta principal que nos permite presentar la metainformación que estructura nuestro site Módulos Los módulos son pequeñas aplicaciones que se integran con Drupal y aumentan sus capacidades Algunos módulos son obligatorios, Drupal no puede funcionar sin ellos: Block: controla los bloques que se muestran alrededor del contenido principal Filter: gestiona el filtrado del contenido previo a la visualización Node: permite crear contenido en el site y que se muestre en las páginas System: gestión de la configuración general del site para administradores User: gestiona el sistema de registro de usuarios y el inicio de sesión Watchdog: registra y guarda los eventos del sistema Módulos del núcleo opcionales Otros módulos forman parte del núcleo de la aplicación, pero pueden activarse o no Profile Search Blog Comment Statistics Forum Taxonomy Menu Upload Locale Poll Path Módulos contribuidos Son los que proporcionan la flexibilidad y capacidad de adaptación de Drupal Hay más de 4,000 módulos desarrollados, cada uno aportando funcionalidades específicas http://drupal.org/project/Modules o http://drupalmodules.com/ Antes de utilizar un módulo contribuido en nuestro site hay que evaluar su grado de madurez y si la comunidad que lo mantiene es suficientemente dinámica La traducción al español de muchos módulos no está completada o ni tan sólo iniciada Módulos contribuidos muy recomendados CCK: el Content Construction Kit permite crear tipos de contenidos personalizados Views: permite personalizar la visualización de las listas de nodos TinyMCE o FCK Editor: editores tipo WYSIWYG Panels: permite “regionalizar” el cuerpo de visualización de las páginas, dando flexibilidad a la disposición de la información Image: permite trabajar las imágenes como nodos y se integra con los editores WYSIWYG Imagefield: complementa CCK con el uso de imágenes Pathauto: genera alias para las URL de forma automática Xmlsitemap: genera un árbol de nuestra web para Google Nodes in block: visualiza el contenido de un nodo dentro de un bloque Gestión de los módulos y activación La instalación de un módulo consiste, en general, en ubicarlo en sites/all/modules Una vez ahí Drupal lo reconoce automáticamente y podremos activarlo desde la pantalla de gestión de módulos, desde el menú de “construcción del sitio” Algunos módulos, además de la activación, necesitan una configuración. Estos módulos crearán un menú de configuración generalmente en “configuración del sitio” Cada módulo tiene sus especificidades para su puesta en marcha y configuración ¡OJO! Cuando activamos un módulo puede ser necesario modificar los permisos de los usuarios. A veces, tras la activación, ni el propio administrador tiene permisos para la configuración. Para cambiar la versión de un módulo es necesario desactivarlo primero y borrarlo del directorio /site/all/modules Tras instalar la nueva versión es necesario ejecutar upgrade.php Pantalla de gestión de los módulos El aspecto del sitio Drupal está diseñado para poder cambiar el aspecto de nuestro site sin modificar ni la estructura ni el contenido Dispone de los “themes”, que modifican únicamente la presentación gráfica del site El tema por defecto es el llamado “Garland” Existen multitud de temas contribuidos, algunos gratuitos y otros de pago Los temas pueden tener limitaciones para presentar ciertas informaciones. Antes de utilizar un tema en nuestra web tenemos que comprobar que presenta adecuadamente nuestro contenido Por ejemplo, algunos temas sólo trabajan con una columna en lugar de dos − Si tenemos contenido en la columna no presentada éste no aparecerá Buenos lugares para encontrar temas son: http://drupal.org/project/themes http://themegarden.org/ Instalación de nuevos temas La instalación de un nuevo tema es parecida a la de los módulos: Primero tenemos que cargar los archivos con el tema en nuestro servidor Luego tenemos que activar el tema Finalmente podemos configurar, según el tema, los aspectos que sean necesarios Los temas se colocan habitualmente en el directorio sites/all/themes La activación y gestión de los temas la realizamos desde el menú de construcción del sitio, apartado “temas” Podemos tener activados varios temas a la vez. Esto puede permitir a los usuarios registrados elegir el tema que prefieren de entre los disponibles El tema predeterminado es el que aparecerá a los usuarios anónimos y a los usuarios que no hayan personalizado su tema Configuración de temas Cuando tenemos activado un tema, si éste lo permite, podremos configurar algunos aspectos Los aspectos que en general se pueden configurar son: Los colores de presentación El logo que presenta Los atributos de la web que queremos presentar − − − − El eslogan La misión El nombre El “favicon” Lo que se puede configurar en un tema es muy variable y depende de la sofisticación de su programación Gestión de los temas Personalización de temas Podemos personalizar nuestra web tomando como base un tema que nos guste y modificando su código Para ello es necesario tener alguna noción de html y css Un tema muy adecuado para la personalización es el tema “zen”, que es un diseño básico pensado para ser adaptado, con su propio kit de desarrollo Provee varios subtemas básicos diseñados para extender. Ficheros CSS base para extender Contiene layout básicas − Fixed Width − Liquid Width Para personalizar zen es necesario tener al menos unos conocimientos medios de html y css Los usuarios y los roles Drupal tiene un sistema de autenticación y gestión de usuarios En principio tenemos tres tipos de usuarios o roles: Admin: usuario especial con privilegios de administrador Usuario Registrado: usuario que ha sido dado de alta en el sistema de Drupal y ha entrado (con login y password) en el sistema Usuario Anónimo: usuario que no ha ha entrado en el sistema Cada tipo de usuario puede tener unas capacidades de visualización, creación o edición de contenidos distintas La estructuras del sitio también puede tener ciertas diferencias en función del tipo de usuario Además de estos tres roles podemos crear roles personalizados con el gestor de usuarios Los usuarios y los roles Los usuarios y los roles Los permisos Drupal tiene un sistema de permisos muy simple Para cada tipo de usuario o rol simplemente definimos si tiene capacidad de ejecutar una acción o no Las acciones habituales son − Acceso o visión del contenido − Edición − Creación − Administración − Borrado − ... Estas acciones se definen para cada tipo de contenido y otros tipos de datos que definen los módulos Podemos asignar a cada usuario más de un rol Gestión de permisos El editor WYSIWYG Por defecto Drupal no incorpora un editor WYSIWYG Si queremos disponer de esta funcionalidad deberemos instalarlo nosotros, con los módulos adecuados Primero deberemos elegir el editor que queremos. Los más habituales son TinyMCE y FCK Debemos instalar el módulo wysiwyg A continuación deberemos instalar el código del editor que deseemos en sites/all/libraries. Podemos hacerlo automáticamente cuando configuramos el módulo wysiwyg Por último deberemos asociar los “formatos de entrada” que utilizaran el editor wysiwyg. Lo mejor es crear un nuevo formato de entrada en el menú de configuración del sitio, opción “formatos de entrada” Alias de URL Drupal utiliza por defecto los enlaces a su número de nodo Si no queremos que se presente esta información al usuario final es conveniente activar los alias de URL Los alias nos permiten cambiar el enlace con el número de nodo interno a un enlace con sentido semántico Autopath es un módulo que nos ayudará a generar automáticamente las URL alternativas, a partir de la información que contiene el nodo Podemos cambiar el enlace siempre que queramos y Drupal actualizará el acceso a la página, pero si hemos utilizado el alias como enlace absoluto en alguna página o como parte de la configuración de algún módulo (por ejemplo, en los menús) éste no se actualizará necesariamente El módulo autopath nos permite configurar los patrones de generación automáticos de URL de los nodos, taxonomías y usuarios mediante los “patrones de remplazo” y sustitución de la puntuación ortográfica El módulo taxonomy Este módulo forma parte del core de Drupal, pero es necesario activarlo manualmente si queremos utilizarlo Nos permite crear categorías y un árbol de palabras clave que podemos asociar a los contenidos que generamos Estas palabras clave nos permitirán, luego, recuperar los nodos que las contengan Asociado con el módulo views crea una forma muy potente de generar páginas dinámicas en nuestro site Casi todos los módulos que necesitan clasificar contenido utilizan taxonomy como servicio de clasificación y requieren su activación Las taxonomías también pueden utilizarse como criterio para presentar o ocultar bloques en páginas que contengan palabras clave determinadas, con un pequeño hack php El módulo CCK Los campos disponibles para contenidos en Drupal sólo son dos: título y cuerpo o descripción CCK permite añadir campos con más tipos de datos a los nodos, permitiendo crear tipos de contenido complejos CCK es el Content Construction Kit. Proporciona únicamente una infraestructura básica para que otros módulos “hagan el trabajo” de ampliar los campos disponibles. Algunos de los módulos que amplían campos más utilizados son: Node reference: añade la posibilidad de crear campos que apunten a otros nodos, para así tener asociados dos nodos diferentes. Number: nos permite crear campos con valores numéricos Text: sirve para crear campos con contenido de texto. Nos permite una amplia configuración para validar el campo, como número límite de palabras, lista de opciones, etc Más módulos que amplian CCK FileField: nos permite crear campos en el tipo de contenido para subir archivos ImageField: es una extensión a FileField que maneja imágenes. Nos da la posibilidad de mostrar la imagen en el nodo directamente tras la descarga ImageField puede combinarse con ImageCache, para tener la capacidad de manipular la imagen directamente en Drupal Option widgets: nos permite añadir algunas opciones extras para nuestros campos, como por ejemplo usar un select, check boxes, botones radio, textfields o textareas entre otros Block Reference: permite referenciar un bloque como un campo del cuerpo de un tipo de contenido CCK Flash: con el conjunto de herramientas de Flash podemos crear campos con contenido Flash Panels: si disponemos del módulo panels podemos llegar a incorporar todo un panel como un campo CCK tipo bloque El módulo Views Views es un módulo imprescindible si queremos generar contenido dinámico en nuestro sitio Básicamente, lo que hace views es seleccionar qué contenidos presentar en un nodo especial “tipo views” en función de una serie de parámetros Un ejemplo típico es la búsqueda de nodos que pertenezcan a una categoría determinada Views genera una lista de nodos que cumplan las condiciones impuestas y los presenta de la forma que se haya definido Views es un módulo complejo que nos permite configurar visualización, filtros de búsqueda, si el usuario podrá configurar la vista, etc. Views se integra con otros módulos, como panels y utiliza intensivamente las taxonomías como filtro El módulo panels Este módulo permite crear regiones a medida en las páginas en integrar el contenido en ellas de una forma muy flexible Las últimas versiones utilizan como infraestructura los módulos de Ctools, un conjunto de herramientas que basado en el paradigma de “contextos” Los contextos permiten que los paneles “sepan” en que entorno van a ser utilizados y adaptan automáticamente la información disponible para su diseño (los “objetos” presentados) a él. El contexto de los paneles está integrado, además, con el sistema de CCK y el sistema de views Esto complica un poco su utilización, pero ofrece una potencia muy alta para personalizar y automatizar el modo en que se presenta el contenido Uso simplificado de panels Panels tiene una versión simplificada de contenido, el “panel node”, que permite utilizar alguna de las funcionalidades de los paneles sin la complejidad del paradigma de contextos Los panel nodes se pueden tratar como páginas simples y administrar directamente sin necesidad de entrar en la interfaz de gestión de los paneles Otra posibilidad es utilizar los minipanels Los minipanels son pequeños paneles que pueden visualizarse como un bloque Esto permite flexibilizar la información que se presenta en un bloque al tiempo que nos permite utilizar la lógica de presentación de los bloques − Regiones − Condiciones de visualización Localización e internacionalización En Drupal se manejan dos conceptos para la localización del idioma En primer lugar, podemos localizar el idioma de Drupal (l12n) − El interfaz de los módulos puede instalarse en varios idiomas, entre ellos el español y el catalán − Se realiza con el módulo local y el archivo de traducción del interfaz También podemos traducir el contenido de los nodos y asociarlos a un idioma. Este concepto es la “internacionalización” de Drupal (i18n) − Podemos tener las páginas en varios idiomas y que Drupal, en función de unos parámetros predefinidos, presente su contenido en uno u otro idioma − Por ejemplo, presentamos páginas de un idioma determinado en función del idioma del navegador o del nombre de dominio por el que se accede − Esto se consigue con el módulo “Content Translation”, junto con otros módulos auxiliares Administración del site Drupal es una herramienta que puede necesitar, en ciertas ocasiones, ciertos trabajos de administración y mantenimiento Backups de la base de datos Actualizaciones Instalación de nuevos módulos y temas Análisis de rendimiento Diagnóstico de problemas Para ejecutar tareas de administración podemos poner nuestro site en modo “off line” Para ello accedemos a “mantenimiento del sitio” en el menú de configuración y podemos deshabilitar el acceso a nuestra web durante el tiempo de mantenimiento Drupal mantiene un registro de eventos en el report de logs Resumen de estado Rendimiento y cache Recursos de ayuda Drupal tiene un sistema interno de ayuda a través del menú de administración, en el apartado “help” o “ayuda” La ayuda contiene instrucciones sobre la configuración y utilización de cada módulo Cuando se instalan nuevos módulos se amplia la ayuda con el contenido de éstos La calidad de la ayuda depende de la calidad de documentación del módulo − Algunos son muy completos y otros muy pobres La ayuda externa puede encontrarse en la propia web de Drupal http://drupal.org/handbook Recursos para módulos contribuidos http://drupal.org/project/modules http://drupalmodules.com/ Recursos de ayuda locales Grupos de usuarios locales Drupal Hispano: http://drupal.org.es/ Drupal.cat: http://www.drupal.cat/ Drupalmania: http://drupalmania.com/ Hay empresas que ofrecen soporte para el desarrollo de proyectos, formación y hosting. Aquia: es la empresa fundada por Dries Buytaert Empresas locales − Por ejemplo nosotros: OPS Consulting − http://www.opscons.com − [email protected] − Existen otras empresas locales, pero tendréis que buscarlas vosotros Barcelona Activa, Febrer 2012