CCK Seblod pour Joomla!

Notre agence web experte Joomla! a fait le choix technologique du CCK SEBLOD avec lequel il réalise tous ses projets Joomla! et donne des formations depuis des années.
Mais pourquoi ce choix du CCK SEBLOD ? Parmi les nombreuses discussions autour des évolutions de Joomla, l’émergence des CCKs (Content Construction Kit) est certainement une des plus centrales, au moins pour les développeurs d'applications, puisque la communauté du CMS ne semble pas aller dans cette direction (pour les prochaines versions de Joomla) malgré quelques initiatives peu soutenues.

Toujours est-il qu'aujourd'hui, après des années d'existence, Joomla qui n'a pas de CCK natif, donne tout de même le choix entre une bonne dizaine de solutions assez différentes les unes des autres mais qui toutes proposent de créer ses propres types de contenu et dans certains cas sont de véritables ateliers pour la génération d'applications web au delà des fonctions classiques d'un CMS.

Nous avons essayé dans cet article de recenser les principaux CCK disponibles pour Joomla en dressant quelques critères de choix.
Comme toujours ce type d'exercice reste très imparfait mais a le mérite de fournir quelques éléments de décision pour les développeurs et dans une certaine mesure les DSI qui misent sur une solution plus professionnelle de développer un site ou une application sous Joomla.

Mais pour ceux qui l'ignorerait qu'est-ce qu'un CCK ?

Pour faire simple un CCK permet de définir et de gérer tous ses propres types de contenus avec une seule extension dans une logique d'unification des interfaces et des comportements.

En effet, au lieu d’assembler des composants Joomla hétéroclites, développés de façons diverses, pas forcément compatibles entre elles, un CCK permet de construire soi-même ses propres types de contenus sur une architecture commune ce qui rend chaque type de contenu compatible avec l’autre.

Ainsi un article Joomla, un gestionnaire de Formulaire (RS Forms), un annuaire (SOBIPRO), un gestionnaire événements (JEVENTS), un gestionnaire de documents (DOCMAN), d’annonces (ADSMANAGER) peuvent tous être avantageusement remplacés par un seul CCK.

On utilise un CCK quand :

  • On veut personnaliser les champs ou des types de contenus (annuaire, formulaire, événement, annonce, rendez-vous…) différemment de ce qui est proposé par le composant déjà tout fait
  • On veut faire cohabiter voire interagir différents types de contenus pour obtenir des fonctions et des comportements spécifiques non proposés par les composants tiers tout fait
  • On veut bénéficier d’un framework de template unifié pour tous les types de contenus (sinon chaque extension Joomla! dispose de son propre système de template) en front office mais aussi en back office (même interface quelques soient les types de contenus à gérer)
  • On veut permettre des évolutions futures des contenus par l’ajout d’un champs, le partage d’une information entre deux types de contenus, l’ajout de conditions etc…

Au départ, 10 CCKs pour Joomla ont été sélectionnés et il a fallu faire des choix. Des composants qui n'étaient pas de véritables CCK, tout en en partageant certaines fonctions (comme SOBI pro ou ChronoForms), ont été écartés. Pour chaque CCK, nous voulions de véritables outils capables non seulement de proposer des champs supplémentaires à une extension mais surtout de remplacer complètement toute gestion de contenu d'un site.

Les solutions sélectionnées étaient donc: Cobalt (anciennement Mighty Resources), ContentBuilder, Fabrik, FlexiContent, Form2Content, K2, Seblod, MiniCCK, FieldsAttach et Zoo:

cobalt contentbuilder fabrik flexiContent form2content k2 seblod-logo zoo-logo minicck fieldsattach

 

On peut évaluer les CCK selon plusieurs critères:

  • les contenus créés par le CCK sont natifs Joomla: il s'agit en fait d'étendre les articles Joomla avec des champs supplémentaires. Dans ce cas on trouve ContentBuilder, Form2Content, FlexiContent et Seblod
  • Le CCK ne se cantonne pas à étendre les contenus Joomla avec des champs additionnel que comme un générateur d'applications web. Dans cette catégorie on trouvera plutôt Fabrik, Seblod et Zoo
  • Au delà de créer des types de contenus avec des champs personnalisés, il est essentiel de pouvoir construire des listes de contenus filtrés par un ou plusieurs de ces champs
  • la possibilité de communication avec des extensions tierces (exemple e-commerce) pour retrouver un éco-système riche et une chaîne de production complète.
  • la vitesse de prise en main
  • le coût de la solution
  • la qualité et la réactivité du support, de la documentation, la disponibilité des formations
  • la force de la communauté, l'ampleur des utilisations du CCK
  • l'intégration avec les frameworks de templates

Pourquoi faut il un CCK natif?

Si les outils comme K2 sont très simple d'emploi, ce qui a grandement contribué à son adoption, on se retrouve vite limité dans les évolutions et les développements spécifiques car ce genre d'outil constitue en fait un CMS propre à l'intérieur du CMS Joomla.
On compte pas moins de 152 extensions pour K2 dont la plupart sont des versions d'extensions déjà existantes pour Joomla de base, taillées pour K2. Très vite on se retrouve limité par les extensions existantes dans la communauté K2 et on ne bénéficie plus des apports de la communauté Joomla, ce qui est pourtant une principale raison du succès d'un CMS.

