Drupal 8 deeper dive

  • Published on
    16-Jul-2015

  • View
    47

  • Download
    0

Transcript

  • Michael Schmid @Schnitzel

  • We
  • Drupal 8 almost all Code new

    SiteBuilders and Users: Only improvements

  • Content Management

  • New content form

  • Internationalization Drupal 7

    29 Modules for full translatability

    Drupal 8

    4 Modules for full translatability

    and they are all in Core!

  • Internationalization

  • Accessibility

  • Tours

  • Content Management New content form + preview

    Wysiwyg

    In-place editing

    Multilingual & Accessible at its core

    Tours for contextual help

  • Site Building

  • Views in Core

  • Everything is an entity Fieldable

    Same APIs

    Better integration into Contrib

    Config vs Content Entities

  • Fields in Core

  • Responsive

  • Form Display UI

  • View Modes in Core

  • View Modes in Core

  • Blocks Supercharged

  • RESTful

  • Site Building Views in Core

    Fields in core: Date, Link, Email, Telephone, Entity Reference,

    100% responsive, mobile-first (includes admin backend)

    Form Display UI (like display modes)

    Blocks, supercharged

    Configuration management

    RESTful at the core

  • Drupal 8 in terms of sitebuilding is awesome. After a short time you are able to build almost everything out of the box. Sometimes you have to think around the corner to get your result. And sometimes you get stuck because of some nasty bugs.

    Boris Baldinger Sitebuilder

  • Developers

  • OOP / Symfony

  • . What does D7 hook_menu really do?

    routes

    default menu items

    local actions

    local tasks

  • Define Route

  • Page Controller

  • Forms?

  • Forms?

  • Configuration Management Fully in Core

    exportable

    importable

    Show differences

    New Workflows

  • Configuration Management variable_{get,set} are gone!

  • Entity API

  • Config Entites similar to Content Entites

  • Proudly invented elsewhere Symfony2

    Assetic

    Composer

    Doctrine

    EasyRDF

    Twig

    Backbone

    jQuery

    jQuery UI

    YAML

    HAL/REST

    Guzzle

    PHPUnit

    CKEditor

  • Plugins Example: Blocks

    Drupal 7

    hook_block_info()

    hook_block_view()

    $delta and more...

  • Plugins D8

  • Migrate in Core update.php

    D6 support!

    D7 support!

    Contrib defines their own Migrate workflows

  • Developers OOP architecture / Symfony-based

    New routing system (hook_menu == gone)

    Configuration management

    Entity API

    Proudly invented elsewhere

    Migrate in Core

  • Overall, I have really really good feelings about D8. Previously we said "Drupal way" about many coding things. Now it's the "right way"! Drupal core now uses bleeding edge technologies, and that makes work really interesting.

    Alex Tkachev Backend Developer

  • Frontend

  • TWIG Template Engine build for Frontend Developers

  • Drupal 7 .....

  • Drupal 8 Core Slimed down, no classes!

  • Drupal 8 Classy! All classes in templates files

  • TWIG Heavy lifting already done

  • CSS & JS drupal_add_js/css() removed

    No JS loaded by default!

    Speeeeeed

    Declare libraries

    Attach libraries

  • Declare library

  • Declare library

  • HTML5 HTML5 out of the box

  • Responsive Responsive core themes

    Responsive admin theme

    Picture element

  • More libraries jQuery UI Touch Punch

    Backbone, Underscore

    modernizr

    domReady

    html5shiv & classList

  • Frontend Twig

    CSS & JSS

    HTML5

    Responsive

    More Libraries

  • In my experience with Drupal 8 (and on this project in particular), working with Twig templates is much more concise and straightforward to code than a D7 .tpl file. As a developer with only basic PHP skills, the Twig syntax is easier to grasp.

    Kathryn McClintock Frontend Developer

  • Drupal 8 It's awesome

    It's not done yet

  • Next Steps 6 Critical Upgrade Blockers

    Upgradable Betas

    Head2Head!!

    Single scripts for each new Head Version

    https://www.drupal.org/project/head2head

    Beta2Beta

    Group of Scripts

  • Next Steps 42 Critical Bugs

    Release Candidate 1

    New Critical Bugs?

    Release Candidate 2

    New Critical Bugs?

    Release Candidate 3

    ...

    Drupal 8.0.0

  • Should I use it? YES

    + if you can debug code

    + you will need Head2Head for upgrading (or wait till Betas are upgradable)

  • Future Drupal 8.0.0

    Drupal 8.0.1, 8.0.2, ...

    Patches, no new features

    Drupal 8.1.0, 8.2.0

    New features

    Backwards compatible!

    Drupal 9.0.0

    No Backwards compatibility anymore