Guide Joomla v1.0.0-dev
OUI DAM remplace com_media : médiathèque Joomla à plugins, 4 backends de stockage, variantes d'images à la demande, relations polymorphes et API REST.
Présentation
OUI DAM remplace com_media : médiathèque Joomla à plugins, 4 backends de stockage, variantes d'images à la demande, relations polymorphes et API REST.
Prérequis
- Joomla 4.4, 5 ou 6 selon la version du paquet.
- PHP 8.1 ou version ultérieure recommandée.
- Une sauvegarde récente avant toute installation ou mise à jour.
Installation
- Téléchargez le paquet ZIP sans le décompresser.
- Dans Joomla, ouvrez Système → Installation → Extensions.
- Déposez le fichier ZIP dans la zone d’installation, puis attendez le message de confirmation.
- Ouvrez le composant depuis le menu Composants. Si le paquet contient un plugin, vérifiez son état dans Système → Gestion → Plugins.
- Contrôlez les autorisations du composant avant de l’ouvrir aux équipes.
Configuration initiale
- Ouvrez le tableau de bord de l’extension.
- Accédez aux Options pour définir les réglages globaux.
- Attribuez les droits Créer, Modifier, Supprimer et Administrer aux groupes concernés.
- Créez un premier élément de test et vérifiez son affichage côté site lorsqu’une vue publique est fournie.
- Activez les tâches planifiées ou plugins du paquet uniquement lorsqu’ils sont nécessaires.
Fonctionnalités
Le champ « DAM Asset(s) »
Le chemin sans une ligne de code : tout ce qui gère com_fields — articles, catégories, contacts, utilisateurs, la plupart des CCK tiers — reçoit des actifs DAM en créant un champ personnalisé de type DAM Asset(s).
Relations polymorphes
Une seule table répond à « à quoi cet actif est-il rattaché ? » pour n'importe quelle cible, via le quadruplet (asset_id, context, item_id, role). Ajouter une intégration, c'est écrire un plugin de contexte, pas refondre le schéma.
Variantes générées à la demande
Les variantes nommées vivent dans la configuration, pas dans le code. Trois recettes d'origine — thumb, card, hero — se construisent au premier appel, de façon idempotente et verrouillée par couple (actif, variante).
Stockage enfichable
Chaque actif retient le backend qui le possède, donc un original et ses variantes peuvent vivre à des endroits différents. Quatre backends livrés : disque local, S3 et compatibles, BunnyCDN, Cloudinary.
Métadonnées à l'ingestion
Cinq extracteurs se déclenchent au téléversement : EXIF pour la prise de vue, IPTC pour la légende, le crédit et le copyright, la couleur dominante pour l'aperçu flou, ffprobe pour les vidéos, et un extracteur IA facultatif.
Bouton d'éditeur et shortcode
Le bouton DAM ouvre le sélecteur sous n'importe quel éditeur et insère un shortcode {dam id="…" variant="card"}, développé au rendu en balise responsive avec chargement différé.
API REST sous /v1/dam
Neuf routes exposées par le plugin Web Services : actifs en CRUD complet au format JSON:API, relations en lecture, création et suppression, liste des contextes déclarés. Authentification Joomla standard par jeton.
Reprise de l'existant en CLI
dam:import:media parcourt un dossier, dédoublonne par SHA-256 et rattache au besoin les images de com_content à leurs articles en comparant les empreintes. Sept options, dont un mode simulation.
Premiers usages
- Commencez avec un cas simple et des données non sensibles.
- Validez le résultat avec l’équipe qui utilisera l’extension.
- Documentez les choix propres au site : rôles, automatisations, modèles et intégrations.
- Déployez progressivement, puis surveillez les journaux et retours utilisateurs.
Captures d’écran


Dépannage
- L’extension n’apparaît pas après installation
- Vérifiez le message d’installation, l’état du composant et des plugins, puis videz le cache Joomla/WordPress.
- Une action est refusée
- Contrôlez les droits du groupe utilisateur, le jeton de session et les éventuelles restrictions de sécurité.
- Le rendu ne correspond pas au site
- Testez avec le cache désactivé, inspectez les substitutions de template et recherchez un conflit CSS ou JavaScript.
- Une intégration externe échoue
- Vérifiez l’URL, les identifiants, les quotas et les journaux sans copier de secret dans une demande d’assistance.
Mise à jour et désinstallation
Avant une mise à jour, sauvegardez les fichiers et la base de données, lisez les changements de version, puis testez sur une copie du site. Pour désinstaller, exportez d’abord les données utiles. La suppression d’un paquet peut retirer plusieurs composants, modules ou plugins associés.