Module Médiathèque de téléchargements multiples pour Zwiicms
📌 Présentation
Le module Médiathèque permet d'ajouter une zone de dépôt et de partage de fichiers dans un site ZwiiCMS.
Il offre à la fois une interface publique (consultation et téléchargement) et une interface administrateur (gestion et configuration).
🚀 Fonctionnalités
- ✅ Upload de fichiers (côté visiteur)
- ✅ Téléchargement direct (clic droit → enregistrer sous)
- ✅ Bouton Télécharger tout : génère une archive ZIP contenant tous les fichiers
- ✅ Tri de la liste des fichiers (date de mise à jour, titre A-Z, titre Z-A)
- ✅ Limitation configurable de la taille par fichier et de l’espace total
- ✅ Filtrage par extensions autorisées (côté admin)
- ✅ Suppression individuelle de fichiers (côté admin)
- ✅ Suppression globale de tous les fichiers (côté admin)
- ✅ Notification par email des fichiers uploadés
👥 Pour les visiteurs
📤 Uploader un ou plusieurs fichiers
- Plusiuers fichiers à la fois dans la limite de la taille max autorisée.
🔎 Voir les fichiers disponibles
- Rendez-vous sur la page de la médiathèque.
- Une liste de fichiers s’affiche (nom, taille, icône associée).
↕️ Trier la liste des fichiers
- Un menu déroulant Trier par permet de choisir l’ordre d’affichage :
- Date dernière mise à jour (du plus récent au plus ancien)
- Titre (A-Z)
- Titre (Z-A)
- Le choix est mémorisé (cookie 30 jours) et réappliqué automatiquement à la prochaine visite.
📥 Télécharger un fichier
- Cliquez sur le nom ou l’icône du fichier pour l’ouvrir.
- Ou clic droit → Enregistrer sous pour le sauvegarder directement sur votre ordinateur.
📦 Télécharger tout en une fois
- Cliquez sur le bouton Télécharger tout.
- Un fichier
mediatheque.zipsera généré automatiquement et téléchargé. - Il contiendra l’ensemble des fichiers disponibles dans la médiathèque.
⚙️ Configuration (admin)
Accessible depuis le panneau d’administration ZwiiCMS → Modules → Médiathèque.
Options disponibles :
- Taille max par fichier (en Mo)
- Taille totale max (en Mo)
- Extensions autorisées (séparées par des virgules)
- Notification par email des fichiers uploadés
- Suppression individuelle de fichiers
- Suppression globale de tous les fichiers
📂 Gestion des fichiers
- Stockage : Les fichiers sont stockés dans
site/data/mediatheque/chargements/. - Métadonnées : Un fichier
metadata.jsonstocke les informations sur chaque fichier (taille, date d'upload). - Nettoyage automatique : Les fichiers expirés sont supprimés automatiquement lors de l'accès à la page principale.
Personnalisation
Vous pouvez personnaliser l'apparence du module en modifiant les styles CSS directement dans les fichiers index.css et config.css.
🔒 Permissions
- Visiteurs : Accès à la médiathèque (téléchargement, éventuellement upload selon usage).
- Administrateurs : Accès complet (configuration, suppression, nettoyage).
⚠️ Limites du serveur (php.ini)
L'upload de fichiers volumineux dépend aussi des réglages PHP du serveur d'hébergement, indépendamment de la configuration du module :
upload_max_filesize(taille max d'un fichier uploadé)post_max_size(taille max totale d'une requête d'envoi)
Si l'un de ces réglages serveur est plus restrictif que la « Taille max d'un fichier » configurée dans le module, un fichier peut être rejeté par le serveur avant même d'atteindre le module. Depuis la version 2.12, ce cas est détecté :
- Un message d'erreur explicite s'affiche à l'upload (au lieu d'un faux « Upload terminé ! »).
- Une alerte apparaît dans la page de configuration du module si la taille max configurée dépasse la limite réelle du serveur.
👉 Si des fichiers semblent ne jamais arriver dans chargements/ malgré un message de succès, vérifiez en priorité upload_max_filesize et post_max_size dans le php.ini du serveur concerné (ces valeurs peuvent différer entre un site principal et un site de test, même avec la même version du module).
📝 Notes
- Par défaut, la taille max par fichier est 100 Mo.
- L’espace total autorisé est de 1 Go.
- Extensions autorisées par défaut :
zip, pdf, txt, jpg, jpeg, png, gif, mp4, mov. - Le bouton Télécharger tout compresse en ZIP les fichiers disponibles dans
chargements/. - Depuis la version 2.12, le message de confirmation d'upload reflète le résultat réel renvoyé par le serveur (et non plus seulement le code HTTP 200).
📌 Auteur
Développé pour ZwiiCMS par [Lemimi], adapté et enrichi en 2025.
Grand merci à @fred pour le développement de ZwiiCMS.
🪪 Licence
Licence sous GNU GPL v3.0 ou ultérieure.
Utilisation libre : commerciale, personnelle, éducative.
Modification : autorisée pour tous.
Distribution : possible sous les mêmes conditions.
Copyleft : les versions modifiées doivent conserver la même licence.
Auteur : attribution obligatoire.
Garantie : aucune garantie légale.
Cet item ne reçoit pas de commentaire.