Layout 3 colonnes en XHTML / CSS

Layout 3 colonnes en XHTML / CSS

Les datatypes d’eZ Publish : mise en place de l’extension eZ Publish fournit par défaut un ensemble de datatype pour les besoins les plus courants. Malheureusement, il ne réponde pas ou plus forcement au problématique du Web actuelle. La création de datatype personnalisé (custom datatypes) devient rapidement une nécessité pour la réalisation de projet complexe.

Contrairement à ce que la terminologie d’eZ Publish laisse penser, les datatypes sont les véritables classes d’eZ Publish au regard de la terminologie habituelle de la programmation orienté objet. A contrario, les classes d’eZ Publish correspondent plus à la notion de type de données des langages structurés (soit littéralement datatype en anglais), allez y comprendre quelque chose, mais bon ceci est un autre sujet.

Les datatypes par défault

Avant de regarder comment faire un datatype, il est intéressant de regarder l’existant. eZ Publish fournit un certain nombre de datatypes. La documentation officielle en donnent une description plutôt complète. Le code source peut fournit une base de code intéressante pour la création de datatype personalisé. Toutes les définitions se trouvent dans le répertoire kernel/classes/datatypes/.

Les datatypes personnalisés

Les datatypes personnalisés sont de loin l’extension la plus puissante pour étendre le système. Elles permettent d’adapter le modèle de donnée d’eZ Publish aux problématiques métier que l’on rencontre dans la réalisation de site Web moderne. Elle offre la possibilité de maitriser le stockage de données, et ainsi étendre les possibilités dans la gestion de contenu. A contrario des classes, elle offre la possibilité de filtrer et valider les entrées. Cette possibilité réduit le risque d’avoir des données inconsistante stockées en base de données.

Création d'un custom datatype

Arborescence de l'extension

Dans un premier, il faut créer l’extension qui va accueillir notre datatype (sfxexample). Les répertoires et les fichiers nécessaires pour définir un nouveau datatype sont décrit dans la sous-arborescence ci-dessous.

extension/ 
sfxdatatype/ 
settings/ 
    design.ini.append.php 
    content.ini.append.php 
design/ 
    standard/ 
        templates/ 
            content/ 
                datatype/ 
                    view/ 
                        sfxexample.tpl 
                    edit/ 
                        sfxexample.tpl 
datatypes/ 
    sfxexample/ 
        sfxexampletype.php 

Configuration du design

Il est nécessaire de déclarer le design qui correspond à notre datatype. Il faut rajouter dans le fichier settings/design.ini.append.php les déclarations suivantes.

[ExtensionSettings] 

DesignExtensions[]=sfxdatatype 

Déclarer l'existence du datatype

L’opération suivante consiste à informer eZ Publish que cette extension définit un datatype. Il faut ajouter la déclaration dans le fichier settings/content.ini.append.php

[DataTypeSettings] 

ExtensionDirectories[]=sfxdatatype 

AvailableDatatypes[]=sfxexample 

Activer l'extension

Enfin, il faut activer l’extension soit dans les siteaccess où l’on souhaite l’utiliser soit dans l’override globale. L’activation se fait dans le fichier site.ini.append.php

[ExtensionSettings] 

ActiveExtensions[]=sfxdatatype 

Aujourd’hui, nous avons mis en place toute la hiérarchie de répertoire pour accueillir notre futur datatype. Dans le prochain épisode, nous verrons ce qu’il faut mettre dans le fichier sfxexampletype.php.

comments powered by Disqus

Voir aussi

Étude de l'accessibilité d'eZ Publish

Étude de l'accessibilité d'eZ Publish

Comme vous le savez sans doute, je travaille depuis plus d’un an et demi avec le CMS eZ Publish dans le cadre de mon travail. C’est un CMS …

eZ Publish 4.2 intégrera Star Rating : un système de notation accessible

eZ Publish 4.2 intégrera Star Rating : un système de notation accessible

L’extension starrating est un système de notation d’article, de commentaire, ou de n’importe quel objet de contenu pour reprendre la …

eZ Find: filtrer par date

eZ Find: filtrer par date

eZ Find est certainement le seul moyen simple de faire des recherches complexes avec le schéma de données d’eZ Publish. Faire un filtre entre 2 …

eZ Publish récupérer le siteaccess courant

eZ Publish récupérer le siteaccess courant

Je travaille actuellement sur un site multilingue et je dois utiliser le nom de siteaccess dans le template. Facile je pensais… eh bien, il a fallu un …

A la une
  • Rencontre du numérique 2019 - Nîmes
  • référencement naturel d'un hôtel
  • Développeur eZ Platform
  • Tech lead Symfony
  • Expert Qualité Web

Copyright - Sylvain FIX

2009 - 2019