(Faire) développer, évaluer, anticiper les compétences de communication en français langue-culture étrangère (FLE) — celles de demain.

Nous contacter

Gallika.net

Boîte Postale 21514
GR-55236 Panorama
Grèce

info@gallika.net

Nous suivre

Un peu de code, beaucoup de clarté : inventorier toutes les images de son Moodle devient un jeu d’enfant pour l'enseignant.

Inventorier toutes les images d’un Moodle 5

Un seul fichier PHP. Zéro plugin. L’inventaire complet des images de ton Moodle.

Il y a des journées où l’on veut juste faire le ménage. Ranger ses images, traquer les doublons, retrouver ce qui s’est glissé dans les éditeurs au fil des semestres. Et puis – tu connais la suite – on se dit : « Allons, faisons un plugin propre, officiel, durable ».
Résultat : page d’upgrade en continu, erreur 500, site bloqué. Un ChatGPT qui patine, une après-midi qui file... Je l’ai vécue récemment.

C’est ce jour-là que j’ai décidé de changer de cap : pas de plugin, pas d’installation. Un seul fichier PHP autonome, posé à côté de config.php. On ouvre la page, on voit toutes ses images, on exporte, on trie. Le soulagement tient parfois à une idée simple.

Le virage : du plugin au script autonome

Au départ, l’intention était belle. Mais en pratique :

 L’upgrade des plugins passe par /admin/index.php. Au moindre pépin (capabilities, navigation, version, typo française…), tout Moodle s’arrête. Je m’y suis heurté, frontalement.

 Débloquer en urgence (purges, FTP, DB) n’est ni agréable ni proportionné quand on veut juste inventorier des images.

 Maintenir un plugin au rythme des versions (ici, Moodle 5) impose une discipline qui n’apporte rien d’essentiel à un outil ponctuel d’admin.

Bref, pour de l’audit/nettoyage, le plugin serait un paquebot. J’avais juste besoin d’un stand up paddle.

L’idée en 30 secondes

 Déposer un script inventaire-images.php à côté de config.php (dans le dossier du code Moodle).

 Ouvrir : https://ton-moodle/inventaire-images.php (compte admin).

 Trois onglets clairs :

  1. Images stockées
    Toutes les images de files, vignettes cliquables, filtres (Composant, Zone, Nom/Source), ID de cours, CM ID (lien direct vers l’activité), module et instance.
  2. Images intégrées & externes
    Ce qui a été collé dans l’éditeur (Data URI) et les URL externes. Vignettes pour voir, liens pour vérifier.
  3. Doublons
    Groupes d’images identiques (contenthash), vignettes, exemples cliquables avec cours, activité, etc.

 À chaque onglet : Export CSV.

 Un pager compact en haut – Précédent | Page X/Y | Suivant – pour naviguer plus rapidement.

Tout ce que j’aurais aimé créer avant de perdre 4 heures.

Extrait du script PHP

Pas à pas (vraiment simple)

  1. Dépose le fichier dans le dossier Moodle (là où se trouve config.php).
  2. Ouvre l’URL (compte admin). Ajoute ?debug=1 si tu veux les messages PHP.
  3. Filtre, consulte, exporte.
  4. Décide du nettoyage (le script n’efface rien tout seul).
  5. Supprime le fichier quand tu as terminé.

En cinq gestes, tu as l’inventaire qui te manquait.

Ce que l’outil montre (et pourquoi c’est utile)

 Toutes les images stockées (avec aperçu) et leurs métadonnées clés : cours, activité (CM), module, instance, composant/zone, tailles, dates.

 Images « collées » (copy&paste) dans l’éditeur (Data URI) et images externes (avec vignette), pour repérer ce qui échappe au stockage Moodle.

 Doublons exacts : même binaire, multiples occurrences, l’endroit idéal pour gagner de l’espace.

 Exports CSV propres (par onglet), pour historiser, déléguer, traiter hors-ligne.

Capture d’écran

Garde-fous (les bons réflexes que j’applique)

Accès & permissions

 La page exige require_login() et moodle/site:config → admins uniquement.

 Le proxy d’images (vignettes/originaux) est protégé par sesskey (anti-CSRF).

Confidentialité / RGPD

Un admin peut voir toutes les images (y compris brouillons/privées). C’est le périmètre normal d’un admin, mais dis-le clairement à l’équipe.

Images externes

Les vignettes externes sont chargées depuis le site tiers (avec referrerpolicy="no-referrer"). Ton IP est tout de même visible côté distant. Si c’est sensible, n’affiche que des liens ou utilise un réseau isolé/VPN.

Performance

Sur grosses instances, garde un perpage raisonnable (100–200) et filtre (composant/zone/nom).

Inventaire-images.php (script complet zippé)

OpSec

 Dépose le fichier sur un serveur de confiance.
 Supprime-le après usage.
 Évite de diffuser l’URL, renomme le fichier si besoin.
 Garde tes CSV : c’est ton journal d’audit.

Il m’a fallu une erreur 500 pour décider de simplifier. Au fond, pas besoin d’un plugin pour nettoyer Moodle : un fichier PHP, un regard, une décision. Et tout respire de nouveau.



Formations & ateliers

Si ce sujet te parle, je propose des ateliers express (90 min) et des formations modulaires. On part de tes besoins, on repart avec des scripts prêts à l’emploi, une méthode et un plan d’action.

En résumé

Plutôt que d’installer un plugin risqué, on dépose un script autonome à côté de config.php. En 3 onglets, il inventorie toutes les images stockées, repère celles collées/externes et détecte les doublons, avec miniatures cliquables, ID de cours, CM ID/modname/instance et export CSV. L’accès est admin-only (moodle/site:config, sesskey) et on peut retirer le fichier une fois l’audit terminé. Résultat : un nettoyage rapide, sûr et réversible qui fait gagner place, clarté et temps.

— Résumé généré par l’IA.


Professionnel de l’enseignement supérieur avec plus de 35 ans d’expérience en linguistique, expert en méthodologie d’enseignement des langues et évaluation des compétences. …

Réagir

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.