SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Drupal 8
                           features


keynotes by

Andriy Podanenko http://dgo.to/@podarok
and
Andy Postnikov http://dgo.to/@andypost
15.09.2012
Core initiatives
http://drupal.org/community-initiatives/drupal-core
D8 Theming - {{ TWIG }}
http://drupal.org/sandbox/pixelmord/1750250 - Twig sandbox
     <!DOCTYPE html>
     <html>
       <head>
         <title>My Webpage</title>
       </head>
       <body>
         <ul id="navigation">
         {% for item in navigation %}
            <li><a href="{{ item.href }}">{{ item.caption }}</a></li>
         {% endfor %}
         </ul>

          <h1>My Webpage</h1>
          {{ a_variable }}
       </body>
     </html>
http://drupal.org/node/1499460 - first steps
http://groups.drupal.org/node/234793 - Twig benefits and small how-to http://twig.sensiolabs.org/doc
http://munich2012.drupal.org/content/new-theme-layer-drupal-8
http://munich2012.drupal.org/content/responsive-design-mobile-admin-front-end-performance-
updates-mobile-initiative - mobile
http://munich2012.drupal.org/content/better-javascript
Drupal 7 - before (http://groups.drupal.org/node/234793)
Drupal after 7 :) (http://groups.drupal.org/node/234793)
Plugin System (Layouts aka
SKOTCH)
http://drupal.org/node/1704454 - Plugin system

http://drupal.org/node/1637614 - D8 Plugin system docs

http://drupal.org/sandbox/eclipsegc/1441840 - Drupal 8
Blocks Everywhere sandbox by http://dgo.to/@EclipseGc

http://munich2012.drupal.org/content/drupal-blocks-layouts-initiative-scotch-
update
http://drupal.org/node/1535868 Blocks as plugins http:
//drupal.org/node/1743686 - Condition Plugin System
Drupal 7 (http://drupal.org/node/1704454)
<?php
function hook_aggregator_fetch_info() {
  return array(
     'title' => t('Default fetcher'),
     'description' => t('Default fetcher for resources available by
URL.'),
  );
}

function hook_aggregator_fetch($feed) {
  $feed->source_string = mymodule_fetch($feed->url);
}
?>
Drupal 8 (CTools)        (http://drupal.
org/node/1704454)

<?php
/**
 * @Plugin(
 * id = "aggregator",
 * title = @Translation("Default fetcher"),
 * description = @Translation("Downloads data
from a URL using Drupal's HTTP request handler.")
 *)
 */
class DefaultFetcher implements FetcherInterface {
?>
Drupal 8 blocks (needs work)                               (http:
//drupal.org/node/1535868)

<?php
namespace Drupalaggregator;

use DrupalCorePluginPluginDerivativeInterface;
use DrupalblockAbstractBlock;

class FeedBlock extends AbstractBlock implements
PluginDerivativeInterface {

public   function   access() {... }
public   function   info() {...}
public   function   configure($form, &$form_state) {..}
public   function   configureSubmit($form, &$form_state) {...}
public   function   build() {...}
?>
Language System
1.   Translations storage, batch-import
2.   Extends:
●    language,
●    locale_translation,
●    10n_update


http://munich2012.drupal.org/content/drupal-8s-
multilingual-wonderland
Entity API
http://drupal.org/node/1668820
Entity + Storable => Configurable

http://munich2012.drupal.org/content/new-
entity-and-property-api
http://drupal.org/node/1696640 - схема
http://munich2012.drupal.
org/content/importupgrade-api-core
Configuration System
http://drupal.org/node/1560060 - META
http://drupal.org/node/1667896
http://drupal.org/node/1668806

Configurable Thingies!!! commited.
http://munich2012.drupal.org/content/status-configuration-
management-initiative
System Changes
http://drupal.org/node/1703168#comment-6344116 config system

+   $config = config('locale.settings'); // Drupal 8

+   $config->set('translation.check_disabled_modules', TRUE)->save(); //D8

-   variable_set('locale_translation_check_disabled', TRUE); // Drupal 7

http://munich2012.drupal.org/program/sessions/drupal-8-what-you-need-
know
http://munich2012.drupal.org/content/improved-file-management-core
Disabled & new modules
Removed
 ● blog, profile, trigger

Changed
 ● list => options http://drupal.org/node/1691614

Added
 ● config, entity, language, xmlrpc, (ban)

node module optional
http://drupal.org/node/1183208 clean url removed

http://drupal.org/node/1782838 WYSIWYG in core
D8 & Symphony2
Symphony & PSR-0 approach
http://drupal.org/node/335411 sessions
http://groups.drupal.org/node/220269 routing (kills
hook_menu)
Dependency Injection(WSCII) http://drupal.
org/node/1539454

http://munich2012.drupal.org/content/web-services-and-
symfony-core-initiative
{{ Namespaced }} core structure




http://drupal.org/node/1724216 install profiles moved into
/core/profiles
Mobile & responsive
Documentation
http://drupal.org/documentation/mobile

UI: toolbar, wysiwyg, layout, edit, aloha,
form_builder
Drupal 8 other initiatives
●   Clean up core initative
●   Contribute to accessibility
●   Design Initiative
●   Drupal 8 User Experience
●   DrupalWTFs
●   File management (File entity in core)
●   Form API
●   HTML5 Initiative
●   Help and Curated/Official Documentation System
●   JavaScript
●   Learnability
●   Path and Path API
●   Pathauto in core
●   Performance
●   Responsive Design
●   Search module as API framework
●   Statistics
●   Testing
●   Views in Drupal Core
●   WYSIWYG
●   Useful tags/components
●   Previous Initiatives
Drupal features BoF
  http://dgo.to/@andypost
  http://dgo.to/@podarok

Mais conteúdo relacionado

Destaque

Vlad Savitsky.Modules parade.DrupalCamp Kyiv 2011
Vlad Savitsky.Modules parade.DrupalCamp Kyiv 2011Vlad Savitsky.Modules parade.DrupalCamp Kyiv 2011
Vlad Savitsky.Modules parade.DrupalCamp Kyiv 2011
camp_drupal_ua
 
Andriy Podanenko.Drupal database api.DrupalCamp Kyiv 2011
Andriy Podanenko.Drupal database api.DrupalCamp Kyiv 2011Andriy Podanenko.Drupal database api.DrupalCamp Kyiv 2011
Andriy Podanenko.Drupal database api.DrupalCamp Kyiv 2011
camp_drupal_ua
 

Destaque (14)

Vlad Savitsky.Modules parade.DrupalCamp Kyiv 2011
Vlad Savitsky.Modules parade.DrupalCamp Kyiv 2011Vlad Savitsky.Modules parade.DrupalCamp Kyiv 2011
Vlad Savitsky.Modules parade.DrupalCamp Kyiv 2011
 
Getting started with Ansible. Be efficient.
Getting started with Ansible. Be efficient.Getting started with Ansible. Be efficient.
Getting started with Ansible. Be efficient.
 
Drupal and diversity of Single sign-on systems
Drupal and diversity of Single sign-on systemsDrupal and diversity of Single sign-on systems
Drupal and diversity of Single sign-on systems
 
Andriy Podanenko.Drupal database api.DrupalCamp Kyiv 2011
Andriy Podanenko.Drupal database api.DrupalCamp Kyiv 2011Andriy Podanenko.Drupal database api.DrupalCamp Kyiv 2011
Andriy Podanenko.Drupal database api.DrupalCamp Kyiv 2011
 
Start using vagrant now!
Start using vagrant now!Start using vagrant now!
Start using vagrant now!
 
Історія, теорія та використання CMS Drupal
Історія, теорія та використання CMS DrupalІсторія, теорія та використання CMS Drupal
Історія, теорія та використання CMS Drupal
 
Drupal 8 DevOps . Profile and SQL flows.
Drupal 8 DevOps . Profile and SQL flows.Drupal 8 DevOps . Profile and SQL flows.
Drupal 8 DevOps . Profile and SQL flows.
 
DrupalCon Los Angeles - Continuous Integration Toolbox
DrupalCon Los Angeles - Continuous Integration ToolboxDrupalCon Los Angeles - Continuous Integration Toolbox
DrupalCon Los Angeles - Continuous Integration Toolbox
 
Головні Принципи Автоматизації
Головні Принципи АвтоматизаціїГоловні Принципи Автоматизації
Головні Принципи Автоматизації
 
Drush - use full power - DrupalCamp Donetsk 2014
Drush - use full power - DrupalCamp Donetsk 2014Drush - use full power - DrupalCamp Donetsk 2014
Drush - use full power - DrupalCamp Donetsk 2014
 
MoldCamp - multidimentional testing workflow. CIBox.
MoldCamp  - multidimentional testing workflow. CIBox.MoldCamp  - multidimentional testing workflow. CIBox.
MoldCamp - multidimentional testing workflow. CIBox.
 
DrupalGap. How to create native application for mobile devices based on Drupa...
DrupalGap. How to create native application for mobile devices based on Drupa...DrupalGap. How to create native application for mobile devices based on Drupa...
DrupalGap. How to create native application for mobile devices based on Drupa...
 
DrupalCamp Kyiv 2009 Official Report
DrupalCamp Kyiv 2009 Official ReportDrupalCamp Kyiv 2009 Official Report
DrupalCamp Kyiv 2009 Official Report
 
Building mobile applications with DrupalGap
Building mobile applications with DrupalGapBuilding mobile applications with DrupalGap
Building mobile applications with DrupalGap
 

Semelhante a Drupal 8 what to wait from

Drupal 8: What's new? Anton Shubkin
Drupal 8: What's new? Anton ShubkinDrupal 8: What's new? Anton Shubkin
Drupal 8: What's new? Anton Shubkin
ADCI Solutions
 
Drupal module development : Blisstering @ DCSF
Drupal module development : Blisstering @ DCSFDrupal module development : Blisstering @ DCSF
Drupal module development : Blisstering @ DCSF
Blisstering Solutions
 
Drupal 8 HTML5 Initiative
Drupal 8 HTML5 InitiativeDrupal 8 HTML5 Initiative
Drupal 8 HTML5 Initiative
Jacine Luisi
 

Semelhante a Drupal 8 what to wait from (20)

Drupal 8: What's new? Anton Shubkin
Drupal 8: What's new? Anton ShubkinDrupal 8: What's new? Anton Shubkin
Drupal 8: What's new? Anton Shubkin
 
Drupal contrib module maintaining
Drupal contrib module maintainingDrupal contrib module maintaining
Drupal contrib module maintaining
 
Drupal 8 update: May 2014. Migrate in core.
Drupal 8 update: May 2014. Migrate in core.Drupal 8 update: May 2014. Migrate in core.
Drupal 8 update: May 2014. Migrate in core.
 
Secure your site
Secure your siteSecure your site
Secure your site
 
Drupal in 5mins + Previewing Drupal 8.x
Drupal in 5mins + Previewing Drupal 8.xDrupal in 5mins + Previewing Drupal 8.x
Drupal in 5mins + Previewing Drupal 8.x
 
Taking your site from Drupal 6 to Drupal 7
Taking your site from Drupal 6 to Drupal 7Taking your site from Drupal 6 to Drupal 7
Taking your site from Drupal 6 to Drupal 7
 
Level up apps and websites with vue.js
Level up  apps and websites with vue.jsLevel up  apps and websites with vue.js
Level up apps and websites with vue.js
 
Migrations
MigrationsMigrations
Migrations
 
Convert modules from 6.x to 7.x
Convert modules from 6.x to 7.xConvert modules from 6.x to 7.x
Convert modules from 6.x to 7.x
 
Drupal 7 and RDF
Drupal 7 and RDFDrupal 7 and RDF
Drupal 7 and RDF
 
The State of Drupal 8
The State of Drupal 8The State of Drupal 8
The State of Drupal 8
 
Drupal in Libraries
Drupal in LibrariesDrupal in Libraries
Drupal in Libraries
 
Automating hadoop jobs using rundeck
Automating hadoop jobs using rundeck  Automating hadoop jobs using rundeck
Automating hadoop jobs using rundeck
 
"Paragraphs are more powerful than you can expect" from Vasily Jaremchuk for ...
"Paragraphs are more powerful than you can expect" from Vasily Jaremchuk for ..."Paragraphs are more powerful than you can expect" from Vasily Jaremchuk for ...
"Paragraphs are more powerful than you can expect" from Vasily Jaremchuk for ...
 
Drupal module development : Blisstering @ DCSF
Drupal module development : Blisstering @ DCSFDrupal module development : Blisstering @ DCSF
Drupal module development : Blisstering @ DCSF
 
Drupal 8 HTML5 Initiative
Drupal 8 HTML5 InitiativeDrupal 8 HTML5 Initiative
Drupal 8 HTML5 Initiative
 
Schemaorg cmsplugins
Schemaorg cmspluginsSchemaorg cmsplugins
Schemaorg cmsplugins
 
Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011
 
Drupal 6 to Drupal 8 Migration
Drupal 6 to Drupal 8 MigrationDrupal 6 to Drupal 8 Migration
Drupal 6 to Drupal 8 Migration
 
How to Migrate Drupal 6 to Drupal 8?
How to Migrate Drupal 6 to Drupal 8?How to Migrate Drupal 6 to Drupal 8?
How to Migrate Drupal 6 to Drupal 8?
 

Mais de Andrii Podanenko

Глобальні навчальні дні друпал
Глобальні навчальні дні друпалГлобальні навчальні дні друпал
Глобальні навчальні дні друпал
Andrii Podanenko
 
Ubercart7 views catalog ru
Ubercart7 views catalog ruUbercart7 views catalog ru
Ubercart7 views catalog ru
Andrii Podanenko
 
Ubercart7 Dynamic properties ru
Ubercart7 Dynamic properties ruUbercart7 Dynamic properties ru
Ubercart7 Dynamic properties ru
Andrii Podanenko
 
Yaremchuk - Drupal CodeLobster
Yaremchuk - Drupal CodeLobsterYaremchuk - Drupal CodeLobster
Yaremchuk - Drupal CodeLobster
Andrii Podanenko
 
Yaremchuk - Корпоративные сайты
Yaremchuk - Корпоративные сайтыYaremchuk - Корпоративные сайты
Yaremchuk - Корпоративные сайты
Andrii Podanenko
 

Mais de Andrii Podanenko (20)

Глобальні навчальні дні друпал
Глобальні навчальні дні друпалГлобальні навчальні дні друпал
Глобальні навчальні дні друпал
 
природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...
 
Docker SQL Continuous Integration Flow
Docker SQL Continuous Integration FlowDocker SQL Continuous Integration Flow
Docker SQL Continuous Integration Flow
 
Drupal 8 configuration development flow
Drupal 8 configuration development flowDrupal 8 configuration development flow
Drupal 8 configuration development flow
 
CIbox - OpenSource solution for making your #devops better
CIbox - OpenSource solution for making your #devops betterCIbox - OpenSource solution for making your #devops better
CIbox - OpenSource solution for making your #devops better
 
Drupal Continuous Integration Workflow
Drupal Continuous Integration WorkflowDrupal Continuous Integration Workflow
Drupal Continuous Integration Workflow
 
Сейчас самое время...ЖИТЬ!
Сейчас самое время...ЖИТЬ!Сейчас самое время...ЖИТЬ!
Сейчас самое время...ЖИТЬ!
 
Live deployment, ci, drupal
Live deployment, ci, drupalLive deployment, ci, drupal
Live deployment, ci, drupal
 
Drupal codesprint kyiv drupal cafe 07.02.2013
Drupal codesprint   kyiv drupal cafe 07.02.2013Drupal codesprint   kyiv drupal cafe 07.02.2013
Drupal codesprint kyiv drupal cafe 07.02.2013
 
Do + ldo for developers(full)
Do + ldo for developers(full)Do + ldo for developers(full)
Do + ldo for developers(full)
 
Диалоговый интенсив 2012 карпаты
Диалоговый интенсив 2012 карпатыДиалоговый интенсив 2012 карпаты
Диалоговый интенсив 2012 карпаты
 
психолог в социальных медиа
психолог в социальных медиапсихолог в социальных медиа
психолог в социальных медиа
 
Ubercart7 views catalog ru
Ubercart7 views catalog ruUbercart7 views catalog ru
Ubercart7 views catalog ru
 
Ubercart7 Dynamic properties ru
Ubercart7 Dynamic properties ruUbercart7 Dynamic properties ru
Ubercart7 Dynamic properties ru
 
Ubercart 7 ru
Ubercart 7 ruUbercart 7 ru
Ubercart 7 ru
 
Feeds drupal cafe
Feeds drupal cafeFeeds drupal cafe
Feeds drupal cafe
 
Drupal 7 database api
Drupal 7 database api Drupal 7 database api
Drupal 7 database api
 
Yaremchuk - Drupal CodeLobster
Yaremchuk - Drupal CodeLobsterYaremchuk - Drupal CodeLobster
Yaremchuk - Drupal CodeLobster
 
Yaremchuk - Корпоративные сайты
Yaremchuk - Корпоративные сайтыYaremchuk - Корпоративные сайты
Yaremchuk - Корпоративные сайты
 
управление проектами отношение к клиенту
управление проектами   отношение к клиентууправление проектами   отношение к клиенту
управление проектами отношение к клиенту
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

Drupal 8 what to wait from

  • 1. Drupal 8 features keynotes by Andriy Podanenko http://dgo.to/@podarok and Andy Postnikov http://dgo.to/@andypost 15.09.2012
  • 3. D8 Theming - {{ TWIG }} http://drupal.org/sandbox/pixelmord/1750250 - Twig sandbox <!DOCTYPE html> <html> <head> <title>My Webpage</title> </head> <body> <ul id="navigation"> {% for item in navigation %} <li><a href="{{ item.href }}">{{ item.caption }}</a></li> {% endfor %} </ul> <h1>My Webpage</h1> {{ a_variable }} </body> </html> http://drupal.org/node/1499460 - first steps http://groups.drupal.org/node/234793 - Twig benefits and small how-to http://twig.sensiolabs.org/doc http://munich2012.drupal.org/content/new-theme-layer-drupal-8 http://munich2012.drupal.org/content/responsive-design-mobile-admin-front-end-performance- updates-mobile-initiative - mobile http://munich2012.drupal.org/content/better-javascript
  • 4. Drupal 7 - before (http://groups.drupal.org/node/234793)
  • 5. Drupal after 7 :) (http://groups.drupal.org/node/234793)
  • 6. Plugin System (Layouts aka SKOTCH) http://drupal.org/node/1704454 - Plugin system http://drupal.org/node/1637614 - D8 Plugin system docs http://drupal.org/sandbox/eclipsegc/1441840 - Drupal 8 Blocks Everywhere sandbox by http://dgo.to/@EclipseGc http://munich2012.drupal.org/content/drupal-blocks-layouts-initiative-scotch- update http://drupal.org/node/1535868 Blocks as plugins http: //drupal.org/node/1743686 - Condition Plugin System
  • 7. Drupal 7 (http://drupal.org/node/1704454) <?php function hook_aggregator_fetch_info() { return array( 'title' => t('Default fetcher'), 'description' => t('Default fetcher for resources available by URL.'), ); } function hook_aggregator_fetch($feed) { $feed->source_string = mymodule_fetch($feed->url); } ?>
  • 8. Drupal 8 (CTools) (http://drupal. org/node/1704454) <?php /** * @Plugin( * id = "aggregator", * title = @Translation("Default fetcher"), * description = @Translation("Downloads data from a URL using Drupal's HTTP request handler.") *) */ class DefaultFetcher implements FetcherInterface { ?>
  • 9. Drupal 8 blocks (needs work) (http: //drupal.org/node/1535868) <?php namespace Drupalaggregator; use DrupalCorePluginPluginDerivativeInterface; use DrupalblockAbstractBlock; class FeedBlock extends AbstractBlock implements PluginDerivativeInterface { public function access() {... } public function info() {...} public function configure($form, &$form_state) {..} public function configureSubmit($form, &$form_state) {...} public function build() {...} ?>
  • 10. Language System 1. Translations storage, batch-import 2. Extends: ● language, ● locale_translation, ● 10n_update http://munich2012.drupal.org/content/drupal-8s- multilingual-wonderland
  • 11. Entity API http://drupal.org/node/1668820 Entity + Storable => Configurable http://munich2012.drupal.org/content/new- entity-and-property-api http://drupal.org/node/1696640 - схема http://munich2012.drupal. org/content/importupgrade-api-core
  • 12. Configuration System http://drupal.org/node/1560060 - META http://drupal.org/node/1667896 http://drupal.org/node/1668806 Configurable Thingies!!! commited. http://munich2012.drupal.org/content/status-configuration- management-initiative
  • 13. System Changes http://drupal.org/node/1703168#comment-6344116 config system + $config = config('locale.settings'); // Drupal 8 + $config->set('translation.check_disabled_modules', TRUE)->save(); //D8 - variable_set('locale_translation_check_disabled', TRUE); // Drupal 7 http://munich2012.drupal.org/program/sessions/drupal-8-what-you-need- know http://munich2012.drupal.org/content/improved-file-management-core
  • 14. Disabled & new modules Removed ● blog, profile, trigger Changed ● list => options http://drupal.org/node/1691614 Added ● config, entity, language, xmlrpc, (ban) node module optional http://drupal.org/node/1183208 clean url removed http://drupal.org/node/1782838 WYSIWYG in core
  • 15. D8 & Symphony2 Symphony & PSR-0 approach http://drupal.org/node/335411 sessions http://groups.drupal.org/node/220269 routing (kills hook_menu) Dependency Injection(WSCII) http://drupal. org/node/1539454 http://munich2012.drupal.org/content/web-services-and- symfony-core-initiative
  • 16. {{ Namespaced }} core structure http://drupal.org/node/1724216 install profiles moved into /core/profiles
  • 17. Mobile & responsive Documentation http://drupal.org/documentation/mobile UI: toolbar, wysiwyg, layout, edit, aloha, form_builder
  • 18. Drupal 8 other initiatives ● Clean up core initative ● Contribute to accessibility ● Design Initiative ● Drupal 8 User Experience ● DrupalWTFs ● File management (File entity in core) ● Form API ● HTML5 Initiative ● Help and Curated/Official Documentation System ● JavaScript ● Learnability ● Path and Path API ● Pathauto in core ● Performance ● Responsive Design ● Search module as API framework ● Statistics ● Testing ● Views in Drupal Core ● WYSIWYG ● Useful tags/components ● Previous Initiatives
  • 19. Drupal features BoF http://dgo.to/@andypost http://dgo.to/@podarok