SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
TYPO3 CMS 6.0
                                        Quoi de neuf dans cette version
                                        majeure?


                                        François Suter, Développeur TYPO3 senior, fsuter@cobweb.ch




TYPO3 User Group - Lausanne, 11 mars 2013
File Abstraction Layer
       •“mini-DAM”
       •un enregistrement DB par
         fichier => table “sys_file”
       •les méta-données sont ajoutées
         au moment de la relation =>
         table “sys_file_reference”
       •éléments de contenu, relation
         avec IRRE
File Abstraction Layer
       •Drivers
        •systèmes de stockage des fichiers
        •possibilité d’utiliser des stockages
        distants (WebDAV, Amazon S3) de
        manière transparente)
       •Storages
        •un stockage, lié à un Driver
        •présence transparente dans le BE (et le
        FE) des fichiers,où qu’ils soient
        •référencés dans les filemounts
File Abstraction Layer
       •Très bon concept
       •Pas encore mûri
        •manque d’extensions pour les drivers
        •manque d’extensions utilisant les
        sys_file (ex. galeries photo)
       •A venir: “media”, remplacement
         du DAM
Catégorisation
      •Système générique de
        catégories
      •Pas (encore) utilisé dans le
        Core
Extension Manager
      •Entièrement refait
       •code et interface utilisateur
      •Extbase + jQuery
      •Interface simplifiée
      •Fonctionnalités déplacées
       •traductions
       •fonctions développeurs
      •☹Fonctions manquantes ou pas
        encore déplacées
Log et Gestion utilisateurs
       •Autres modules entièrement
         refaits:
        •beuser (Admin Tools > Backend Users),
        amélioré
        •belog (Admin Tools > Log), refait à
        l’identique
Notes internes
      •Refaites à neuf et nouveau look
Nouveau bootstrapping
      •typo3/init.php découpé en
        classe (TYPO3CMSCore
        CoreBootstrap) et méthodes
      •permet un bootstrapping plus
        fin (custom)
      •LocalConfiguration +
        AdditionalConfiguration
      •plus de typo3conf/
        extTables.php
