layout discovery. drupal summer barcelona 2017

Download Layout discovery. Drupal Summer Barcelona 2017

Post on 21-Jan-2018

224 views

Category:

Technology

0 download

Embed Size (px)

TRANSCRIPT

  1. 1. Layout discovery Drupal Summer Barcelona 2017 Luis Ortiz Ramos
  2. 2. Luis Ortiz Ramos CTO de Atenea tech luis@ateneatech.com @luisortizramos
  3. 3. Somos expertos en Drupal desde 2007 Somos Siddharta, Oriol, Robert, David, Patricia, Xavi, Rubn, Pepe, Miguel y Luis. Trabajamos para La Vanguardia, Thermomix, Dexeus, Estrella Damm, Amnista Internacional, Mdicos Sin Fronteras, Infojobs, Greenpeace, Chupa Chups, Ayuntamiento de Barcelona, Torres, la CUP Estamos en el Citilab de Cornell, Barcelona Puedes contactar con nosotros en hola@ateneatech.com
  4. 4. Layout initiative nombre en clave SCOTCH
  5. 5. En marzo de 2012, Dries Buytaert anuncia una nueva iniciativa: Layouts. El lder de la iniciativa es Kris EclipseGC Vanderwater
  6. 6. The goal of the Layout initiative is to make all elements on the page into contextual blocks that can be rearranged and organized into flexible layouts (and even layouts within layouts) through a drag and drop interface.
  7. 7. 1.Contextual blocks 2.Blocks everywhere 3.Multiple page layouts 4.Partial page rendering 5.Better UI/UX to manage blocks
  8. 8. En marzo de 2012: El componente de Symfony HttpKernel no estaba en el core CMI no estaba completado El sistema de Plugins estaba en desarrollo
  9. 9. En octubre de 2012 se commitean los primeros cambios...
  10. 10. El ciclo de desarrollo de Drupal 8... ...hasta 8.0.0
  11. 11. Algo pas en la Drupalcon de Barcelona ...en 2015
  12. 12. 1.Crear una branch por cada caracterstica 2.Solo hacer merge con la branch principal cuando la caracterstica est finalizada 3. Lanzar nuevas versiones de Drupal peridicamente
  13. 13. Layout Discovery est en Drupal 8.3.0 (experimental) ...y Field Layout tambin
  14. 14. Layout Discovery
  15. 15. Provides a way for modules or themes to register layouts.
  16. 16. Registrando Layouts
  17. 17. El caso ms simple
  18. 18. 1.Creamos el archivo my_custom_module.layouts.yml 2. Creamos una plantilla
  19. 19. two_column: label: 'Two column' category: 'My Layouts' template: templates/two-column default_region: main regions: main: label: Main content sidebar: label: Sidebar
  20. 20.
    {{ content.main }}
    {{ content.sidebar }}
  21. 21. Registrando nuestra propia plantilla usando theme
  22. 22. 1.Registramos la plantilla usando hook_theme 2.Creamos la plantilla 3.Registramos el layout en el archivo my_custom_module.layouts.yml
  23. 23. function MY_MODULE_OR_THEME_theme() { return [ 'advanced_layout_1' => [ 'template' => 'templates/advanced-layout-1', // layout_plugin expects the theme hook to be declared with this: 'render element' => 'content', ], ]; }
  24. 24. advanced_layout_1: label: Advanced Layout 1 category: My Layouts theme: advanced_layout_1 regions: main: label: Main content alternate_advanced_layout_1: label: Advanced Layout 1 category: My Layouts theme: advanced_layout_1__alternate regions: main: label: Main content
  25. 25. Utilizando una clase alternativa
  26. 26. advanced_layout_3: label: Advanced Layout 3 category: My Layouts class: 'Drupalmy_custom_moduleMyLayoutClass' template: templates/advanced-layout-3 library: my_custom_module/advanced-layout-library regions: main: label: Main content
  27. 27.