Gettin' Twiggy with Drupal: Is Theming in Drupal still Weird?

Speakers: 

A Deep Dive into the theming layer in Drupal 8.

Twig is the new PHP-based, compiled, templating framework that provides the the default theming engine in Drupal 8. It brings about significant improvements that make front-end development easier, faster and more secure. Or does it?

Theming in Drupal 8 promises to be a magical land, filled with unicorns (and princesses) but is it really? Is it the front end panacea you've been promised, completely demuxing the front and back ends or are there hidden gotchas? Does it really hand power back to front end designers and developers, or is it just shiny new set of golden handcuffs shackling you to an esoteric theming system?

Combining a high level overview accessible to themers of all levels with a deep dive into Drupal Twig internals that will be appreciated by seasoned Drupal developers, this session covers how the theme system is changed and how to get started building Drupal 8 themes using Twig.

    Specifically, in this session you will learn
  • How to use Twig to build a Drupal 8 theme
  • How to optimize that theme
  • How to (finally!) get your markup under your complete control
  • How to leverage the power of Twig's extensibility to completely transform your theming workflow
  • How to write your own custom Twig filter
  • How to make your Twig theme responsive
  • And what are the hidden gotchas that come with all these shiny new features, and how to get around them. (You didn't think you got all this for free, did you?)

We'll also take a hard look at both the promises and reality of how Twig is implemented in Drupal, particular:

Performance:

Twig is designed to be a highly performant templating engine. So why does it seem like it actually slower in Drupal than PHPTemplate? What do you have to do in Drupal 8 to make your front end more performant, to live up to the promise of Drupal 8 being faster?

Security:

Twig is supposed to be a *completely* secure templating framework, but how does autoescaping even work in Drupal? In fact, does it?

Upgrading:

What good is a fancy new theme engine if it just creates hundreds of hours of grunt work (no, not *that* grunt) manually upgrading all your existing themes? In this session we'll show you how the Twigify tool enables automatic (and magic!) conversion of any Drupal 7 theme to Drupal 8 with just the press of a button.

Putting it all together, we'll attempt to answer the all too topical question (Drupalcon being in Austin) of is theming in Drupal is still weird? That is to say, is it still an esoteric system of strangely connected disparate parts that front-end developers are forced to learn? Or does it truly implement clean design patterns on the front-end that enable you to easily build strikingly designed applications and sites in Drupal 8?

Emphasis will be placed on practical knowledge and theme development tips to make you faster at building better themes, tempered with an understanding of why these patterns work the way they do, so that you come away with a sense of mastery, not just a collection of random tricks.

Schedule info
Track: 
Experience level: 
Intermediate
Drupal Version: 
Drupal 8.x

Comments

It's the transition from working with PHPTemplate to Twig that most concerns me. I'm looking forward to this talk because I know I'll learn how to transition my skills to Drupal 8 if I just pore over this material.

Hope this one gets in because this is a very important topic.