Utiliser le plugin spécial 'local'
Le plugin local est un plugin spécial reconnu par le noyau de Moodle et situé à la racine de la distribution de Moodle. Il n'existe pas à priori dans les distributions standard du code.
Il a été mis en place pour permettre l'introduction de scripts généraux de customisation qui ne pouvaient s'inscrire dans une stratégie de plugins-modules.
Le répertoire local est pris en en charge par de nombreuses infrastructures de Moodle :
Gestion de la mise à jour
En ajoutant un fichier 'version.php' dans le répertoire local contenant une clef :
$local->version = XXXXXXXXXX;
on peut piloter les services d'installation/mise-à-jour de la même manière qu'un module d'activité de Moodle :
- le répertoire 'db' est considéré
- le fichier 'access.php' est considéré pour définir des capacités nouvelles (voir plus bas)
- le fichier 'upgrade.php' est considéré pour toute modification différentielle de la base de données associée au fonctionnement local. Il est souvent utilisé pour précharger des données dans Moodle lors d'une première installation.
- le fichier 'install.xml' est considéré, permettant d'ajouter des tables non standard à Moodle dès l'installation de la plate-forme.
Capacités locales
Il existe un plan de capacités parfaitement connu de Moodle :
moodle/local:capacityname
par lequel vous pouvez définir des capacités nouvelles qui seront ajoutées aux définitions de rôle.