Ci sono state discussioni su come far accettare i termini di servizio ai nuovi utenti come parte del processo di registrazione (link qui sotto). Ma cosa succede se hai molti utenti esistenti e hai bisogno che accettino esplicitamente i nuovi ToS?
Un’opzione sarebbe creare un nuovo argomento con i termini che si desidera accettino e utilizzare Discourse Policy per imporre l’accettazione.
Ho considerato di usare Discourse Policy. Infatti, @RGJ ha scritto molto tempo fa un plugin per noi che aggiunge membri a un gruppo in base all’accettazione di una policy. Richiediamo che gli utenti accettino la policy per poter accedere a un gruppo e a una categoria premium. Ma ora devo fare in modo che non possano vedere nulla finché non avranno accettato i nuovi ToS. Non vedo come usare Discourse Policy per fare ciò. Abbiamo migliaia di utenti.
Basta rendere tutte le categorie accessibili solo al gruppo accepted-the-tos?
Sì, immagino che funzionerebbe. Quindi, in ogni permesso di categoria, sostituisci “everyone” con il gruppo “accepted-the-tos”. (Ad eccezione della categoria ToS o di un modo per trovarla.)
A proposito, puoi nascondere le categorie ma offrire un’anteprima usando Category Previews.
Per chiudere il cerchio per i futuri visitatori, l’uso di Policy con i Termini di Servizio predefiniti di Discourse non funziona. Sarà quindi necessario creare un nuovo argomento come “I miei altri Termini di Servizio” e utilizzare Policy su quello.
Per richiedere l’accettazione dei termini di servizio, utilizza un campo utente personalizzato obbligatorio.
Quando definisci un campo utente, puoi selezionare “Requisito del campo” come “Per tutti gli utenti”. In questo modo, tutti gli utenti, sia nuovi che esistenti, saranno invitati a compilare il campo personalizzato.

