Dall’installazione alla messa in produzione: permessi, tracciamento, cron, cache, backup e risoluzione problemi.
1) Cos’è un modulo in Moodle
In Moodle, con “modulo” si indicano componenti che aggiungono funzionalità didattiche a un corso:
attività (quiz, compito, lezione, forum, SCORM), risorse (pagina, file, URL),
e persino plugin terzi (es. mod_hvp o mod_custom). Ogni modulo è un “course module”
collegato a una sezione del corso e integra impostazioni, permessi, tracciamento e (spesso) valutazione.
Tipi di moduli comuni
- Attività: quiz, compito, forum, feedback, glossario, SCORM.
- Risorse: file, cartella, pagina HTML, URL esterno.
- Interattivi: H5P, lezione, quiz avanzati.
- Terze parti: plugin “mod_” scaricabili dal community directory.
controllo su permessi, completamento e report.
Nota: per ambienti produzione usa prima una staging identica,
così testi l’upgrade senza impatti sugli studenti.
2) Prerequisiti, ruoli e ambiente
Ruoli consigliati
- Amministratore: installa plugin, gestisce site admin, cron, cache, temi.
- Manager / Docente: aggiunge e configura i moduli a livello corso.
Compatibilità e versione
- Verifica la versione di Moodle (es. 4.1/4.2/4.3) e i requisiti PHP/DB del plugin.
- Attiva il maintenance mode per aggiornamenti importanti.
3) Tre metodi di installazione del modulo
3.1 Installazione via interfaccia (upload ZIP)
- Vai su Amministrazione del sito → Plugin → Installa plugin.
- Carica lo ZIP del plugin (o incolla l’URL). Moodle posizionerà i file nella cartella corretta.
- Conferma l’upgrade: apparirà la pagina di controllo componenti.
- Completa la procedura guidata (creazione tabelle, registrazione capacità, impostazioni).
con manutenzione attiva (changelog aggiornati).
3.2 Installazione manuale (FTP/SSH)
- Scarica lo ZIP e decomprimi.
- Carica la cartella nella directory del tipo corretto:
mod/per attività/risorse (es.mod/mio_modulo)blocks/per blocchi,local/per estensioni locali, ecc.
- Apri la dashboard: Moodle rileverà il nuovo componente e proporrà l’upgrade.
3.3 Installazione via CLI (server)
Per ambienti con molte istanze o CI/CD, usa lo script CLI:
# Da root Moodle
php admin/cli/maintenance.php --enable
# Copia/sincronizza la cartella del plugin (es. mod/mio_modulo)
php admin/cli/upgrade.php --non-interactive --allow-unstable
php admin/cli/maintenance.php --disable
Struttura minima di un plugin attività (esempio)
mod/mio_modulo/
├─ version.php
├─ lib.php
├─ settings.php
├─ db/
│ ├─ access.php (capabilities)
│ ├─ install.xml (tabelle)
│ └─ upgrade.php (migrazioni)
├─ lang/it/mio_modulo.php
├─ classes/...
└─ renderer.php
4) Configurare il modulo dentro un corso
- Entra nel corso → Attiva modifica.
- Nella sezione desiderata, clicca Aggiungi un’attività o una risorsa.
- Seleziona il modulo (es. “Lezione”, “H5P”, “SCORM”, o quello appena installato).
- Compila Nome, Descrizione, impostazioni specifiche (date, tentativi, valutazione).
- Configura Restrizioni di accesso, Gruppi e Completamento attività.
- Salva e visualizza per testare come docente e come studente (usa “Cambia ruolo in…”).
Impostazioni consigliate
- Restrizioni: per data, punteggio, gruppo, profilo utente.
- Tag e competenza: per mappare gli obiettivi formativi.
- Notifiche: se l’attività genera eventi (consegne, voti).
Area “Prodotti/Materiali associati” (opzionale)
Collega risorse esterne o materiali:
PDF Guida Docente
Template Quiz
Banca Domande
Manuale Valutazioni
5) Permessi e capabilities
Ogni modulo dichiara capabilities (in db/access.php): esempi
mod/mio_modulo:addinstance, mod/mio_modulo:view,
mod/mio_modulo:submit, mod/mio_modulo:grade.
Assegnale ai ruoli (Studente, Docente, Manager) in
Amministrazione del sito → Utenti → Permessi → Definisci ruoli.
// Estratto esemplificativo di db/access.php
$capabilities = [
'mod/mio_modulo:addinstance' => [
'riskbitmask' => RISK_SPAM | RISK_XSS,
'captype' => 'write',
'contextlevel' => CONTEXT_COURSE,
'archetypes' => ['editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW]
],
'mod/mio_modulo:view' => [
'captype' => 'read',
'contextlevel' => CONTEXT_MODULE,
'archetypes' => ['student' => CAP_ALLOW, 'teacher' => CAP_ALLOW]
]
];
6) Completamento e valutazione
- Tracciamento completamento: per visualizzazione, tentativi, punteggio minimo.
- Registro valutatore: integra i voti in Grader report se l’attività è valutabile.
- Competency frameworks: collega risultati ad abilità/competenze.
7) H5P e altri formati
Con H5P puoi caricare contenuti interattivi (video quiz, drag & drop, timeline). Installa il modulo H5P
e abilita i content types. Per SCORM, carica il pacchetto .zip, imposta sco, tracking e tentativi.
- H5P: supporta tentativi e report di riepilogo.
- SCORM: compatibile con tracciamento CMI (completamento, punteggio, tempo).
8) Backup, aggiornamenti e rollback
Backup consigliati
- DB (dump) e moodledata (file) prima di installare/aggiornare.
- Backup del plugin (cartella) e del tema se personalizzato.
Aggiornare un modulo
- Attiva maintenance mode, carica la nuova versione.
- Esegui l’upgrade web o
admin/cli/upgrade.php. - Verifica log e regressioni su staging.
Rollback
Se qualcosa va storto, ripristina cartelle del plugin e DB dal backup. In casi gravi, esegui restore completo della VM/container.
9) Prestazioni: cache, cron e log
- Cache: configura MUC (Memcached/Redis) e ottimizza le definizioni cache dei plugin.
- Cron: assicurati che
php admin/cli/cron.phpgiri ogni minuto via crontab. - Log/Analytics: usa report log per monitorare accessi e performance del modulo.
* * * * * /usr/bin/php /var/www/moodle/admin/cli/cron.php >/dev/null 2>&1
10) Debug e troubleshooting
- Attiva Debug sviluppatore e mostra messaggi in Amministrazione sito → Sviluppo.
- Controlla errori di dipendenza (versione minima core o di altri plugin).
- Esamina
version.php,db/install.xml,db/upgrade.phpdel plugin. - Verifica permessi file/cartelle e ownership (webserver user).
# Log applicativo
tail -f /var/log/apache2/error.log
# Permessi consigliati (esempio)
find /var/www/moodle -type f -exec chmod 0640 {} \;
find /var/www/moodle -type d -exec chmod 0750 {} \;
11) Sicurezza e best practice
- Usa plugin firmati e provenienti da autori affidabili.
- Non lasciare cartelle install o file temporanei sul server.
- Imposta HTTPS e cookie sicuri; controlla le policy di privacy.
- Rimuovi i plugin inutilizzati e tieni un registro versioni (changelog interno).
12) Checklist rapida
- Plugin compatibile con la tua versione Moodle.
- Staging aggiornata, backup completo pronto.
- Installazione con upload ZIP / FTP / CLI, upgrade completato.
- Permessi/capabilities assegnati ai ruoli corretti.
- Completamento e valutazione impostati.
- Cron attivo e cache configurata.
- Test con “Cambia ruolo in Studente”.
- Documentazione interna per docenti.
13) FAQ
- Posso installare plugin senza accesso come amministratore?
- No: l’installazione a livello di sito richiede privilegi di amministratore.
- Cosa succede se disinstallo un modulo?
- Le tabelle e i dati possono essere rimossi; esegui un backup preventivo e valuta l’impatto sui corsi.
- Come gestisco gli aggiornamenti massivi?
- Automatizza con CLI + configurazioni Ansible/CI; esegui prima su staging, poi su produzione in finestra di manutenzione.
- H5P è meglio di SCORM?
- Dipende dall’uso: H5P è moderno e modulare; SCORM è standardizzato e ampiamente supportato da molti authoring tool.
