Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×

This is Drupal! (Basics)

Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Chargement dans…3
×

Consultez-les par la suite

1 sur 36 Publicité

Plus De Contenu Connexe

Similaire à This is Drupal! (Basics) (20)

Publicité

This is Drupal! (Basics)

  1. 1. Hello! This is Drupal!
  2. 2. Sobre nosotros La Drupalera AED Grupo Local Sevilla José Luis Bellido @jose_lakatos Carmen García @keilovecraft
  3. 3. ¿Qué vamos a ver? ● Introducción ● Conceptos básicos ● Desarrollo: extendiendo Drupal ● Referencias
  4. 4. 1. Introducción
  5. 5. Introducción: ¿Qué es? ● CMS escrito en PHP ● Extensible mediante módulos y temas ● Arquitectura LAMP ● Software libre (GPL) ● Actualmente, Drupal 7 ● Lo mejor: La comunidad
  6. 6. Introducción: Puntos fuertes ● Gran flexibilidad ● Enorme velocidad de desarrollo ● Separación de presentación y lógica ● Multitud de módulos (16k+) y temas (1.2k+) disponibles ● Documentación extensa y calidad ● Soporte por parte de la comunidad
  7. 7. Introducción: Puntos débiles ● Bajo rendimiento: Dependencia de caché ● Menor usabilidad para el usuario inicial ● Incompatibilidad entre versiones mayores ● Curva de aprendizaje elevada
  8. 8. 2. Conceptos básicos
  9. 9. Drush, nuestra mejor herramienta ● drush dl ● drush en ● drush dis ● drush pm-uninstall ● drush cc ● drush pml ● drush sql-sync @alias1 @alias2 ...y muchos más
  10. 10. Conceptos básicos: Componentes ● Core : Instalación básica de Drupal ● Module: Extensión de la funcionalidad del core ● Theme: Extensión “visual” (Plantillas, estilos..) ● Library: Librerías externas con funcionalidad adicional
  11. 11. Conceptos básicos: Sistema de publicación ● Tipo de contenido ● Campos ● Nodo ● Comentario ● Taxonomía
  12. 12. Conceptos básicos: Organizar la información ● html ● página ● región ● nodo ● bloques ● Plantillas anidadas
  13. 13. Conceptos básicos: Menús ● Características ○ Potente gestor de menús ○ Posibilidad de anidamiento ○ Gestión de menús multilenguaje ○ Colocación por bloques ● Menús por defecto: ○ Management ○ Main menu ○ User menu ○ Navigation
  14. 14. Conceptos básicos: Bloques ● Piezas de código HTML que podemos colocar donde necesitemos ● Gestión de bloques básica ● Se colocan en las regiones de los temas. ● Ampliable por módulos ● Ejemplos ○ Bloque de login ○ Bloques de menús ○ Bloques personalizados.
  15. 15. Conceptos básicos: Gestión de usuarios ● Usuario ● Perfil ● Rol ● Permiso
  16. 16. 3. Desarrollo extendido en Drupal
  17. 17. 3.1. Hooks
  18. 18. Conceptos 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 ● Un hook de cada tipo por módulo ● Esquema de nombre: nombre_modulo_nombre_hook()
  19. 19. Múltiples API’s: Algunas API de Drupal ● Form API: Formularios ● Database API: Base de datos ● Entity API: Nodos, términos, comentarios, … ● Field API: Campos de entidades ● Batch API: Operaciones por lotes ● Sistema de menú ● Variables persistentes ● Sistema de traducción ● ...
  20. 20. 3.2. Módulos
  21. 21. ¿Cómo es un módulo? Estructura de directorios ● sites/all/modules/tipo-modulo/nombre_modulo ○ contrib ○ custom ○ features ○ patch ● Subdirectorios: ○ js ○ css ○ img ○ includes ○ tpl, translations, …
  22. 22. ¿Cómo es un módulo? Ficheros ● nombre_modulo.info → Meta-información del módulo ● nombre_modulo.module → Implementación de hooks ● nombre_modulo.install → Hooks de instalación/desinstalación ● nombre_modulo.admin.inc → Configuración del módulo ● nombre_modulo.inc → Funciones que no son hooks ● nombre_modulo.views.inc → Hooks del módulo Views
  23. 23. 3.3. Módulos comunes
  24. 24. Módulos comunes: Views Características ○ Creación de listados de forma sencilla. ○ Extensible mediante muchos otros ■ Sliders ■ Carruseles ○ Todo mediante interfaz. ○ Sólo para el desarrollo. Conozcamos a Views! Objetivo: Acelerar la forma en la mostramos listados de contenido
  25. 25. Módulos comunes: Context Objetivo: Queremos poder definir más fácilmente la estructura de contenidos de nuestro site Características ○ Disponemos de condiciones para definir layouts. ○ Más potente que la administración del core. ○ Son solapables. Conozcamos a Context!
  26. 26. Módulos comunes: Devel Generate Objetivo: Queremos poder tener herramientas específicas para desarrolladores. Características ○ Mejoramos como vemos variables. ○ Podemos generar contenido y usuarios aleatorio. ○ Para desarrolladores Conozcamos a Devel!
  27. 27. Módulos comunes: Features Objetivo: Drupal es muy dependiente de la BD. Queremos tenerla en código. Características ○ Nos permite exportar la configuración a código. ○ Útil para desplegar funcionalidades. ○ Puedo empaquetar funcionalidad. Conozcamos a Features!
  28. 28. Módulos comunes: Muchos más ● Token ● Pathauto ● Webform ● CKEditor ● Rules ● ...
  29. 29. 3.4. Temas
  30. 30. Capa de presentación: Temas ● Distinta apariencia, distintas funcionalidades ● Subtemas customizables ● Nuevos lenguajes opcionales
  31. 31. Capa de presentación: Sistemas de plantillas ● Plantilla HTML con código PHP incrustado ● nombre_fichero.tpl.php ● Usado según nomenclatura del fichero ● Recibe un array de parámetros ($vars) ● Funciones de preprocesado
  32. 32. 4. Referencias
  33. 33. Referencias Página oficial de Drupal https://drupal.org Documentación completa https://drupal.org/documentation Estándar de codificación https://drupal.org/coding-standards Drupal 7 Pro Development http://www.drupalbook.com High Performance Drupal https://drupal.org/node/2119971 Blog La Drupalera http://www.ladrupalera.com/drupal/ Api Drupal 7 https://api.drupal.org/api/drupal Drupal Modules http://drupalmodules.com/ Grupo Local de Sevilla https://groups.drupal.org/sevilla Canal vimeo http://vimeo.com/drupales
  34. 34. Referencias Ejemplos completos https://github.com/jlbellido/aed_drupal_workshop Web DrupalCamp 2015 en Jerez! http://2015.drupalcamp.es/
  35. 35. Conclusión ● Cuestión de echarle ganas... y horas ● Velocidad, flexibilidad... ● ¿Lo mejor? La comunidad
  36. 36. ¡Gracias! ¿Preguntas?

×