Drupal 8 Preview: What to Expect

Preview:

Citation preview

Drupal 8 PreviewAngie “webchick” Byron

2013-12-09Tuesday, 10 December, 13

About Me

Tuesday, 10 December, 13

Agenda

• What's coming in Drupal 8 for…o End users and clients?o Site builders?o Designers and themers?o Developers?

• ...where possible, with live demos! :)• When can I use it?• What can I do now to prepare?

Tuesday, 10 December, 13

Changes for end-users and clients

Tuesday, 10 December, 13

Authoring Experience Improvements

Tuesday, 10 December, 13

Tuesday, 10 December, 13

WYSIWYG in Core!

Tuesday, 10 December, 13

In-Place Editing

Tuesday, 10 December, 13

In-Place Editing

Tuesday, 10 December, 13

New Content Creation Page

Tuesday, 10 December, 13

Real Previews (in progress)

http://drupal.org/node/1510544

Tuesday, 10 December, 13

Let’s see it in action!

Tuesday, 10 December, 13

Mobile Improvements

Tuesday, 10 December, 13

"Mobile First"

Tuesday, 10 December, 13

Responsive themes, images, and breakpoints

Tuesday, 10 December, 13

Responsive themes, images, and breakpoints

Tuesday, 10 December, 13

Mobile-friendly administration

Tuesday, 10 December, 13

Mobile-friendly administration

Tuesday, 10 December, 13

Mobile-friendly administration

Tuesday, 10 December, 13

Responsive Preview Bar(in progress)

https://drupal.org/node/1741498 Tuesday, 10 December, 13

Responsive Preview Bar(in progress)

Tuesday, 10 December, 13

Accessibility

http://www.youtube.com/watch?v=ipOc1km2uEc Tuesday, 10 December, 13

Accessibility

http://www.youtube.com/watch?v=ipOc1km2uEc Tuesday, 10 December, 13

Mobile-first “overlay”

Tuesday, 10 December, 13

Let’s see it in action!

Tuesday, 10 December, 13

Changes for site builders

Tuesday, 10 December, 13

Improved Data Modeling Tools:New field typesEntity Reference Date/Datetime

…plus, Link, Phone, Email, Comments!

Tuesday, 10 December, 13

Improved Data Modeling Tools:New entity types

Fieldable blocks Fieldable contact forms

Tuesday, 10 December, 13

Form displays: customize the look and feel of data entry forms

Tuesday, 10 December, 13

Views in Core!

Tuesday, 10 December, 13

Views = fully customizable...

• Admin listings• Sidebar content• Image galleries• Slideshows• REST output• ...with 0 lines of code!

Tuesday, 10 December, 13

Restyled administration interface(in progress)

https://drupal.org/node/1986434 Tuesday, 10 December, 13

Multilingual Improvements

Tuesday, 10 December, 13

Community translation downloads

Tuesday, 10 December, 13

Language data tracking expanded

Tuesday, 10 December, 13

Translation on (almost) everything

Tuesday, 10 December, 13

Changes for designers and themers

Tuesday, 10 December, 13

Tuesday, 10 December, 13

HTML5 Form Elements

Tuesday, 10 December, 13

New front-end libraries

Tuesday, 10 December, 13

Twig Example: node.html.twig<article id="node-{{ node.id }}" class="{{ attributes.class }} clearfix"{{ attributes }}>

{{ title_prefix }} {% if not page %} <h2{{ title_attributes }}> <a href="{{ node_url }}" rel="bookmark">{{ label }}</a> </h2> {% endif %} {{ title_suffix }}

{% if display_submitted %} <footer> {{ user_picture }} <p class="submitted">{{ submitted }}</p> </footer> {% endif %}

