Taller
Introducción a Drupal
CMS
(Content Management System)
Comunidad
CMF
(Content Management Framework)
¿Qué es Drupal?
Licencia
● Distribuido bajo licencia GPL("GNU General
Public License")
● Documentación (handbook) bajo licencia
Creative Commons License, Attribution-
ShareAlike2.0
● Mantenido por la comunidad.
The Drupal Way
● “Drupal es como un kit de lego”.
Desarrolladores han construído los bloques de
construcción. Es tarea de nosotros colocar
esos bloque de la manera que queramos.
● Drupal tiene un core sumamente simple con un
número de librerías. A partir de este core entran
en juego los módulos.
Casos de Estudio
Casos de Estudio
Casos de Estudio
Casos de Estudio
Casos de Estudio
Requerimientos
● Sistemas Opertivos: Linux, Unix, Windows.
● PHP
● Servidor Web:
● Apache (preferible)
● IIS
● Lighthttp
● Gestor de Base de Datos:
● MySQL
● PostgreSQL
Arquitectura
Flujo de Ejecución
Arquitectura Drupal
INSTALACIÓN
Instalación
● Descargar la última versión estable de
drupal.org
● Descomprimirlo
tar xvzf drupal-x.xx.tar.gz
Estructura de Carpetas
Core
NO TOCAR EL CORE
MI CARPETA SE LLAMA sites
Creación de la Base de Datos
● Desde consola haz lo siguiente:
mysql -uuser -p
create database nombre
Permisos de Archivos
● Desde la ruta de la carpeta que creamos de
drupal hacer lo siguiente:
cd /sites/default
mkdir files
cp default.settings.php settings.php
● Dar permisos de escritura a files y a
settings.php
Arquitectura Drupal
FUNCIONAMIENTO
Contenidos en Drupal
● En Drupal cada contenido es un nodo (node en
inglés) a excepción de:
● Taxonomías
● Bloques
● Menús
● Comentarios
● Cada nodo pertenece a un tipo de contenido.
Formatos de Entrada
● Los formatos de entrada pueden aplicar filtros a
los contenidos.
● Un filtro es un conjunto de reglas que pueden
ser aplicadas para transformar texto.
● Ejemplo:
● HTML Filter: proporciona una lista blanco de
etiquetas HTML.
● Pirate Filter
Menús
● Se deben manejar dos conceptos principales:
Menú y Menú Ítem.
● Un menú es un bloque que puede contener
varios menú ítem.
● Un menú ítem es un enlace, ya sea interno o
externo.
● Los menús están integrados con el sistema de
permisos de Drupal.
Bloques
● Utilizado para presentar pequeños pedazos de
contenido.
● No es un nodo o tipo de contenido.
● Los temas definen regiones en donde se van a
colocar los bloques.
● Drupal tiene una interfaz para administrar
dónde colocar cada bloque.
Taxonomías
Taxonomías
● Categorización de nuestro sitio
● Permite crear una arquitectura de términos:
● Términos con uno o más padres
● Sinónimos
● Términos relacionados
● Múltiples módulos de terceros que agregan
funcionalidad mediante taxonomías.
Taxonomías
● Se deben entender los conceptos de que en el
sitio se definen vocabularios.
● Los vocabularios se asocian con tipos de
contenidos.
● Cada vocabulario puede tener un listado de
términos.
Temas
● Un theme o tema que define la capa de
presentación de un sitio en Drupal.
● Se pueden utilizan varios Template Engines.
● Drupal utiliza por defecto PHPTemplate pero
soporta otros como Smarty.
● Totalmente flexibles.
● Sobreescribir funciones de template.
Anatomía de un tema
Temas
● Los temas se deben instalar en la carpeta
sites/all/themes
● Drupal tiene soporte para sub-temas. El tema
base más utilizado para extender temas en
drupal es Zen (http://drupal.org/project/zend).
Sistema de Usuarios
● Drupal permite la creación de diferentes tipos
de usuarios o “Roles”.
● Cada módulo tiene una serie de permisos que
se le pueden asignar a los roles.
● “Out of the box” Drupal viene con dos roles
definidos:
● Anónimo
● Autenticado
Sistema de Usuarios
● Un usuario puede tener uno o más roles. El
usuario va a heredar la suma de todos los
permisos de los roles que tenga asociado.
● El rol anónimo es aquel que no ha sido
autenticado dentro del sitio.
● Permite diferentes configuraciones para la
creación de cuentas de usuario.
Módulos
Módulos
● Son plug-ins que dan la funcionalidad a Drupal.
● Pueden ser:
● Módulos incluidos en el core
● Módulos contribuidos
● Existen cantidad de módulos en Drupal, desde
módulos para crear sitios para e-commerce,
calendario de eventos y muchos más.
Drupal Core
● Blog y Foros
● URL Alias
● Manejo de Usuarios
● Soporte RSS
● Multilenguaje
● Multisitios
● Estadísticas, Tracking, Loging, Reporting
Módulos de Terceros
● CCK
● Views
● Image Cache
● Taxonomy Access Control
● Módulos de ecommerce
● WYSIWYG
● Pathauto
Arquitectura Drupal
INSTALAR MÓDULOS
Descarga e Instalación
● Descargar el módulo. Normalmente en
http://drupal.org/project/modulo (donde modulo
es el nombre del módulo)
● Descomprimirlo en la carpeta
sites/all/modules/
● /contrib: si es un módulo contribuido.
● /custom: si es desarrollado por nosotros.
● Activar módulo
VIEWS
● Este módulo permite un método flexible para
controlar como mostrar la data en Drupal.
● Permite crear páginas, bloques, rss.
● Esta herramienta se encarga de construir
consultas a través de una interfáz gráfica
amigable y mostrarla en tablas, listas html,
entre otros métodos.
VIEWS
CCK
ImageCache
Recursos
● drupal.org
● /forum
● /handbook
● /planet
● /project
● IRC (freenode)
● #drupal
● #drupal-es
● #drupal-views
● groups.drupal.org/panama
Más Recursos
● Screencast
● http://www.drupaltherapy.com/
● http://gotdrupal.com/
● http://mustardseedmedia.com/podcast
● Información, Artículos, Podcasts
● http://lullabot.com
● http://developmentseed.org
Arquitectura Drupal
GRACIAS!!

Introduccion drupal

  • 1.
  • 2.
    CMS (Content Management System) Comunidad CMF (ContentManagement Framework) ¿Qué es Drupal?
  • 3.
    Licencia ● Distribuido bajolicencia GPL("GNU General Public License") ● Documentación (handbook) bajo licencia Creative Commons License, Attribution- ShareAlike2.0 ● Mantenido por la comunidad.
  • 4.
    The Drupal Way ●“Drupal es como un kit de lego”. Desarrolladores han construído los bloques de construcción. Es tarea de nosotros colocar esos bloque de la manera que queramos. ● Drupal tiene un core sumamente simple con un número de librerías. A partir de este core entran en juego los módulos.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
    Requerimientos ● Sistemas Opertivos:Linux, Unix, Windows. ● PHP ● Servidor Web: ● Apache (preferible) ● IIS ● Lighthttp ● Gestor de Base de Datos: ● MySQL ● PostgreSQL
  • 11.
  • 12.
  • 13.
  • 14.
    Instalación ● Descargar laúltima versión estable de drupal.org ● Descomprimirlo tar xvzf drupal-x.xx.tar.gz
  • 15.
  • 16.
    Core NO TOCAR ELCORE MI CARPETA SE LLAMA sites
  • 17.
    Creación de laBase de Datos ● Desde consola haz lo siguiente: mysql -uuser -p create database nombre
  • 18.
    Permisos de Archivos ●Desde la ruta de la carpeta que creamos de drupal hacer lo siguiente: cd /sites/default mkdir files cp default.settings.php settings.php ● Dar permisos de escritura a files y a settings.php
  • 19.
  • 20.
    Contenidos en Drupal ●En Drupal cada contenido es un nodo (node en inglés) a excepción de: ● Taxonomías ● Bloques ● Menús ● Comentarios ● Cada nodo pertenece a un tipo de contenido.
  • 21.
    Formatos de Entrada ●Los formatos de entrada pueden aplicar filtros a los contenidos. ● Un filtro es un conjunto de reglas que pueden ser aplicadas para transformar texto. ● Ejemplo: ● HTML Filter: proporciona una lista blanco de etiquetas HTML. ● Pirate Filter
  • 22.
    Menús ● Se debenmanejar dos conceptos principales: Menú y Menú Ítem. ● Un menú es un bloque que puede contener varios menú ítem. ● Un menú ítem es un enlace, ya sea interno o externo. ● Los menús están integrados con el sistema de permisos de Drupal.
  • 23.
    Bloques ● Utilizado parapresentar pequeños pedazos de contenido. ● No es un nodo o tipo de contenido. ● Los temas definen regiones en donde se van a colocar los bloques. ● Drupal tiene una interfaz para administrar dónde colocar cada bloque.
  • 24.
  • 25.
    Taxonomías ● Categorización denuestro sitio ● Permite crear una arquitectura de términos: ● Términos con uno o más padres ● Sinónimos ● Términos relacionados ● Múltiples módulos de terceros que agregan funcionalidad mediante taxonomías.
  • 26.
    Taxonomías ● Se debenentender los conceptos de que en el sitio se definen vocabularios. ● Los vocabularios se asocian con tipos de contenidos. ● Cada vocabulario puede tener un listado de términos.
  • 27.
    Temas ● Un themeo tema que define la capa de presentación de un sitio en Drupal. ● Se pueden utilizan varios Template Engines. ● Drupal utiliza por defecto PHPTemplate pero soporta otros como Smarty. ● Totalmente flexibles. ● Sobreescribir funciones de template.
  • 28.
  • 29.
    Temas ● Los temasse deben instalar en la carpeta sites/all/themes ● Drupal tiene soporte para sub-temas. El tema base más utilizado para extender temas en drupal es Zen (http://drupal.org/project/zend).
  • 30.
    Sistema de Usuarios ●Drupal permite la creación de diferentes tipos de usuarios o “Roles”. ● Cada módulo tiene una serie de permisos que se le pueden asignar a los roles. ● “Out of the box” Drupal viene con dos roles definidos: ● Anónimo ● Autenticado
  • 31.
    Sistema de Usuarios ●Un usuario puede tener uno o más roles. El usuario va a heredar la suma de todos los permisos de los roles que tenga asociado. ● El rol anónimo es aquel que no ha sido autenticado dentro del sitio. ● Permite diferentes configuraciones para la creación de cuentas de usuario.
  • 32.
  • 33.
    Módulos ● Son plug-insque dan la funcionalidad a Drupal. ● Pueden ser: ● Módulos incluidos en el core ● Módulos contribuidos ● Existen cantidad de módulos en Drupal, desde módulos para crear sitios para e-commerce, calendario de eventos y muchos más.
  • 34.
    Drupal Core ● Blogy Foros ● URL Alias ● Manejo de Usuarios ● Soporte RSS ● Multilenguaje ● Multisitios ● Estadísticas, Tracking, Loging, Reporting
  • 35.
    Módulos de Terceros ●CCK ● Views ● Image Cache ● Taxonomy Access Control ● Módulos de ecommerce ● WYSIWYG ● Pathauto
  • 36.
  • 37.
    Descarga e Instalación ●Descargar el módulo. Normalmente en http://drupal.org/project/modulo (donde modulo es el nombre del módulo) ● Descomprimirlo en la carpeta sites/all/modules/ ● /contrib: si es un módulo contribuido. ● /custom: si es desarrollado por nosotros. ● Activar módulo
  • 38.
    VIEWS ● Este módulopermite un método flexible para controlar como mostrar la data en Drupal. ● Permite crear páginas, bloques, rss. ● Esta herramienta se encarga de construir consultas a través de una interfáz gráfica amigable y mostrarla en tablas, listas html, entre otros métodos.
  • 39.
  • 40.
    Recursos ● drupal.org ● /forum ●/handbook ● /planet ● /project ● IRC (freenode) ● #drupal ● #drupal-es ● #drupal-views ● groups.drupal.org/panama
  • 41.
    Más Recursos ● Screencast ●http://www.drupaltherapy.com/ ● http://gotdrupal.com/ ● http://mustardseedmedia.com/podcast ● Información, Artículos, Podcasts ● http://lullabot.com ● http://developmentseed.org
  • 42.

Notas del editor

  • #13 - La primera capa es la de data, que es en donde se encuentra toda la información del siito (base de datos). - La siguiente capa es en donde los módulos viven. Los módulos permiten extender la funcionalidad de drupal. - Bloques proveen contenido que puede ser colocado en diferentes regiones que el tema defina. - En la capa de permisos se define lo que los usuarios pueden ver o hacer. - Por último el tema o theme formatea la data en xhtml y css.
  • #26 En General puedes definir la arquitectura de contenido del sitio.
  • #27 Esto quiere decir que al agregar un nodo del tipo de contenido asociado tendrá la opción de escoger que término(s) del vocabulario desea asociar.
  • #32 Por ejemplo se puede hacer que los usuarios puedan crear sus cuentas en el sistema, pero que tengan que ser aprovados por un administrador. También permite cambiar los mensajes de correo que se le envían a los usuarios.