Sie sind auf Seite 1von 31

Taller de introducci on a Drupal

Ezequiel V azquez De la calle

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Sobre mi
Estudios Ingeniero T ecnico en Inform atica - UCA M aster en Ingenier a del Software - US Experto en Seguridad de las TIC - US Experiencia 4 a nos como desarrollador web, 2 en Drupal Actualmente: DevOps Drupal Python, C++, GNU/Linux, network programming. . . Aciones RocknRoll (guitarra) y videojuegos Narrativa fant astica, rol, cine. . .
Ezequiel V azquez De la calle Taller de introducci on a Drupal

Indice

Introducci on Conceptos b asicos Desarrollo: extendiendo Drupal Miscel anea Referencias

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Indice

Introducci on Conceptos b asicos Desarrollo: extendiendo Drupal Miscel anea Referencias

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Introducci on

Y esto de qu e va? CMS escrito en PHP Extensible mediante m odulos y temas Arquitectura LAMP Software libre (GPL) Actualmente, Drupal 7 Lo mejor: La comunidad

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Introducci on
Puntos fuertes Gran exibilidad Enorme velocidad de desarrollo Separaci on de presentaci on y l ogica Multitud de m odulos (16k+) y temas (1.2k+) disponibles Documentaci on extensa, y de alta calidad Soporte por parte de la comunidad

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Introducci on

Desventajas Bajo rendimiento: dependencia de cach e Baja usabilidad para el usuario nal Incompatibilidad entre versiones mayores Curva de aprendizaje muy elevada

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Introducci on
Puede parecer una tarea imposible. . .

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Introducci on
Pero s olo es cuesti on de echarle ganas!

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Indice

Introducci on Conceptos b asicos Desarrollo: extendiendo Drupal Miscel anea Referencias

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Conceptos b asicos
Componentes Core: Instalaci on b asica de Drupal Module: Extensi on de la funcionalidad del core Theme: Extensi on visual (Plantillas, estilos. . . ) Library: Librer as externas con funcionalidad adicional

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Conceptos b asicos

Sistema de publicaci on Tipo de contenido Campos Nodo Comentario Taxonom a

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Conceptos b asicos

Organizar la informaci on Men u P agina Regi on Bloque Plantilla

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Conceptos b asicos
Gesti on de usuarios Usuario Perl Rol Permiso

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Ejercicio

Construcci on de un blog sencillo


1 2 3 4 5 6 7

Crear una taxonom a y t erminos Denir un Tipo de contenido: entrada T tulo, cuerpo, fecha, categor as. . . Rol para usuarios publicadores Asignar permisos adecuados Usuario para publicar, con rol Bloque con contenido HTML

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Indice

Introducci on Conceptos b asicos Desarrollo: extendiendo Drupal Miscel anea Referencias

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

C omo funciona Drupal

Programaci on estrucutrada (en D8, objetos)


Flujo de ejecuci on
1

Todas las peticiones se reciben en index.php (mod rewrite ) URLs del tipo index.php?q=esto/es/una/url Se carga el bootstrap Ejecuci on de entrada de men u Funci on de callback Salida se pasa al theme Renderizado del HTML Env o de la respuesta al navegador

2 3 4 5 6 7

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

C omo funciona Drupal

Concepto importante: hooks


Funciones que se ejecutan cuando un evento sucede Ejemplo: hook init cuando termina la carga de bootstrap Orden determinado por el peso del m odulo que lo implementa Un hook de cada tipo por m odulo Esquema de nombre: nombre modulo nombre hook()

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

C omo funciona Drupal


M ultiples APIs
Algunas API de Drupal. . . Forms API: Formularios Database API: Base de datos Entity API: Nodos, t erminos, comentarios. . . Field API: Campos de entidades Batch API: Operaciones por lotes Sistema de menu Variables persistentes Sistema de traducci on ...
Ezequiel V azquez De la calle Taller de introducci on a Drupal

C omo es un m odulo?

Estructura de directorios sites/all/modules/tipo modulo/nombre modulo


contrib main features

Subdirectorios:
js css img includes tpl translations

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

C omo es un m odulo?

Ficheros nombre modulo.info Meta-informaci on del m odulo nombre modulo.module Implementaci on de hooks nombre modulo.install Hooks de instalaci on/desinstalaci on nombre modulo.admin.inc Conguraci on del m odulo nombre modulo.inc Funciones que no son hooks nombre modulo.views.inc Hooks del m odulo Views nombre modulo.rules.inc Hooks del m odulo Rules ...

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Capa de presentaci on

Sistema de plantillas Plantilla HTML con c odigo PHP incrustado nombre chero.tpl.php Usado seg un nomenclatura del chero Recibe un array de par ametros ($vars) Funciones de preprocesado

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Ejercicio
URL que recibe par ametro y lo muestra por pantalla Fichero info Fichero module
Hook menu, denir la URL Hook permissions, denir permiso de acceso Hook theme, denir plantilla Denici on de callback Interactuar con la base de datos A nadir Javascript y CSS Hook node view, responde a visualizaci on de nodo

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Indice

Introducci on Conceptos b asicos Desarrollo: extendiendo Drupal Miscel anea Referencias

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Debugging

Varias herramientas Drush (no s olo debug) M odulo devel M odulo coder xdebug xhprof Drupal for Firebug

http://ratatosk.net/drupal/tutorials/debugging-drupal.html
Ezequiel V azquez De la calle Taller de introducci on a Drupal

Rendimiento

M as herramientas Memcache Apc Varnish Authcache ApacheSolr Monitorizaci on Y por supuesto. . . Buenas pr acticas Arquitectura adecuada

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Seguridad
Seguridad en profundidad Drupal proporciona muchas herramientas, usadlas, insensatos! La importancia de la formaci on

http://2013.drupalcamp.es/desarrollo-seguro-en-drupal
Ezequiel V azquez De la calle Taller de introducci on a Drupal

Indice

Introducci on Conceptos b asicos Desarrollo: extendiendo Drupal Miscel anea Referencias

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Referencias
Pagina ocial de Drupal https://drupal.org Documentacion completa https://drupal.org/documentation Estandar de codicacion https://drupal.org/coding-standards Cracking Drupal http://www.crackingdrupal.com Drupal 7 Pro Development http://www.drupalbook.com High Performance Drupal https://drupal.org/node/2119971

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Como conclusi on
Cuesti on de echarle ganas. . . y horas Velocidad, exibilidad. . . Lo mejor? La comunidad

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Esto es todo, amigos...

Gracias! Preguntas?
@RabbitLair ezequielvazq[at]gmail[dot]com

Ezequiel V azquez De la calle

Taller de introducci on a Drupal

Das könnte Ihnen auch gefallen