<div{{ content_attributes }}> {# We hide links now so that we can render them later. #} {% hide(content.links) %} {{ content }} </div>

{{ content.links }}</article>

1. HTML5 tags2. {{ print a variable }}3. {# comments #}4. {% logic(stuff) %}

Tuesday, 10 December, 13

Native Schema.org Output

Tuesday, 10 December, 13

Killed support for IE 6 & 7(and most of 8)

Tuesday, 10 December, 13

Changes for developers

0100010001110010011101010111000001100001011011000010000000111000

Tuesday, 10 December, 13

Configuration Management

dev stage prod

Tuesday, 10 December, 13

dev

live

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Let’s see it in action!

Tuesday, 10 December, 13

Drush integration for automation!

Tuesday, 10 December, 13

Web Services

Tuesday, 10 December, 13

Symfony Framework

• HttpFoundation• HttpKernel• Dependency

Injection• EventDispatcher• Routing• Yaml

Tuesday, 10 December, 13

GETting data out of Drupal:RESTful Web Services module

Tuesday, 10 December, 13

GETting data into Drupal: Guzzle$client = \Drupal::httpClient();$config = \Drupal::config('3rdparty.settings');

// Format arguments for passing in URL.$arg = urlencode($argument);

// Pull data from 3rd party's REST API.$api_key = $config->get('api_key');$request = $client->get("http://3rdparty.com/$arg/?key=$api_key");

// Get the response and do something with it.$response = $request->send();$json = $response->json();

...

Tuesday, 10 December, 13

"Getting off the island"

Tuesday, 10 December, 13

• Much more modern, object-oriented code (classes, inheritance, interfaces, etc.)

• Embracing latest PHP standards (e.g. PSR-0, namespaces, traits)

• Using many “best of breed” external libraries: Composer, PHPUnit, Guzzle, Zend Feed Component, Assetic...

Tuesday, 10 December, 13

Catch all of the changes!

https://drupal.org/list-changes

Tuesday, 10 December, 13

Tuesday, 10 December, 13

Ok, so when can I use this awesome stuff?!

"WHEN IT'S READY."

Tuesday, 10 December, 13

Drupal 8 Timeline

Tuesday, 10 December, 13

When is "When it's ready?"

• When we have 0 critical issues, we roll a release candidate.

• When we’ve shipped a release candidate that didn’t add new criticals, we ship 8.0!

• Hoping for 8.0 mid-2014, but still lots to do.

Tuesday, 10 December, 13

Where do we need help?

• Finish API conversions• Performance • Developer Experience• Migration path• DOCUMENTATION!• EXAMPLES!• TOOLS!

• TESTING, TESTING, TESTING!

https://drupal.org/contributeTuesday, 10 December, 13

When should I use Drupal 8?

Keep your eyes on https://drupal.org/project/usage/drupal:

Alphas, aka *right now*!(still have time to

fix APIs!)

Betas/RCs(~early-mid

2014)

Once these lines cross

(~2015)

Platform’s proven, but community’s

looking forward to Drupal 9.

Module DeveloperEarly Adopter /

Launch in mid-2014+

Late Adopter / Launch in late

2014+Conservative

Tuesday, 10 December, 13

New release proposal (in progress)

https://drupal.org/node/2135189 Tuesday, 10 December, 13

What about the upgrade path?• Work actively ongoing to add content migration

path from both D6 and D7 to D8 ("Migrate in core"): https://groups.drupal.org/imp

• To check status of contrib module upgrades, see: https://drupal.org/project/upgrade_status

• For help w/ custom module upgrades, see: https://drupal.org/project/coder

• To avoid upgrade pain, stick to well-vetted contributed modules over custom code.

• Other tips: https://www.acquia.com/blog/getting-your-site-ready-drupal-8

Tuesday, 10 December, 13

65

D8 Readiness Resources• D8 Blogs – With “how-to” topics ranging from “This week in Core”, OOP in D8, Migration, Spark and much more! http://www.acquia.com/blog/drupal-8

• D8 Webinars – Learn more about Multi-lingual, OOP etc in D8 - http://www.acquia.com/resources/recorded_webinars

• D8 Live Panel Discussions with Google Hangouts – http://www.acquia.com/resources/podcasts/acquia-podcast-93-power-php-meet-michelangelo-van-dam

• D8 Updates – Get the latest and the greatest in D8 on our developer page –

http://www.acquia.com/drupal-developers

Tuesday, 10 December, 13

Thank you!Questions?

Tuesday, 10 December, 13

Recommended