Your SlideShare is downloading. ×
0
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Taller Drupal - Jornadas Software Libre UCA
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Taller Drupal - Jornadas Software Libre UCA

242

Published on

Presentación empleada en el taller de introducción a Drupal, que impartí en las Jornadas de Software Libre, en la Universidad de Cádiz, el 26 de noviembre de 2013

Presentación empleada en el taller de introducción a Drupal, que impartí en las Jornadas de Software Libre, en la Universidad de Cádiz, el 26 de noviembre de 2013

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
242
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Taller de introducci´n a Drupal o Ezequiel V´zquez De la calle a Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 2. Sobre mi Estudios Ingeniero T´cnico en Inform´tica - UCA e a M´ster en Ingenier´ del Software - US a ıa Experto en Seguridad de las TIC - US Experiencia 4 a˜os como desarrollador web, 2 en Drupal n Actualmente: DevOps Drupal Python, C++, GNU/Linux, network programming. . . Aficiones Rock’n’Roll (guitarra) y videojuegos Narrativa fant´stica, rol, cine. . . a Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 3. ´ Indice 1 Introducci´n o 2 Conceptos b´sicos a 3 Desarrollo: extendiendo Drupal 4 Miscel´nea a 5 Referencias Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 4. ´ Indice 1 Introducci´n o 2 Conceptos b´sicos a 3 Desarrollo: extendiendo Drupal 4 Miscel´nea a 5 Referencias Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 5. Introducci´n o ¿Y esto de qu´ va? e CMS escrito en PHP Extensible mediante m´dulos y temas o Arquitectura LAMP Software libre (GPL) Actualmente, Drupal 7 Lo mejor: La comunidad Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 6. Introducci´n o Puntos fuertes Gran flexibilidad Enorme velocidad de desarrollo Separaci´n de presentaci´n y l´gica o o o Multitud de m´dulos (16k+) y temas (1.2k+) disponibles o Documentaci´n extensa, y de alta calidad o Soporte por parte de la comunidad Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 7. Introducci´n o Desventajas Bajo rendimiento: dependencia de cach´ e Baja usabilidad para el usuario final Incompatibilidad entre versiones mayores Curva de aprendizaje muy elevada Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 8. Introducci´n o Puede parecer una tarea imposible. . . Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 9. Introducci´n o ¡Pero s´lo es cuesti´n de echarle ganas! o o Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 10. ´ Indice 1 Introducci´n o 2 Conceptos b´sicos a 3 Desarrollo: extendiendo Drupal 4 Miscel´nea a 5 Referencias Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 11. Conceptos b´sicos a Componentes Core: Instalaci´n b´sica de Drupal o a Module: Extensi´n de la funcionalidad del core o Theme: Extensi´n “visual” (Plantillas, estilos. . . ) o Library: Librer´ externas con funcionalidad adicional ıas Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 12. Conceptos b´sicos a Sistema de publicaci´n o Tipo de contenido Campos Nodo Comentario Taxonom´ ıa Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 13. Conceptos b´sicos a Organizar la informaci´n o Men´ u P´gina a Regi´n o Bloque Plantilla Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 14. Conceptos b´sicos a Gesti´n de usuarios o Usuario Rol Perfil Permiso Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 15. Ejercicio Construcci´n de un blog sencillo o 1 Crear una taxonom´ y t´rminos ıa e 2 Definir un Tipo de contenido: entrada 3 T´ ıtulo, cuerpo, fecha, categor´ . . ıas. 4 Rol para usuarios publicadores 5 Asignar permisos adecuados 6 Usuario para publicar, con rol 7 Bloque con contenido HTML Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 16. ´ Indice 1 Introducci´n o 2 Conceptos b´sicos a 3 Desarrollo: extendiendo Drupal 4 Miscel´nea a 5 Referencias Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 17. C´mo funciona Drupal o Programaci´n estrucutrada (en D8, objetos) o Flujo de ejecuci´n o 1 Todas las peticiones se reciben en index.php (mod rewrite) URLs del tipo index.php?q=esto/es/una/url 2 Se carga el bootstrap 3 Ejecuci´n de entrada de men´ o u 4 Funci´n de callback o 5 Salida se pasa al theme 6 Renderizado del HTML 7 Env´ de la respuesta al navegador ıo Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 18. C´mo funciona Drupal o 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´dulo que lo implementa o Un hook de cada tipo por m´dulo o Esquema de nombre: nombre modulo nombre hook() Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 19. C´mo funciona Drupal o M´ltiples APIs u Algunas API de Drupal. . . Forms API: Formularios Database API: Base de datos Entity API: Nodos, t´rminos, comentarios. . . e Field API: Campos de entidades Batch API: Operaciones por lotes Sistema de menu Variables persistentes Sistema de traducci´n o ... Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 20. ¿C´mo es un m´dulo? o o Estructura de directorios sites/all/modules/tipo modulo/nombre modulo contrib main features Subdirectorios: js css img includes tpl translations Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 21. ¿C´mo es un m´dulo? o o Ficheros nombre modulo.info → Meta-informaci´n del m´dulo o o nombre modulo.module → Implementaci´n de hooks o nombre modulo.install → Hooks de instalaci´n/desinstalaci´n o o nombre modulo.admin.inc → Configuraci´n del m´dulo o o nombre modulo.inc → Funciones que no son hooks nombre modulo.views.inc → Hooks del m´dulo Views o nombre modulo.rules.inc → Hooks del m´dulo Rules o ... Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 22. Capa de presentaci´n o Sistema de plantillas Plantilla HTML con c´digo PHP incrustado o nombre fichero.tpl.php Usado seg´n nomenclatura del fichero u Recibe un array de par´metros ($vars) a Funciones de preprocesado Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 23. Ejercicio URL que recibe par´metro y lo muestra por pantalla a Fichero info Fichero module Hook menu, definir la URL Hook permissions, definir permiso de acceso Hook theme, definir plantilla Definici´n de callback o Interactuar con la base de datos A˜adir Javascript y CSS n Hook node view, responde a visualizaci´n de nodo o Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 24. ´ Indice 1 Introducci´n o 2 Conceptos b´sicos a 3 Desarrollo: extendiendo Drupal 4 Miscel´nea a 5 Referencias Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 25. Debugging Varias herramientas Drush (no s´lo debug) o M´dulo devel o M´dulo coder o xdebug xhprof Drupal for Firebug http://ratatosk.net/drupal/tutorials/debugging-drupal.html Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 26. Rendimiento M´s herramientas a Memcache Apc Varnish Authcache ApacheSolr Monitorizaci´n o Y por supuesto. . . Buenas pr´cticas a Arquitectura adecuada Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 27. Seguridad Seguridad en profundidad Drupal proporciona muchas herramientas, ¡usadlas, insensatos! La importancia de la formaci´n o http://2013.drupalcamp.es/desarrollo-seguro-en-drupal Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 28. ´ Indice 1 Introducci´n o 2 Conceptos b´sicos a 3 Desarrollo: extendiendo Drupal 4 Miscel´nea a 5 Referencias Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 29. Referencias Pagina oficial de Drupal https://drupal.org Documentacion completa https://drupal.org/documentation Estandar de codificacion 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´zquez De la calle a Taller de introducci´n a Drupal o
  • 30. Como conclusi´n o Cuesti´n de echarle ganas. . . y horas o Velocidad, flexibilidad. . . ¿Lo mejor? La comunidad Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o
  • 31. Esto es todo, amigos... ¡Gracias! ¿Preguntas? @RabbitLair ezequielvazq[at]gmail[dot]com Ezequiel V´zquez De la calle a Taller de introducci´n a Drupal o

×