Recherche dans le site

Syndication

Partenariats

Tour d'horizon des modules CCK

05 août 2010

Content Construction Kit, surnommé CCK est un des modules les plus utiles de Drupal. Il permet de créer de nouveaux types de noeuds constitués de données structurées : il permet de construire facilement des « documents » aussi différents qu'un recette de cuisine, un descriptif automobile, une galerie d'images, etc.

Cette page présente une sélection de modules couramment associés à CCK pour en étendre les fonctionnalités, chaque module est accompagné d'une courte description. L'objectif n'est pas de se substituer au site drupal.org, mais plus modestement de fournir aux débutants quelques repéres, en français, pour choisir les modules les plus couramment utilisés. Pour une recension complète, la section CCK des modules de Drupal (en) reste indispensable.

Content Construction Kit : le paquetage CCK de base

Content
Content est le sous-module CCK de base. Contient les fonctionnalités de base.
Text
Text est le sous-module des données textuelles (champ texte et zone de texte)
Number
Number est le sous-module des données numériques (entier, décimaux et flottants)
Option Widgets
Le sous-module Option Widgets ajoute les widgets de listes : menu déroulant, boutons radios, cases à cochées.
Fieldgroup
Le sous-module Fieldgroup ajoute les conteneurs fieldset aux widgets de CCK.
Content Copy
Le sous-module Content Copy permet d'exporter et d'importer les types de contenus générés par CCK.
Content Permissions
Content Permissions permet de contrôler l'accès à la saisie des données widget par widget. Attention : il peut être assez gourmand en ressources.
Node Reference
Le module Node Reference permet de faire facilement référence à un autre noeud (hyperlien automatique, etc.)
User Reference
 Le module User Reference permet de faire référence à un utilisateur du site (hyperlien vers la page du compte utilisateur)

Adresses, URL, etc.

Email Field
Le module Email Field permet de gérer les courriels (contrôle de saisie), il peut s'interfacer avec Invisimail pour protéger les courriels affichés des spammeurs.
Link
Link est un  module permettant de gérer les hyperliens (coltôle de saisie)
Adresses
Adresses est un module complexe permettant de gérer les adresses postales, il peut s'interfacer avec de nombreux modules pour gérer des carnets d'adresses, disposer des code postaux, etc.

Dates, nombres et monnaie

Date (contient Date API)
Date est un paquetage de modules permettant de gérer les dates, il propose notamment un widget affichant un petit calendrier pour sélectionner les dates au moment de la saisie. Permet de choisir le format de date affichée (court, moyen, long).
Format Number API
Le module Formatted Number API ajoute la possibilité de mettre en forme les nombres (séparateurs de milliers, séparateur décimal, etc.) Attention  : ce module n'est pas utilisable en lui même, par contre il peut être demandé par d'autres modules qui utilisent ses fonctionnalités.
Duration
Le module Duration permet de saisir et d'afficher des durées (par exemple, 2h50m35s). Ne semble pas être fréquemment mis à jour.
Formatted Number CCK
Le module Formatted Number CCK permet d'utiliser les fonctionnalités de mise en forme de Format Number API dans CCK.
Money CCK
Module spécialisé dans la gestion des monnaie, il s'interface avec le module Currency API pour gérer les taux de change, donner la liste des monnaies existantes, etc.
Measured Value Field (concurrent de Money CCK)
Module concurrent de Money CCK (c'est un fork), plus générique car il ne se cantonne pas aux valeurs monétaires mais à toutes les valeurs mesurables (et leur conversions).

Gestion de fichiers

Filefield
  Le module Filefield à l'utilisateur de télécharger des fichiers vers le site Web (upload)
Filefield_paths
Perment d'utiliser les mots-clefs forunis par le module Token pour choisir le chemin où les fichiers téléchargés seront stockés.
Imagefield
Module basés sur Filefield et plus spécialement destiné au téléchargement des images.
Imagefield_crop
Module annexe d'ImageField destiné à redimensionner les images téléchargée (très intéressant pour les vignettes)
Mimedetect
Mimedetect est un module très recommandé lorsqu'on transfert des fichiers, il vérifie que les fichiers téléchargés sont correspondent bien aux formats autorisés.
Imagefield Import
Le module Imagefield Import permet de réaliser des transfert de fichiers en nombre vers le serveur (sans passer par Flash, comme Image FUpload). Il est capable de récupérer les données IPTC et EXIF.

Références à d'autres composants

Viewsfield
Ce champs permet de faire référence à une vue de Views et à l'afficher dans une page (alias de Token utilisables).
View Reference
Comme Viewsfield mais avec du code PHP à la place des alias de Toke

Présentation des champs

Custom Formaters
Permet de créer des modes d'affichages de champs CCK personnalisés. Les mises en formes réalisées peuvent être expoertées et réutilisées dans d'autres projets. Custom Formaters propose deux méthodes :
  • basique  : utiliser les alias de Token, simple mais limité;
  • avancé  : utiliser des snippets en PHP, plus complexe mais sans limite.
CCK Multiple Formatter
Lorsqu'on utilise des champs multiple, chaque élément de la liste est placé dans une balise <div>. Le module CCK Multiple Formatter permet de placer les éléments dans une véritable liste <ul><li>.
CCK fieldgroup tabs (avec le module Tabs et le plugin jQuery UI tabs)
Permet de regrouper les champs dans des onglets pour en améliorer l'affichage. Sympathique mais un  peu limité par le fait qu'il n'est pas possible de mettre des fieldset dans un onglet (l'onglet est un mode d'affichage de Fieldgroup).
Conditional Fields
Permet d'afficher/masquer des champs CCK en fonction des valeurs présentent dans d'autres champs.
Flexifield
Permet de créer des groupes de champs multiples (y compris avec Filefield). Toutefois Flexifield ne sera sans doute pas une solution pérenne. Le module Multigroup sera présent dans le noyau de CCK 3 (actuellement en développement, mais déjà très fonctionnel). Mais, il n'est pas sûr que Multigroup soit intégré avec CCK dans Drupal 7 car le développeur principal n'a pas le temps...
Wysiwyg API CCK Integration
Permet d'utiliser Wysiwyg dans CCK (c'est possible sans, mais il corrige quelques bogues).
Autocomplete Widgets for CCK Text and Number
Permet de créer des widgets offrant la complétion automatique de la saisie utilisateur pour les champs Text et Number (comme pour les champs Node Reference ou User Reference). La complétion est réalisée à partir de la liste des valeurs autorisées du widget.

Autres modules intéressants

Automatic nodetitles (auto_nodetitle)
Rien à voir avec CCK, puisqu'il s'agit simplement de générer un titre automatique pour les noeuds. Force est de constater qu'on s'en sert souvent pour les noeuds contenant des champs CCK.
Content Profile
Le module Content Profile permet d'utiliser la puissance de CCK pour les profils utilisateurs. Il est normalement impossible d'utiliser CCK dans les profils utilisateurs car ce ne sont pas des noeuds, Content Profile permet de contourner cette limite.