More info Installing and Choosing Modules for Multilingual in Drupal 8 https://www.drupal.org/node/2415945 Multilingual demo install https://www.drupal.org/project/multilingual_demo Workshop video http://www.drupal8multilingual.org/workshop Initiative site http://www.drupal8multilingual.org/
Twig blocks & extends Twig Blocks are not Drupal Blocks! {# Extending the page template to override the title #} {% extends 'themes/THEMENAME/templates/page.html.twig' %} {% block title %} Nice New Title for the whole world to see. {% endblock %} https://www.newmediadenver.com/blog/twig-extending-templates
More info Theming session in DCBarcelona by mortendk https://events.drupal.org/barcelona2015/sessions/drupal-8-theming-0 Backend of the front-end (DCBarcelona, laurii) https://events.drupal.org/barcelona2015/sessions/drupal-8-theme-system http://drupal.org/theme-guide/8 drupal.org/coding-standards/css
Features? “In Drupal 8, Features will return to it's original mission of bundling functionality rather than just managing configuration.” – M. Potter, Features maintainer https://events.drupal.org/barcelona2015/sessions/features-drupal-8
Not invented here "Proudly Found Elsewhere" Much more modern, object-oriented code (classes, inheritance, interfaces, etc.) Embracing latest PHP standards (e.g. PSR-4*, namespaces, traits) Using many “best of breed” external libraries: Composer, PHPUnit, Guzzle, Zend Feed Component… Non-Drupal developers can start work right away * http://www.php-fig.org/psr/psr-4/
Plugin System Bart Feenstra: The Drupal 8 plugin system: extensibility for all https://www.youtube.com/watch? v=IoxEtvydKuc&list=PLB89p5xo_6ST7DM69sJVEPRIA9hrS6h2-&index=7 Drupal 8 Plugin Deep Dive (DCBarcelona) https://events.drupal.org/barcelona2015/sessions/drupal-8-plugin-deep-dive
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(); ...
API documentation https://www.drupal.org/developing/api/8 Symfony for Drupal developers https://events.drupal.org/barcelona2015/sessions/symfony-drupal- developers Dependecy injection https://events.drupal.org/barcelona2015/sessions/dependency-injection what-why-how-when More info
Performance Making Drupal fly - The fastest Drupal ever is here! https://events.drupal.org/barcelona2015/sessions/making-drupal-fly-fastest-drupal-ever-here The future of decoupled Drupal http://buytaert.net/the-future-of-decoupled-drupal https://www.youtube.com/watch?t=41&v=JwzX0Qv6u3A BigPipe Smart Caching
What about the upgrade path? Instead of an upgrade path, Drupal 8 have a migration path! Some Drupal 6 migrations already in core, more in the works, see https:// groups.drupal.org/imp https://dev.acquia.com/blog/seamless- migration-drupal-8-make-it-yours
What’s this 8.0.0 talk? Drupal 8 will use semantic versioning Drupal 8.1.0 will include new features and/or APIs New releases will be (mostly) backwards compatible New 8.x releases every 6 months (planned) No need to wait years for new things Bugfixes in minor releases, eg. 8.1.5
What about contributed modules? Check status of contrib module upgrades at: drupal.org/project/contrib_tracker To avoid upgrade pain, stick to well-vetted contributed modules over custom code. Other tips: www.acquia.com/blog/getting-your- site-ready-drupal-8
And my own modules? To start the upgrade of you own code, use drupal.org/project/drupalmoduleupgrader If you need to or want to start your module fresh, see drupal.org/project/console Creating Drupal 8.x modules https://www.drupal.org/node/1915030