Local Configuration
      •Devenu un simple array PHP
      •localconf.php =>
        LocalConfiguration.php
      <?php
      return array(
      !          'BE' => array(
      !          !          'debug' => '1',
      !          !          ...
      !          ),
      !          'DB' => array(
      !          !          'database' => 'introduction_t3',
      !          !          ...
      !          ),
      !          'EXT' => array(
      !          !          ...,
      !          !          'extListArray' => array(
      !          !          !          0 => 'info',
      !          !          !          1 => 'perm',
      !          !          !          2 => 'func',
      !          !          !          ...
      !          !          ),
      !          ),
      !          'FE' => array(
                    ...
Cache de configuration
      •Plus de fichiers
        temp_CACHED_*
      •Déplacé dans typo3temp/
        Cache/Code/cache_core/
Namespaces PHP
     •Introduits pour tout le Core
     •Classes déplacées pour coller à
       une convention de
       nomenclature
     •Couche de rétro-compatibilité
     •autoloader
Namespaces PHP
     •Extension “backend”
      •TYPO3CMSBackend
      •anciennement “typo3”
     •Extension “frontend”
      •TYPO3CMSFrontend
      • anciennement “EXT:cms/tslib”
     •Extension “core”
      •TYPO3CMSCore
      • anciennement “t3lib”
Namespaces PHP
      •Exemples:
      •t3lib_div => TYPO3CMSCoreUtility
      GeneralUtility
      •t3lib_befunc => TYPO3CMSBackend
      UtilityBackendUtility
      •tslib_cObj => TYPO3CMSFrontend
      ContentObjectContentObjectRenderer
      •Mapping pour IDE:
      •typo3/sysext/core/Migrations/Code/
      LegacyClassesForIde.php
XCLASS
            •Par configuration d’objets
            •Exemple:
$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3CMS
FrontendContentObjectFormContentObject'] = array(
!      'className' => 'CobwebCustomConfigXclass
FormContentObject'
);
TCA
      •Amélioration du support SQL:
      •Accepte des valeurs NULL
      •Gère des champs DATE ou DATETIME

Mais conteúdo relacionado

Mais procurados

SdE 2 - Langage C, Allocation de memoire
SdE 2 - Langage C, Allocation de memoireSdE 2 - Langage C, Allocation de memoire
SdE 2 - Langage C, Allocation de memoireAlexandru Radovici
 
TD : 12 Logiciels libres pour contruire vos sites web
TD : 12 Logiciels libres pour contruire vos sites webTD : 12 Logiciels libres pour contruire vos sites web
TD : 12 Logiciels libres pour contruire vos sites webStéphane Rouilly
 
PHPTour 2011 - PHP5.4
PHPTour 2011 - PHP5.4PHPTour 2011 - PHP5.4
PHPTour 2011 - PHP5.4julien pauli
 
Traquer les fuites mémoires avec Python
Traquer les fuites mémoires avec PythonTraquer les fuites mémoires avec Python
Traquer les fuites mémoires avec PythonVictor Stinner
 
Initiation au php
Initiation au phpInitiation au php
Initiation au phpStrasWeb
 
Nettoyer et transformer ses données avec Openrefine : partie 2
Nettoyer et transformer ses données avec Openrefine : partie 2Nettoyer et transformer ses données avec Openrefine : partie 2
Nettoyer et transformer ses données avec Openrefine : partie 2Mathieu Saby
 
Install oracle 11g sous RedHat
Install oracle 11g sous RedHatInstall oracle 11g sous RedHat
Install oracle 11g sous RedHatTaoufik AIT HSAIN
 
AZprocede: interface simulateur
AZprocede: interface simulateurAZprocede: interface simulateur
AZprocede: interface simulateurNicolas JOUVE
 
Stockage et hashage des mots de passe
Stockage et hashage des mots de passeStockage et hashage des mots de passe
Stockage et hashage des mots de passeThomas P
 
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Mathieu Saby
 
Administration de plusieurs sites TYPO3
Administration de plusieurs sites TYPO3Administration de plusieurs sites TYPO3
Administration de plusieurs sites TYPO3Yannick Pavard
 
03 02 maintenance d'un système de fichiers linux
03 02 maintenance d'un système de fichiers linux 03 02 maintenance d'un système de fichiers linux
03 02 maintenance d'un système de fichiers linux Noël
 

Mais procurados (19)

Implementing a key/value store
Implementing a key/value storeImplementing a key/value store
Implementing a key/value store
 
SdE 2 - Langage C, Allocation de memoire
SdE 2 - Langage C, Allocation de memoireSdE 2 - Langage C, Allocation de memoire
SdE 2 - Langage C, Allocation de memoire
 
TD : 12 Logiciels libres pour contruire vos sites web
TD : 12 Logiciels libres pour contruire vos sites webTD : 12 Logiciels libres pour contruire vos sites web
TD : 12 Logiciels libres pour contruire vos sites web
 
Cours php
Cours phpCours php
Cours php
 
SdE 2 - System de fichiers
SdE 2 - System de fichiersSdE 2 - System de fichiers
SdE 2 - System de fichiers
 
PHPTour 2011 - PHP5.4
PHPTour 2011 - PHP5.4PHPTour 2011 - PHP5.4
PHPTour 2011 - PHP5.4
 
Traquer les fuites mémoires avec Python
Traquer les fuites mémoires avec PythonTraquer les fuites mémoires avec Python
Traquer les fuites mémoires avec Python
 
Initiation au php
Initiation au phpInitiation au php
Initiation au php
 
Initiation au php
Initiation au phpInitiation au php
Initiation au php
 
SdE 3 - System de fichiers
SdE 3 - System de fichiersSdE 3 - System de fichiers
SdE 3 - System de fichiers
 
Pig
PigPig
Pig
 
Nettoyer et transformer ses données avec Openrefine : partie 2
Nettoyer et transformer ses données avec Openrefine : partie 2Nettoyer et transformer ses données avec Openrefine : partie 2
Nettoyer et transformer ses données avec Openrefine : partie 2
 
Install oracle 11g sous RedHat
Install oracle 11g sous RedHatInstall oracle 11g sous RedHat
Install oracle 11g sous RedHat
 
AZprocede: interface simulateur
AZprocede: interface simulateurAZprocede: interface simulateur
AZprocede: interface simulateur
 
Stockage et hashage des mots de passe
Stockage et hashage des mots de passeStockage et hashage des mots de passe
Stockage et hashage des mots de passe
 
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
 
Administration de plusieurs sites TYPO3
Administration de plusieurs sites TYPO3Administration de plusieurs sites TYPO3
Administration de plusieurs sites TYPO3
 
03 02 maintenance d'un système de fichiers linux
03 02 maintenance d'un système de fichiers linux 03 02 maintenance d'un système de fichiers linux
03 02 maintenance d'un système de fichiers linux
 
SdE 3 - Systemes de fichiers
SdE 3 - Systemes de fichiersSdE 3 - Systemes de fichiers
SdE 3 - Systemes de fichiers
 

Destaque

Tesseract, T3UNIFR12
Tesseract, T3UNIFR12Tesseract, T3UNIFR12
Tesseract, T3UNIFR12Idéative
 
T3CON10: The Tesseract Project for TYPO3
T3CON10: The Tesseract Project for TYPO3T3CON10: The Tesseract Project for TYPO3
T3CON10: The Tesseract Project for TYPO3Idéative
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016Andrew Chen
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome EconomyHelge Tennø
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsBarry Feldman
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your BusinessBarry Feldman
 

Destaque (6)

Tesseract, T3UNIFR12
Tesseract, T3UNIFR12Tesseract, T3UNIFR12
Tesseract, T3UNIFR12
 
T3CON10: The Tesseract Project for TYPO3
T3CON10: The Tesseract Project for TYPO3T3CON10: The Tesseract Project for TYPO3
T3CON10: The Tesseract Project for TYPO3
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome Economy
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post Formats
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
 

Semelhante a Nouveautés dans TYPO3 CMS 6.0

Déploiement ELK en conditions réelles
Déploiement ELK en conditions réellesDéploiement ELK en conditions réelles
Déploiement ELK en conditions réellesGeoffroy Arnoud
 
"Input/Ouput, 16 ans après" à Devoxx France 2012
"Input/Ouput, 16 ans après" à Devoxx France 2012"Input/Ouput, 16 ans après" à Devoxx France 2012
"Input/Ouput, 16 ans après" à Devoxx France 2012Jean-Michel Doudoux
 
php2 : formulaire-session-PDO
php2 : formulaire-session-PDOphp2 : formulaire-session-PDO
php2 : formulaire-session-PDOAbdoulaye Dieng
 
Meetup Drupal Lyon mars 2013 - Optimiser les performances Drupal par le cache
Meetup Drupal Lyon mars 2013 - Optimiser les performances Drupal par le cacheMeetup Drupal Lyon mars 2013 - Optimiser les performances Drupal par le cache
Meetup Drupal Lyon mars 2013 - Optimiser les performances Drupal par le cacheAurelien Navarre
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieLoic Yon
 
Performance et optimisation de PrestaShop
Performance et optimisation de PrestaShopPerformance et optimisation de PrestaShop
Performance et optimisation de PrestaShopPrestaShop
 
Formation Informatique base et généralités
Formation Informatique base et généralitésFormation Informatique base et généralités
Formation Informatique base et généralitésSinovatia
 
T3UNIFR12 - Réussir sa mise à jour de typo3
T3UNIFR12 - Réussir sa mise à jour de typo3T3UNIFR12 - Réussir sa mise à jour de typo3
T3UNIFR12 - Réussir sa mise à jour de typo3sitengo
 
Guss webcasts Tempdb Internals - june 2013
Guss webcasts   Tempdb Internals - june 2013Guss webcasts   Tempdb Internals - june 2013
Guss webcasts Tempdb Internals - june 2013David BAFFALEUF
 
LP_chapitre3_Creation et gestion_BD_2019.pptx
LP_chapitre3_Creation et gestion_BD_2019.pptxLP_chapitre3_Creation et gestion_BD_2019.pptx
LP_chapitre3_Creation et gestion_BD_2019.pptxFATIMAEZZAHRAEOUBELL
 
BC Breaks - Incompatibilites PHP7
BC Breaks - Incompatibilites PHP7BC Breaks - Incompatibilites PHP7
BC Breaks - Incompatibilites PHP7Darkmira
 
Le moteur exakat
Le moteur exakatLe moteur exakat
Le moteur exakatexakat
 
2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communauté2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communautéMickaël Rémond
 
Jit 2009 TYPO3 Performances
Jit 2009  TYPO3 PerformancesJit 2009  TYPO3 Performances
Jit 2009 TYPO3 PerformancesPatrick Gaumond
 

Semelhante a Nouveautés dans TYPO3 CMS 6.0 (20)

Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0Les nouveautés de PowerShell 3.0
Les nouveautés de PowerShell 3.0
 
Déploiement ELK en conditions réelles
Déploiement ELK en conditions réellesDéploiement ELK en conditions réelles
Déploiement ELK en conditions réelles
 
"Input/Ouput, 16 ans après" à Devoxx France 2012
"Input/Ouput, 16 ans après" à Devoxx France 2012"Input/Ouput, 16 ans après" à Devoxx France 2012
"Input/Ouput, 16 ans après" à Devoxx France 2012
 
Paris RailsCamp 2009
Paris RailsCamp 2009Paris RailsCamp 2009
Paris RailsCamp 2009
 
Ejb 3
Ejb 3Ejb 3
Ejb 3
 
php2 : formulaire-session-PDO
php2 : formulaire-session-PDOphp2 : formulaire-session-PDO
php2 : formulaire-session-PDO
 
Meetup Drupal Lyon mars 2013 - Optimiser les performances Drupal par le cache
Meetup Drupal Lyon mars 2013 - Optimiser les performances Drupal par le cacheMeetup Drupal Lyon mars 2013 - Optimiser les performances Drupal par le cache
Meetup Drupal Lyon mars 2013 - Optimiser les performances Drupal par le cache
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partie
 
iTunes Stats
iTunes StatsiTunes Stats
iTunes Stats
 
Performance et optimisation de PrestaShop
Performance et optimisation de PrestaShopPerformance et optimisation de PrestaShop
Performance et optimisation de PrestaShop
 
GetText / Rails - FR
GetText / Rails - FRGetText / Rails - FR
GetText / Rails - FR
 
GetText / Rails
GetText / RailsGetText / Rails
GetText / Rails
 
Formation Informatique base et généralités
Formation Informatique base et généralitésFormation Informatique base et généralités
Formation Informatique base et généralités
 
T3UNIFR12 - Réussir sa mise à jour de typo3
T3UNIFR12 - Réussir sa mise à jour de typo3T3UNIFR12 - Réussir sa mise à jour de typo3
T3UNIFR12 - Réussir sa mise à jour de typo3
 
Guss webcasts Tempdb Internals - june 2013
Guss webcasts   Tempdb Internals - june 2013Guss webcasts   Tempdb Internals - june 2013
Guss webcasts Tempdb Internals - june 2013
 
LP_chapitre3_Creation et gestion_BD_2019.pptx
LP_chapitre3_Creation et gestion_BD_2019.pptxLP_chapitre3_Creation et gestion_BD_2019.pptx
LP_chapitre3_Creation et gestion_BD_2019.pptx
 
BC Breaks - Incompatibilites PHP7
BC Breaks - Incompatibilites PHP7BC Breaks - Incompatibilites PHP7
BC Breaks - Incompatibilites PHP7
 
Le moteur exakat
Le moteur exakatLe moteur exakat
Le moteur exakat
 
2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communauté2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communauté
 
Jit 2009 TYPO3 Performances
Jit 2009  TYPO3 PerformancesJit 2009  TYPO3 Performances
Jit 2009 TYPO3 Performances
 

Nouveautés dans TYPO3 CMS 6.0

  • 1. TYPO3 CMS 6.0 Quoi de neuf dans cette version majeure? François Suter, Développeur TYPO3 senior, fsuter@cobweb.ch TYPO3 User Group - Lausanne, 11 mars 2013
  • 2. File Abstraction Layer •“mini-DAM” •un enregistrement DB par fichier => table “sys_file” •les méta-données sont ajoutées au moment de la relation => table “sys_file_reference” •éléments de contenu, relation avec IRRE
  • 3. File Abstraction Layer •Drivers •systèmes de stockage des fichiers •possibilité d’utiliser des stockages distants (WebDAV, Amazon S3) de manière transparente) •Storages •un stockage, lié à un Driver •présence transparente dans le BE (et le FE) des fichiers,où qu’ils soient •référencés dans les filemounts
  • 4. File Abstraction Layer •Très bon concept •Pas encore mûri •manque d’extensions pour les drivers •manque d’extensions utilisant les sys_file (ex. galeries photo) •A venir: “media”, remplacement du DAM
  • 5. Catégorisation •Système générique de catégories •Pas (encore) utilisé dans le Core
  • 6. Extension Manager •Entièrement refait •code et interface utilisateur •Extbase + jQuery •Interface simplifiée •Fonctionnalités déplacées •traductions •fonctions développeurs •☹Fonctions manquantes ou pas encore déplacées
  • 7. Log et Gestion utilisateurs •Autres modules entièrement refaits: •beuser (Admin Tools > Backend Users), amélioré •belog (Admin Tools > Log), refait à l’identique
  • 8. Notes internes •Refaites à neuf et nouveau look
  • 9. Nouveau bootstrapping •typo3/init.php découpé en classe (TYPO3CMSCore CoreBootstrap) et méthodes •permet un bootstrapping plus fin (custom) •LocalConfiguration + AdditionalConfiguration •plus de typo3conf/ extTables.php
  • 10. Local Configuration •Devenu un simple array PHP •localconf.php => LocalConfiguration.php <?php return array( ! 'BE' => array( ! ! 'debug' => '1', ! ! ... ! ), ! 'DB' => array( ! ! 'database' => 'introduction_t3', ! ! ... ! ), ! 'EXT' => array( ! ! ..., ! ! 'extListArray' => array( ! ! ! 0 => 'info', ! ! ! 1 => 'perm', ! ! ! 2 => 'func', ! ! ! ... ! ! ), ! ), ! 'FE' => array( ...
  • 11. Cache de configuration •Plus de fichiers temp_CACHED_* •Déplacé dans typo3temp/ Cache/Code/cache_core/
  • 12. Namespaces PHP •Introduits pour tout le Core •Classes déplacées pour coller à une convention de nomenclature •Couche de rétro-compatibilité •autoloader
  • 13. Namespaces PHP •Extension “backend” •TYPO3CMSBackend •anciennement “typo3” •Extension “frontend” •TYPO3CMSFrontend • anciennement “EXT:cms/tslib” •Extension “core” •TYPO3CMSCore • anciennement “t3lib”
  • 14. Namespaces PHP •Exemples: •t3lib_div => TYPO3CMSCoreUtility GeneralUtility •t3lib_befunc => TYPO3CMSBackend UtilityBackendUtility •tslib_cObj => TYPO3CMSFrontend ContentObjectContentObjectRenderer •Mapping pour IDE: •typo3/sysext/core/Migrations/Code/ LegacyClassesForIde.php
  • 15. XCLASS •Par configuration d’objets •Exemple: $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3CMS FrontendContentObjectFormContentObject'] = array( ! 'className' => 'CobwebCustomConfigXclass FormContentObject' );
  • 16. TCA •Amélioration du support SQL: •Accepte des valeurs NULL •Gère des champs DATE ou DATETIME