Drupal 8 Core deeper dive
Michael - Schnitzel
Head Technology Amazee Labs


our journey
April 2014
amazeelabs.com in Drupal 8 Alpha
2 Languages
September 2014
drupal.com in Drupal 8 Beta
1 Language (yet)
January 2015
sgg-ssup.ch in Drupal 8 Beta
4 Languages
May 2015
amazee.com in Drupal 8 Beta
June 2015
gottardo2016.ch
Drupal 8 Beta - 5 Languages
August 2015
capetown2015.drupalcamp.co.za
Drupal 8 Beta
October 2015
mba.unisg.ch
Drupal 8 RC1
October 2015
socialmediagipfel.ch
Drupal 8 RC1
Currently
Moar!
Why Drupal 7?
TL; DR;
It works!
It's great!
You have to be creative
Nobody want's go back to Drupal 7
Editors
We didn't tell them ;)
And they didn't realize
They really like the new layout
REAL Previews
Multilingual
Everything!
Translatable out of Core
29 Modules
29 Modules
4 Core Modules
Entity Translation
Sitebuilding
Feels right & complete
Block instances & Custom Block Library are confusing
A lot of contrib missing
be creative
Custom Block + Entity References
=
Nodequeue!
Drupal 7 Sitebuilders pick it up in 2 hours
Configuration Management
The thing we've all waited for
No help on how to use
- no workflow for dev > staging > prod
-
staging folder is confusing- it's sync folder now
-
active folder is empty- no active folder anymore
Merge CMI changes
Needs to happen in Git
export before pull!
really frustrating
let's fix!
use it
learn it
write about it
Backend
OOP all the way!
it's great
- Entity API
- Plugins
- Services
No IDE?
No Drupal 8.
No Debugger?
No Drupal 8.
Most examples found online are obsolete
drupal.org/project/examples
Non Drupal Developers
Can start work right away
Frontend
Twig <3
No need for
Contrib Base Theme
base themes from Core:
classy, stable, none
Hidden Superpower:
Extends & Blocks
Task
Remove the H1 on Frontpage
<div class="layout-container">
<main class="layout-main" role="main">
{{ messages }}
{{ page.help }}
<div class="layout-content">
{{ page.highlighted }}
{% block page_title %}
{{ title_prefix }}
{% if title %}
<h1>{{ title }}</h1>
{% endif %}
{{ title_suffix }}
{% endblock %}
{{ tabs }}
{{ page.content }}
</div>{# /.layout-content #}
</main>
</div>{# /.layout-container #}
page.html.twig
{% extends 'themes/sgg8/templates/page.html.twig' %}
{% block page_title %}
{% endblock %}
page--front.html.twig
Upgrades
before beta9:
hard
after beta9:
Head2Head
drupal.org/project/head2head
-
patches for each Head
-
beta2beta
after beta15:
update.php in Core
RC Updates
almost nothing at all
Contrib
We're getting there
Drupal 8
Contrib Tracker
Fixing a module?
Contribute it back!
Migration
not done yet
easy migration
D7 Nodes -> D8 Nodes
200 lines custom code
You should all start using it
- if its a new site
- or if only need to migrate some content
- if you don't need heavy contrib modules
more?
groups.drupal.org/drupal-8-production-sites
</session>
<questions>
Drupal 8 Deeper Dive Drupalcamp Oslo 2015
By Michael Schmid
Drupal 8 Deeper Dive Drupalcamp Oslo 2015
- 1,605