Il modulo Statistiche utente ha solo una versione di sviluppo per D7 (suppongo che questa domanda riguardi D7). Tuttavia, la tua domanda sembra un caso d'uso perfetto per il modulo Obiettivi (divulgazione: ne sono il manutentore). Di seguito è possibile una configurazione per il tuo caso specifico, utilizzando gli obiettivi .
Configura un obiettivo
Passa al percorso relativo admin/config/goals/manage
e utilizza il collegamento "Aggiungi un obiettivo" per definire solo 1 obiettivo , con una descrizione (ad esempio):
Scrivi X numero di post (argomenti del forum di base o / e risposte) .
Configurare le attività
Per raggiungere l' obiettivo "crea un numero X di post (argomenti del forum di base o / e risposte)", definisci le attività da completare.
- Pubblica un certo numero di argomenti principali del forum.
- Pubblica un certo numero di risposte.
Un modo più avanzato di utilizzare (configurare) gli obiettivi è configurare le attività in questo modo:
- alcune attività potrebbero dover essere ripetute più volte.
- alcune attività potrebbero richiedere un certo lasso di tempo tra due attività simili (ad esempio: se un'attività viene eseguita più volte al giorno, conta solo la prima).
- ... (ce ne sono altri ...).
Tieni traccia dei progressi durante l'esecuzione delle attività
Per tenere traccia dei progressi compiuti da un singolo utente per completare alcune attività, è sufficiente scrivere le regole appropriate, utilizzando il modulo Regole , per registrare eventi rilevanti che si verificano nel tuo sito, che sono correlati al completamento delle varie attività.
Per gli obiettivi / compiti sopra descritti come esempio, avresti bisogno solo di 2 (estremamente basilari) regole, che verrebbero attivate in questo modo:
- Dopo aver pubblicato un argomento del forum principale.
- Dopo aver pubblicato una risposta.
Nota che queste 2 regole possono essere riutilizzate per misurare i progressi su più obiettivi (ad es. Se il tuo obiettivo ha un'attività come "dopo aver postato 1 risposta" e un secondo obiettivo ha un'attività come "dopo aver postato 10 risposte").
Inoltre, le sfide di cui sopra sono piuttosto semplici (di base) come esempi di sfide. Ma puoi farlo praticamente per qualsiasi entità per la quale puoi pensare a un modo per rintracciarli tramite il modulo Regole.
Utilizzare le regole per elaborare gli obiettivi completati
Dopo che tutte le attività specifiche di un obiettivo sono state completate da un utente, l'obiettivo viene automaticamente contrassegnato come completato. Ma c'è di più: puoi anche creare regole aggiuntive che verranno attivate (Regole Event) quando un obiettivo viene completato da un utente. Detto questo, la risposta alla tua domanda è estremamente semplice: esegui un'azione Regole per " ... cambiare l'utente in un ruolo diverso " ... che è esattamente di cosa tratta la tua domanda, no?
Più o meno lo stesso
Invece della descrizione (noiosa) dell'obiettivo sopra, avresti potuto usare una descrizione dell'obiettivo come (diciamo) " Utente partecipante ". Quale BTW potrebbe essere una bella descrizione del ruolo da assegnare anche.
Se poi definisci (diciamo) altri 3 (simili) obiettivi, con ognuno di essi un insieme appropriato di compiti da completare, potresti usare la stessa tecnica per obiettivi (e / o ruoli) etichettati in qualche modo (se suonano familiare a qualcosa su Drupal.SE, è puramente un incidente):
- Utente leale.
- Utente affermato.
- Utente fidato.
- Moderatore.
Ulteriori informazioni
Fai riferimento alla mia risposta a " Come implementare la gamification in un sito Drupal e assegnare incentivi? " Per ulteriori dettagli sul modulo Obiettivi .
Nota: l'utilizzo degli obiettivi richiede solo attività di amministrazione tipiche (configurazione), sebbene includa vari hook anche per lo sviluppo di moduli personalizzati (se lo si desidera).