Par ailleurs, il faut éviter de se retrouver avec l'équivalent d'un CMS (le CCK) à l'intérieur du CMS Joomla! lui-même. Sinon toute évolution du CMS ne bénéficie pas au CCK. L'approche native où le CCK étend le CMS plus qu'il ne le remplace, est donc, selon nous, à privilégier, même au prix d'une complexité de prise en main plus grande.

Les solutions comme FABRIK ou COBALT, quoi que bien plus performantes que K2 ou Zoo, ont été aussi écartées pour les même raisons. 

Dans ce cas il ne reste plus que Seblod, Content Builder, Form2Content, FieldsAttach, MiniCCK et FlexiContent.

Dans ce groupe on peut encore distinguer les solutions globales comme Seblod, Content Builder, Form2Content et FlexiContent qui sont plus des Applications Builders que de simple CCK et FieldsAttach ou MiniCCK qui se "contentent" d'ajouter des champs à des articles Joomla! mais qui ont le gros avantage d'une simplicité extrême.

Alors que choisir ?

Évidemment chacun aura ses préférences mais chez Pulsar Informatique nous avons privilégié les points suivants:

  • intégration la plus native Joomla! possible. Il faut que toute évolution du CMS soit directement exploitable par le CCK (tags, versionning etc...)
  • un CCK qui est activement maintenu et qui suit bien les évolutions du CMS.
  • flexibilité et modularité. Nous privilégions les solutions plus flexibles qui permettent de construire ses fonctions plutôt que des solutions clés en mains monolithiques. A ce titre FlexiContent est assez simple et très complet mais essaye de proposer une interface "presse-bouton" la plus exhaustive possible... ce qui ne peut évidemment pas convenir dans 100% des cas. A l'inverse SEBLOD dispose d'une interface minimaliste mais qui répond à tous les cas de figure.
  • la possibilité de se construire des mini applications qu'on réutilise très simplement de projet et projet
  • il ne suffit pas de savoir faire des super articles Joomla! avec des champs personnalisés, le véritable gain se trouve dans l'exploitation de ces types de contenus, c'est à dire dans les solutions de requetage, de listes de moteurs de recherche. Ici la solution Form2Content montre ses limites car elle se contente de fabriquer des contenus certes riches mais sans listes filtrables.
  • taille de l'équipe de développement du CCK. Un CCK développé par 2 ou 3 personnes seulement nous semble un risque trop important pour la pérennité de la solution. L'équipe SEBLOD est la seule à dépasser la dizaine de développeurs.
  • qualité du support de l'éditeur. C'est un point évident nous devons pouvoir nous appuyer sur un support pro (payant mais de qualité)

diagramme pour l'évaluation des ccks pour joomla!

 

Les critères d'une telle évaluation sont forcément subjectifs et correspondent à nos besoins propres mais ils reflètent cependant des tendances nettes dans les forces et faiblesses de chacune des solutions. 

Une fois cette analyse faite nous avons retenu SEBLOD pour notre CCK.

seblod choisi par pulsar

Avec ces critères notre choix s'est porté vers SEBLOD qui, s'il n'est pas le plus facile à prendre en main, est selon nous le plus complet. Avec le CCK Seblod, l'agence web Pulsar développe des sites complexes sans autre composant. Tout projet Joomla est réalisé avec essentiellement:

  • le CMS Joomla lui-même
  • le CCK Seblod
  • un framework de template (en l'occurence WARP de Yootheme)

Cette simplicité permet la robustesse, la stabilité et l'unification de toutes les interfaces. Avec SEBLOD nous proposons une interface unifiée pour tous les types de contenus. Ainsi un document à télécharger, un événement, un article, ou élément d'annuaire ou tout autre contenu propose une interface unique avec les seuls champs demandés par le client.

C'est un gage de qualité pour le client pour lequel la prise en main de la gestion du site est facilitée.

Unifier les interfaces permet aussi de tout traiter comme des articles Joomla standards pour simplifier les fonctions transverses comme la recherche, la réécriture d'url, la géolocalisation des contenus etc...

Mais au delà de l'unification, le CCK permet aussi la génération de listes de contenus automatiques avec des filtres de recherches sophistiqués permettant la génération de pages web automatiques avec une gestion de contenu très facilitée pour le client final. Ainsi des menus automatiques, des infos contextuelles, des affichages en onglets, calendriers, cartes googlemap, sliders, accordéons... sont tous des listes seblod de contenus filtrés dynamiquement selon un template particulier.

Seblod nous permet aussi de grouper ses types de contenus personnalisés avec ses listes dynamiques et ses templates spécifiques  dans un dossier d'application exportable et réutilisable en quelques clics d'un projet à un autre, ce qui ouvre la voie vers l'industrialisation des développements CCK.

Bref avec le CCK Seblod nous avons une chaîne de production professionnelle simple et efficace pour tous vos projets !

 

Technologies
68
Votre projet web ?
Parlons-en !

Faites confiance à nos spécialistes depuis 2007!