webinar smile - comment drupal 8 peut booster votre stratégie digitale ?
Post on 03-Aug-2015
158 Views
Preview:
TRANSCRIPT
2
SOMMAIRE
PREMIÈRE PARTIE
DRUPAL 8: LES NOUVEAUTÉS
DEUXIEME PARTIE
DRUPAL 8: QUAND? COMMENT?
TROISIÈME PARTIE
MIGRER VERS DRUPAL 8
JUIN 2015
Webinar Smile - Drupal 8
1
2
3
3
VOS INTERLOCUTEURS
VINCENT MAUCORPS Business Line Web Manager @vmaucorps Email : vincent.maucorps@smile.fr
ALAN MOREAU Expert Drupal @misterdoak
Email : alan.moreau@smile.fr
JUIN 2015
Webinar Smile - Drupal 8
5
DRUPAL 8: LES NOUVEAUTÉS
Drupal 8 en chiffres
Un long chemin
Un CMS plus simple à utiliser …
… et une architecture remise à neuf
Coup d’œil sous le capot
JUIN 2015
Webinar Smile - Drupal 8
SOMMAIRE
6
DRUPAL 8: LES NOUVEAUTÉS
+2 200 contributeurs au core drupal 8;
5 “core committers” (2 chez Acquia: Dries et Webchick)
11 000 patch commités
200 Beta blocker
15 versions alpha
Plus de 200 nouvelles fonctionnalités et améliorations
JUIN 2015
Webinar Smile - Drupal 8
EN CHIFFRES
9
DRUPAL 8: LES NOUVEAUTÉS
Pour les contributeurs:
L’initiative Spark
Multilinguisme
Views dans le core Drupal
Des blocs sous stéroïdes
Meilleur modèle de données
Pour les visiteurs:
Une approche «mobile first»
Une meilleure accessibilité
Frontend Performance
« Take a tour »
JUIN 2015
Webinar Smile - Drupal 8
VUE D’ENSEMBLE
10
DRUPAL 8: LES NOUVEAUTÉS
Spark: Une initiative Acquia créée par Dries afin d’améliorer
l’expérience utilisateur pour Drupal 8 (“backporté” sur Drupal 7)
Contribuer:
o «Wysiwyg»
o «In place editing»
o Status «Brouillon»
Design:
o Nouvel interface de création de contenu
o «Lifting» du thème admin
JUIN 2015
Webinar Smile - Drupal 8
L’INITIATIVE SPARK
http://buytaert.net/announcing-spark-authoring-improvements-for-drupal-7-and-drupal-8
11
DRUPAL 8: LES NOUVEAUTÉS
«Wysiwyg» :
inclus dans le core Drupal
JUIN 2015
Webinar Smile - Drupal 8
L’INITIATIVE SPARK
12
DRUPAL 8: LES NOUVEAUTÉS
«Edit in place» :
Modifiez votre contenu directement
depuis le frontend
JUIN 2015
Webinar Smile - Drupal 8
L’INITIATIVE SPARK
13
DRUPAL 8: LES NOUVEAUTÉS
Nouvelle
interface de
contribution
JUIN 2015
Webinar Smile - Drupal 8
L’INITIATIVE SPARK
14
DRUPAL 8: LES NOUVEAUTÉS
Prévisualisation :
Visualiser vos contenus tels
qu’ils seront réellement
affichés sur le frontend (en
fonction des «view mode»)
JUIN 2015
Webinar Smile - Drupal 8
L’INITIATIVE SPARK
15
DRUPAL 8: LES NOUVEAUTÉS
Thème d’administration épuré
JUIN 2015
Webinar Smile - Drupal 8
L’INITIATIVE SPARK
16
DRUPAL 8: LES NOUVEAUTÉS
Pensé multilingue : bloc, menu,
entité, …
Seulement 4 modules!
Une interface de traduction
repensée
Transliteration
Meilleur indexation
JUIN 2015
Webinar Smile - Drupal 8
MULTILINGUISME
17
DRUPAL 8: LES NOUVEAUTÉS
Listes d’administrations
personnalisable
Responsive
Galerie d’images
Slideshow
réponse Json
JUIN 2015
Webinar Smile - Drupal 8
VIEWS DANS LE CORE DRUPAL (MODULE LE PLUS UTILISÉ)
18
DRUPAL 8: LES NOUVEAUTÉS
Nouveaux blocs “core”:
Breadcrumbs, nom du site, slogan, …
Multi région (RIP multiBlock module)
Menu partagé par les header / footer
Créez vos types de blocs personnalisé
À la manière d’un content type
Vos bannières de pub simplifiées!
JUIN 2015
Webinar Smile - Drupal 8
DES BLOCS SOUS STÉROÏDES
19
DRUPAL 8: LES NOUVEAUTÉS
Des nouveaux types de champs pour vos entités
les indispensables: date, entity reference, …
Éléments HTML5: téléphone, email, lien, …
View mode et Form mode
Affichez vos formulaire différemment
selon l’utilisation
Commentaires
Option: «ouvert/fermé» deviant un champ!
o Toutes vos entités sont “commentables” !
JUIN 2015
Webinar Smile - Drupal 8
UN MODÈLE DE DONNÉES AMÉLIORÉ
20
DRUPAL 8: LES NOUVEAUTÉS
Une application adaptée à tous
les écrans:
Responsive design
Mobile friendly toolbar
Performance “Front end”
JUIN 2015
Webinar Smile - Drupal 8
«MOBILE FIRST»
21
DRUPAL 8: LES NOUVEAUTÉS
Tous les thèmes du core sont responsives
Support pour les images responsives inclus
JUIN 2015
Webinar Smile - Drupal 8
«MOBILE FIRST»
22
DRUPAL 8: LES NOUVEAUTÉS
Mobile Friendly Toolbar
JUIN 2015
Webinar Smile - Drupal 8
«MOBILE FIRST»
23
DRUPAL 8: LES NOUVEAUTÉS
Une aide simple pour vos nouveaux contributeurs
JUIN 2015
Webinar Smile - Drupal 8
TAKE A TOUR
25
DRUPAL 8: LES NOUVEAUTÉS
Pour les “frontend”
développeurs
HTML5
Nouvelle librairies JS
Twig
Schema.org
Navigateur “Moderne”
Pour les “backend”
développeurs
“Proudly Found Elsewhere”
Configurations des environnements
Entités
Moteur Restful
Cache
JUIN 2015
Webinar Smile - Drupal 8
POUR LES DÉVELOPPEURS
26
DRUPAL 8: LES NOUVEAUTÉS
Navigation: <nav>, <header>,
<main>, and <section>
Form: champ date, teléphone et email
Effet HTML5/CSS
JUIN 2015
Webinar Smile - Drupal 8
HTML5
27
DRUPAL 8: LES NOUVEAUTÉS
Normalize.css
jQuery touch punch
DomReady
html5shiv et classList
JUIN 2015
Webinar Smile - Drupal 8
NOUVEAUX OUTILS FRONTEND
28
DRUPAL 8: LES NOUVEAUTÉS
$node->foo ou $node['foo'] ?
print $foo ou print render($foo) ?
=> Aucune connaissance php nécessaire
JUIN 2015
Webinar Smile - Drupal 8
TWIG
31
DRUPAL 8: LES NOUVEAUTÉS
Architecture plus moderne
POO, namespace, events, …
À jour avec les derniers standards
PSR-4
Librairie “best of breed”
Sf2, GuzzleHTTP, Assetic, …
JUIN 2015
Webinar Smile - Drupal 8
“PROUDLY FOUND ELSEWHERE”
32
DRUPAL 8: LES NOUVEAUTÉS
JUIN 2015
Webinar Smile - Drupal 8
CONFIGURATIONS DES ENVIRONNEMENTS
DEV PROD
TESTS
35
DRUPAL 8: LES NOUVEAUTÉS
Ne sera pas dans Drupal 8.0.0
dans Drupal 8.x.0 ?
UUID dans le core Drupal
Modules deploy / RestWS
JUIN 2015
Webinar Smile - Drupal 8
PARTAGÉ DU CONTENU DRUPAL À DRUPAL
36
DRUPAL 8: LES NOUVEAUTÉS
Une API repensée
Oublions les limites dans Drupal 7 core
Déclarer vos entité en étendant EntityInterface
RIP hook_entity_*
Multilinguisme natif
$node->body[$langcode][0]['value'] => $node->get('body')->value
Des entités partout
Blocs, Types de contenu, Utilisateurs, Vues, Taxonomie, …
JUIN 2015
Webinar Smile - Drupal 8
DES ENTITÉS PARTOUT
37
DRUPAL 8: LES NOUVEAUTÉS
Content Entities
Champs custom
Enregistrés en base de données
Créés depuis le front office
Examples
ŽNodes
ŽCustom Blocks
ŽUsers
ŽComments
Taxonomy Terms
Menu Links
Aggregator Feeds/Items
Config Entities
Déployés sur vos environnements
Enregistrés dans la configuration
Créés depuis le back office
Examples
Content Types
Custom Block Types
User Roles
Views
Taxonomy Vocabularies
Menus
Image Styles
JUIN 2015
Webinar Smile - Drupal 8
2 TYPES D’ENTITÉS
38
DRUPAL 8: LES NOUVEAUTÉS
Modules RESTful Web Services
(RestWS)
API REST entièrement configurable
Intégration avec views!
Vos listes disponibles via une API REST
sans coder!
GuzzleHTTP
Un client HTTP simple et performant
(RIP drupal_http_request)
JUIN 2015
Webinar Smile - Drupal 8
UN MOTEUR RESTFUL
39
DRUPAL 8: LES NOUVEAUTÉS
Module entity_cache inclus
au core Drupal
Cache tags
Vider les bons caches
Aggrégation des CSS et JS par défaut
La communauté Drupal travail en ce moment à l’amélioration
générale des performances
JUIN 2015
Webinar Smile - Drupal 8
CACHE
41
DRUPAL 8: QUAND? COMMENT?
Migration depuis Drupal 7
Migration depuis Drupal 6
Lancement d'un nouveau projet
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
42
Migration depuis Drupal 7
Planifier sans précipitation
Choisir les bons modules
Attendre Drupal 9?
VERSION STABLE RELEASE CANDIDATE BETA
DRUPAL 8: POURQUOI? QUAND? COMMENT?
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
43
Drupal
9 Support
Migration depuis Drupal 7
Planifier sans précipitation
Choisir les bons modules
Attendre Drupal 9?
VERSION STABLE RELEASE CANDIDATE BETA
DRUPAL 8: POURQUOI? QUAND? COMMENT?
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
44
Drupal
9 Support
Migration depuis Drupal 7
Planifier sans précipitation
Choisir les bons modules
Attendre Drupal 9?
VERSION STABLE RELEASE CANDIDATE BETA
DRUPAL 8: POURQUOI? QUAND? COMMENT?
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
Migration Migration
45
DRUPAL 8: POURQUOI? QUAND? COMMENT?
Migration depuis Drupal 6
L'enjeu du support
Migration 6 ou 7: même combat
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
VERSION STABLE RELEASE CANDIDATE BETA
46
Migration depuis Drupal 6
L'enjeu du support
Migration 6 ou 7: même combat
Support Acquia Support par la communauté
DRUPAL 8: POURQUOI? QUAND? COMMENT?
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
VERSION STABLE RELEASE CANDIDATE BETA
47
Migration depuis Drupal 6
L'enjeu du support
Migration 6 ou 7: même combat
Support Acquia Support par la communauté
DRUPAL 8: POURQUOI? QUAND? COMMENT?
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
VERSION STABLE RELEASE CANDIDATE BETA
Migration
48
DRUPAL 8: POURQUOI? QUAND? COMMENT?
Lancement d'un nouveau projet
Procéder par étape
Que faire maintenant...
...et un peu plus tard
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
VERSION STABLE RELEASE CANDIDATE BETA
49
DRUPAL 8: POURQUOI? QUAND? COMMENT?
Lancement d'un nouveau projet
Procéder par étape
Que faire maintenant...
...et un peu plus tard
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
Modules du noyau
Modules
Complémentaires
VERSION STABLE RELEASE CANDIDATE BETA
50
DRUPAL 8: POURQUOI? QUAND? COMMENT?
Lancement d'un nouveau projet
Procéder par étape
Que faire maintenant...
...et un peu plus tard
JUIN 2015
Webinar Smile - Drupal 8
QUAND?
Modules du noyau
Modules
Complémentaires
VERSION STABLE RELEASE CANDIDATE BETA
Plus riche que Drupal 7
51
DRUPAL 8: QUAND? COMMENT?
Préparer la montée en compétence
JUIN 2015
Webinar Smile - Drupal 8
COMMENT?
52
DRUPAL 8: POURQUOI? QUAND? COMMENT?
Développer un module
Utilisation de concepts Symfony2
Programmation orientée objet
Montée en compétence
Utilisation de YML
Révolution au niveau des API Drupal
Expertise Symfony2 en support
JUIN 2015
Webinar Smile - Drupal 8
COMMENT?
Database
Navigateur
Logique PHP (accès aux données)
Moteur de Template
53
DRUPAL 8: POURQUOI? QUAND? COMMENT?
Créer un thème
Drupal 8 s’appuie sur le moteur de template Twig
o Standardisation
o Maintenance
o Souplesse (surcharge)
Montée en compétence
La connaissance du PHP
n’est plus un pré-requis (mais utile)
Expertise Twig
Maîtrise du système de surcharge
JUIN 2015
Webinar Smile - Drupal 8
COMMENT?
Database
Navigateur
Logique PHP (accès aux données)
Moteur de Template
(rendu HTML)
54
DRUPAL 8: POURQUOI? QUAND? COMMENT?
Oser les SPA
(Single Page Application) !
Les nouveautés en termes de
Webservices ouvre la voie au
« Headless Drupal »
Montée en compétence
Utilisation de requêtes Ajax
Angular JS ou autres frameworks
FrontEnd
Développement SOA (Mockup de
Webservices, bouchons…)
JUIN 2015
Webinar Smile - Drupal 8
COMMENT?
Database
Navigateur
Logique PHP (accès aux données)
Framework JavaScript
(rendu HTML)
Une migration vers une version majeure
est bien souvent un projet à part
entière. La charge de travail est
étroitement liée à la complexité du site.
DRUPAL 8: MIGRER VERS DRUPAL 8?
Choisissez les bons modules
References Entityreference
Phone Telephone
Link URL
Services RESTful Web Services
Utiliser l’éditeur de texte riche CKEditor
Attention quelques modules natifs vont disparaitre
Blog, Dashboard, OpenID, Poll
Ces modules deviennent des extensions
communautaires
Profile, Trigger
Ces modules disparaissent au profit d’alternatives
DEUX CAS DE FIGURE
LANCER UN PROJET SOUS DRUPAL 7
Anticipez Drupal 8 dès la phase de conception
Mes extensions communautaires sont elles disponibles pour Drupal 8?
Le module Upgrade Status vous donne un état
des modules portés pour Drupal 8
Quid des développements spécifiques?
L’extension Drupal Module Upgrader vous donne
les bons indicateurs
SITE DÉJÀ EXISTANT SOUS DRUPAL 6/7
Avoir un aperçu de la tâche à accomplir
DRUPAL 8: MIGRER VERS DRUPAL 8?
Upgrade status
Pour chaque module
quatre états possibles:
• Non disponible
• Version de
développement disponible
• Version stable disponible
• Intégré au core
FAIRE UN ETAT DES LIEUX
JUIN 2015
https://www.drupal.org/project/upgrade_status
DRUPAL 8: MIGRER VERS DRUPAL 8?
Drupal Module
Upgrader
Analyse un module et
génère un rapport:
• Liste les API qui ont
changé ou qui ne sont plus
supportées
• Liens vers la
documentation
FAIRE UN ETAT DES LIEUX
JUIN 2015
https://www.drupal.org/project/drupalmoduleupgrader
Exemple de rapport sur le module Socialize :
DRUPAL 8: MIGRER VERS DRUPAL 8?
Migrate
Brique intégrée au core
Drupal:
• Migration des contenus et
de leur type
• Migration des utilisateurs
et de leurs rôles
• Migration des blocks
• Migration de la
configuration
REPRISE DES CONTRIBUTIONS
JUIN 2015
Drupal 6 Drupal 7
Type de contenu
Rôles Configuration
Contenus Utilisateurs
Migrate
top related