Descargar pdf

Anuncio
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
Descargar