Crea e gestisci sondaggi con WebBlocks Polls
Poni ai visitatori una domanda precisa e raccogli le risposte sul tuo sito. WebBlocks Polls aggiunge una schermata di gestione e un blocco nativo Poll per mostrare i sondaggi nelle pagine CMS. Puoi consentire una o più scelte, decidere quando rendere visibili i risultati aggregati ed esportare i totali delle opzioni in CSV. I risultati usano barre orizzontali con percentuali e conteggi leggibili. Non servono account esterni o codice da incorporare.
L'esempio è Northstar Studio. Prima i visitatori scelgono il prossimo laboratorio: Photography, Ceramics o Illustration. Poi un sondaggio separato a scelta multipla chiede quali argomenti interessano. Creerai una bozza, salverai le traduzioni, pubblicherai il sondaggio, lo inserirai in una pagina, invierai voti di prova reali, consulterai i risultati, chiuderai il sondaggio e controllerai un intervallo futuro.
Le immagini usano il pacchetto pubblicato Polls 0.1.6 su WebBlocks CMS 1.106.5, con WebBlocks UI 2.32.0 incluso, interfaccia inglese, tema chiaro e contenuti fittizi. L'esempio ha una scheda realmente inviata a scelta singola e una a scelta multipla; i conteggi sono dimostrativi, non risultati di ricerca.
Polls 0.1.6 usa la lingua richiesta dalla pagina CMS per testi, controlli e messaggi del sondaggio. La regola After closing mostra i risultati dopo una chiusura esplicita o quando un sondaggio Published raggiunge l'ora finale. La guida verifica anche la vista tradotta e un periodo futuro, oltre al normale percorso inglese.
Consulta la documentazione di Polls per requisiti e integrazione. Per l'installazione generale, inizia dal Sistema dei plugin.
Prima di iniziare
Prepara un sito di prova e un account Super admin per l'installazione. Il pacchetto pubblicato dichiara compatibilità con PHP ^8.3, CMS ^1.106.5 e Laravel ^13.0. La versione CMS può richiedere PHP più recente; questa guida usa PHP 8.4. Controlla il risultato per il tuo host nel catalogo ufficiale di Polls.
Servono anche una pagina modificabile e pubblicabile e il permesso di gestire sondaggi. Il sito principale della dimostrazione è Northstar Studio. Le pagine sono Choose our next workshop, su /workshop-vote, e What would you like to learn?, su /workshop-options.
I sondaggi appartengono ai siti. In 0.1.6, elenco e modulo normali non hanno un selettore del sito: senza contesto esplicito di Polls viene usato il sito principale accessibile. Cambiare sito in Pages non sostituisce la verifica della proprietà del sondaggio. Per integrazioni multisito usa il contesto esplicito della documentazione API di Polls. Il blocco di una pagina elenca solo sondaggi del sito della pagina.
Decidi come usare le risposte, chi leggerà i totali e quando fermare la votazione. Mantieni la domanda breve, le opzioni distinte e non raccogliere informazioni inadatte a un sondaggio pubblico. Polls è utile per feedback semplici; l'impronta del visitatore non dimostra un voto per ogni persona distinta verificata.
1. Installa e attiva Polls
- Apri System → Plugins come Super admin.
- Scegli Browse Plugin Catalog e cerca WebBlocks Polls.
- Esamina versione, compatibilità e note prima di usare Install from Catalog.
- Se l'amministratore fornisce l'archivio pubblicato attendibile, selezionalo in Plugin ZIP e scegli Upload Plugin ZIP.
- Controlla il pacchetto installato e attivalo.
L'esempio installa lo ZIP ufficiale pubblicato. Un plugin appena installato resta disattivato finché non lo attivi.
Apri i dettagli e scegli Enable Plugin. Installazione e attivazione nel CMS attuale applicano le modifiche al database del plugin. Prima di raccogliere voti, verifica Enabled, uno stato sano e le tabelle pronte. Risolvi prima eventuali avvisi di compatibilità o migrazione.
La barra laterale contiene ora il gruppo Polls con la voce Polls. Aprila. Un'installazione nuova mostra No polls have been created yet. e Add poll.
2. Assegna i permessi corretti
Polls distingue visualizzazione, gestione ed esportazione:
| Permesso | Cosa consente | Operatore tipico |
|---|---|---|
| View polls (webblocks-polls.view) | Aprire l'elenco dei sondaggi del sito. | Chi controlla disponibilità e totali delle schede. |
| Manage polls (webblocks-polls.manage) | Creare e modificare domande, opzioni, stato e programmazione. | Redattore responsabile del sondaggio. |
| Export poll results (webblocks-polls.export) | Scaricare i totali aggregati per opzione in CSV. | Chi usa i risultati fuori dal CMS. |
Concedi al redattore i permessi necessari di visualizzazione e gestione. Aggiungi consapevolmente l'esportazione. L'accesso al sito è un confine separato: i permessi del plugin non aprono i sondaggi di tutti i siti. Consulta Ruoli e permessi prima di modificare un ruolo condiviso.
Per inserire il blocco Poll servono anche i normali permessi di pagina e blocco. Creare il sondaggio e modificare la pagina che lo contiene sono attività distinte.
3. Crea il primo sondaggio come bozza
Scegli Add poll. La prima scheda controlla identità e disponibilità:
| Campo | Esempio Northstar | Uso |
|---|---|---|
| Name | Next Northstar workshop | Etichetta interna per gli operatori, condivisa fra le lingue. |
| Handle | next-workshop | Identificatore stabile minuscolo. Usa lettere, numeri e trattini singoli tra le parole. |
| Status | Draft | Mantieni il voto disabilitato durante la revisione della domanda. |
| Choice mode | Single choice | Ogni scheda contiene esattamente un'opzione. |
| Show results | After voting | Il visitatore vede i totali dopo il voto riuscito nella sessione corrente. |
| Starts at / Ends at | Vuoti nel primo esempio | Nessun limite aggiuntivo di date dopo la pubblicazione. |
L'handle non è l'indirizzo della pagina. Il blocco lo memorizza per trovare il sondaggio: evita di cambiarlo dopo l'inserimento. Rendi il nome chiaro ai colleghi e mantieni stabile l'handle.
Scorri a Poll copy e inserisci:
| Campo | Esempio |
|---|---|
| Locale | en |
| Question | Which workshop should we run next? |
| Description | Help Northstar Studio choose its next community workshop. |
| Choice 1 | Photography |
| Choice 2 | Ceramics |
| Choice 3 | Illustration |
| Choice 4 | Lascia vuoto. |
Domanda, descrizione facoltativa ed etichette sono i testi visibili ai visitatori. In 0.1.6, il modulo normale offre quattro righe: questo editor non ha un comando Add choice. Devi compilare almeno due etichette. Il contratto di integrazione accetta fino a venti righe, ma questo non rende disponibili venti righe nel modulo.
Scegli Save poll e verifica Poll saved.. Torna all'elenco e controlla handle, stato Draft e zero voti.
Nome e domanda ammettono fino a 255 caratteri; handle 100, descrizione facoltativa 2 000 e ciascuna etichetta 255. Domande brevi ed etichette concise sono più leggibili su dispositivi mobili.
4. Salva un'altra lingua conservando l'originale
Riapri Next Northstar workshop. Locale indica la copia linguistica scritta dal prossimo salvataggio; non è il selettore della lingua di amministrazione. Digitare un altro codice non carica i testi già presenti per quella lingua.
Per aggiungere l'esempio turco:
- Cambia Locale da
enatr. - Sostituisci la domanda con Bir sonraki atölyemiz hangisi olsun?.
- Traduci descrizione e righe corrispondenti: Fotoğrafçılık, Seramik, İllüstrasyon.
- Mantieni ogni opzione nella stessa riga e lascia vuota la quarta facoltativa.
- Conserva i valori condivisi previsti per nome, handle, modalità e disponibilità, poi scegli Save poll.
Salvare una traduzione invia anche i campi operativi condivisi del modulo. Controllali per evitare pubblicazioni o riprogrammazioni accidentali mentre aggiungi testo. L'indirizzo di modifica salvato mantiene ?locale=tr. Usa quella vista per modificare il turco; il normale collegamento nell'elenco apre la lingua predefinita del pannello.
Domanda ed etichette inglesi restano memorizzate. Il blocco pubblico usa la lingua richiesta dalla pagina per domanda, descrizione, opzioni, controlli e messaggi. Se manca un testo, usa prima la lingua di ripiego configurata e poi la prima copia disponibile. Traduci domanda e tutte le opzioni corrispondenti per ogni lingua da pubblicare.
Dopo aver pubblicato sondaggio e pagina nei prossimi passaggi, verifica il percorso tradotto oltre a quello inglese. La lingua pubblica del sondaggio è indipendente dalla lingua di amministrazione dell'operatore. Consulta Aggiungere una lingua al sito per abilitare lingue e tradurre il resto della pagina.
5. Scegli la regola dei risultati pubblici
Show results cambia ciò che mostra il blocco Poll. Non elimina i totali salvati e non sostituisce i permessi degli operatori.
| Impostazione | Comportamento effettivo in 0.1.6 | Impiego pratico |
|---|---|---|
| Always | Mostra i totali al posto del modulo anche se il sondaggio è aperto. | Visualizzare risultati; non usarla quando il blocco deve offrire il voto. |
| After voting | Mostra i totali se la sessione corrente ha votato; altrimenti offre il modulo solo a votazione aperta. | Impostazione predefinita verificata per un normale sondaggio pubblico. |
| After closing | Mostra totali di un sondaggio esplicitamente Closed o Published arrivato alla scadenza. Non vale per Draft o aperture future. | Nascondere risultati durante il voto e mostrarli alla fine. |
| Never | Non mostra totali pubblici. Dopo il voto della sessione il modulo non viene riproposto. | Raccogliere risposte senza pubblicare totali. |
L'avviso This poll is closed. può comparire anche se il visitatore ha già votato e la regola nasconde i risultati oppure l'inizio non è ancora arrivato. Questo messaggio generico non prova da solo che l'operatore abbia scelto Status → Closed. Esamina insieme stato, date e regola dei risultati.
Per il primo esercizio mantieni After voting. Offre il modulo prima dell'invio e un risultato visibile dopo.
6. Pubblica il sondaggio
Apri il sondaggio inglese salvato, cambia Status in Published e scegli Save poll. Lascia vuote entrambe le date per questa prima prova. Torna all'elenco e conferma Published accanto a next-workshop.
Pubblicare il sondaggio lo rende selezionabile nel blocco della pagina. Non crea la pagina, non aggiunge il blocco e non pubblica la pagina. Il voto è aperto solo quando è Published e le eventuali condizioni di inizio e fine lo consentono.
7. Aggiungi il blocco Poll nativo a una pagina
Apri la pagina in Pages, scegli Edit Blocks per lo slot Main e individua il contenitore dove inserire il sondaggio. La nostra pagina ha già titolo e introduzione. Se parti da zero, consulta Pagina, layout, slot e blocco e Creare una pagina.
- Usa Add child block sul contenitore oppure Add Block in una posizione idonea.
- Cerca Poll nel catalogo.
- Scegli Poll, descritto come Places a published poll on a page..
In Block Fields scegli Next Northstar workshop dal selettore Poll. Premi Save New Block.
Il selettore elenca i sondaggi Published del sito della pagina. Se manca quello atteso, controlla prima stato e sito proprietario. Un inizio futuro non rimuove il sondaggio pubblicato dal selettore, ma continua a determinare quando il modulo pubblico accetta voti.
Il blocco fa riferimento al sondaggio originale anziché copiarne domanda e opzioni nella pagina. Le modifiche successive possono influenzare tutte le pagine che usano lo stesso handle. Crea un nuovo sondaggio per una nuova campagna invece di riutilizzarne uno con voti esistenti.
8. Controlla l'anteprima e pubblica la pagina
Apri la Preview salvata della pagina. Controlla domanda, descrizione, pulsanti di scelta e regola dei risultati. Verifica che il blocco Poll e i blocchi superiori siano abilitati alla pubblicazione.
Considera un'anteprima con un sondaggio Published attivo come una vera interazione. Un invio di prova non è necessariamente simulato e può aggiungere una scheda reale. Qui esaminiamo l'anteprima e votiamo solo dalla pagina pubblicata localmente.
Quando è pronta, segui Pubblicare una pagina. In Overview usa Publish se il ruolo lo consente oppure il flusso di revisione del team. Apri quindi View Page e verifica il percorso pubblico reale.
Nella nostra pagina pubblicata scegli Photography. Si può selezionare un solo pulsante di scelta alla volta.
9. Invia un voto e leggi il risultato
Premi una volta Vote e verifica Thank you. Your vote was recorded.. Con After voting, i risultati aggregati sostituiscono il modulo nella sessione corrente.
L'unica scheda di prova dà a Photography 100% (1 votes) e zero alle altre opzioni. La sua barra occupa tutta la traccia; un'opzione a zero lascia la traccia vuota. Ogni barra usa la stessa scala 0–100%. Nome, percentuale e conteggio restano leggibili sopra. L'esempio illustra il flusso, ma non basta per conclusioni reali sulle preferenze dei visitatori.
Ricarica la pagina. Il risultato resta disponibile nella stessa sessione e il modulo non ricompare. La visibilità dopo il voto dipende dallo stato della sessione; un browser che torna dopo un cambio di sessione può vedere un'altra vista. Non promettere accesso personale permanente ai risultati.
Apri la traduzione turca per controllare il testo salvato. Chi non ha votato vede Bir sonraki atölyemiz hangisi olsun?, le opzioni tradotte e il pulsante Oy ver, come sotto. Una sessione che ha già votato vede risultati turchi con After voting. Entrambi i percorsi puntano allo stesso sondaggio: cambiare lingua non crea un altro voto.
Per un confronto visivo separato, l'immagine seguente usa un sondaggio sintetico con 20 schede: 12 scelte per Photography, 6 per Ceramics e 2 per Illustration. Le barre indicano 60%, 30% e 10% sulla stessa scala. Questo insieme è separato dall'esempio con una scheda: non è una ricerca reale sul pubblico e non modifica gli altri conteggi.
Le barre usano elementi meter HTML nativi con lo stile della primitiva condivisa WebBlocks UI. Non richiedono librerie di grafici o JavaScript per rappresentare i valori. Mantieni il testo visibile durante l'esame: colore e lunghezza sono indizi aggiuntivi.
10. Controlla le schede ed esporta CSV
Torna a Polls nel pannello. La colonna Votes conta le schede registrate. Il sondaggio a scelta singola ora ne mostra una.
Per i totali per opzione, apri il sondaggio salvato e scorri sotto le scelte. Seleziona Export CSV accanto a Save poll. Servono il permesso Export poll results e l'accesso al sito proprietario.
L'esportazione contiene dati aggregati: etichetta dell'opzione e numero di selezioni. Non è un elenco dei singoli votanti o dei loro indirizzi IP. L'esempio inglese a scelta singola produce:
Choice,Votes
Photography,1
Ceramics,0
Illustration,0
L'editor normale di 0.1.6 non ha una dashboard separata dei risultati per opzione. Usa il numero di schede dell'elenco, i totali CSV o l'endpoint aggregato autorizzato della documentazione API di Polls. Il valore pubblico Show results non elimina l'esportazione autorizzata.
11. Esegui un sondaggio separato a scelta multipla
Crea un altro sondaggio per conservare significato e voti del primo. Il secondo esempio usa:
| Campo | Valore |
|---|---|
| Name | Workshop learning interests |
| Handle | learning-interests |
| Status | Published |
| Choice mode | Multiple choice |
| Show results | After voting |
| Question | Which topics would you like to learn? |
| Description | Choose every workshop topic that interests you. |
| Choices | Photography; Ceramics; Illustration |
Inserisci un blocco Poll in What would you like to learn?, scegli il secondo sondaggio, verifica l'anteprima e pubblica. Il modulo pubblico ora usa caselle di controllo. Seleziona Photography e Illustration.
Premi Vote. Una scheda registra entrambe le scelte.
La percentuale di ogni opzione usa il numero di schede come denominatore. Qui una su una sceglie Photography e una su una Illustration; entrambe mostrano 100% con barre complete. Nella scelta multipla le percentuali non devono sommare a 100%: sono barre indipendenti, non segmenti di una barra unica del 100%. L'elenco conta ancora una scheda, mentre il CSV contiene due voti per le opzioni selezionate.
12. Comprendi la protezione contro voti ripetuti
Dopo il voto riuscito, la sessione non riceve più il modulo normale. Se Back del browser ripristina il modulo precedente e il visitatore lo invia di nuovo, il server controlla anche l'impronta. Il nostro reinvio restituisce You have already voted in this poll. e il totale resta una scheda.
Il plugin usa protezione CSRF, limiti di richieste per rotta e un'impronta HMAC pseudonima basata su sondaggio, sessione, IP della richiesta e user agent. Non memorizza l'IP grezzo come campo della scheda. È un deterrente pratico, non identità verificata: cambiare sessione o altri dati dell'impronta può permettere un altro voto. Quando è essenziale un voto verificato per persona, usa un processo adeguato basato sull'identità.
Se compare una risposta di limite delle richieste, interrompi i reinvii e attendi il periodo normale. Non disattivare il limite per aggirarla. Esercita voto e ripetizioni su un sondaggio usa e getta; non aggiungere prove ai totali che vuoi utilizzare.
13. Chiudi il sondaggio e decidi cosa resta visibile
A votazione conclusa, riapri il sondaggio, imposta Status → Closed e scegli Save poll. La chiusura conserva schede e traduzioni.
Nel primo esempio impostiamo anche Show results → Never per mostrare un sondaggio chiuso senza totali pubblici.
Ricarica la pagina pubblica. La domanda resta, il modulo non è disponibile e il blocco mostra This poll is closed..
Per rendere pubblici i totali conservati dopo la fine, scegli una regola adatta. Con After closing su questo sondaggio effettivamente Closed, il blocco mostra i conteggi salvati e nessun modulo.
Per riaprire lo stesso sondaggio imposta Status → Published, controlla date e regola e salva. I voti rimangono; riaprire non azzera i votanti precedenti né crea una nuova campagna. Abbiamo verificato la riapertura con la scheda originale conservata. Crea nuovo sondaggio e handle quando la domanda successiva richiede totali indipendenti.
14. Programma con attenzione la finestra di voto
Il sondaggio accetta voti solo se è Published, l'inizio è vuoto o raggiunto e la fine è vuota o ancora futura. La fine deve seguire l'inizio. Chiuderlo manualmente ferma il voto indipendentemente dalle date.
Usa date future adatte al tuo evento. L'esempio separato Scheduled workshop usa novembre 2030 per rimanere chiaramente futuro durante la dimostrazione. Il modulo non indica il fuso orario vicino alle date: conferma quello dell'applicazione con l'amministratore, senza presumere che il fuso di visualizzazione del sito converta automaticamente questi valori.
Con After closing, prima dell'apertura questo sondaggio futuro mostra un avviso di chiusura senza totali o modulo. All'inizio della finestra Published i visitatori possono votare mentre i risultati restano nascosti. Alla scadenza i risultati conservati diventano visibili. Anche lo stato esplicito Closed li consente; Draft non li consente, neppure con date passate.
Scegli After closing per attendere la fine, After voting per mostrare i risultati alla sessione che ha votato o Never per nascondere i totali pubblici. Controlla la pagina reale a ogni confine. Always mostra risultati al posto del modulo e non è una soluzione per raccogliere voti.
Il calcolo aperto/chiuso avviene durante le richieste; non serve un'attività separata per cambiare stato a ogni scadenza. Prova il comportamento reale di inizio e fine sul tuo host prima di affidarti alla programmazione. Controlla anche le cache tra visitatore e applicazione, per evitare che vecchie pagine rappresentino male lo stato attuale.
Risoluzione dei problemi
| Sintomo | Cosa controllare |
|---|---|
| Polls non compare nella barra laterale | Installazione, attivazione, compatibilità, permesso View polls e accesso al sito. |
| Migrazioni del plugin in attesa | Usa un host attuale compatibile e risolvi il risultato registrato dell'installazione database prima del voto. |
| Salvataggio non riuscito | Nome obbligatorio, handle valido e stabile, lingua, domanda, almeno due etichette e fine successiva all'inizio. |
| Sondaggio assente dal selettore | Stato Published e proprietà del sito della pagina. Il selettore normale non offre Draft o Closed. |
| La pagina non contiene il sondaggio | Selezione salvata del blocco, handle stabile, sito corretto, blocchi superiori abilitati e plugin attivo. |
| Sondaggio Published ma pagina non disponibile | La pubblicazione della pagina è indipendente dal sondaggio. Apri il percorso reale dopo averla pubblicata. |
| Risultati al posto del modulo | Show results → Always, After closing con Closed esplicito o dopo la fine di Published, oppure sessione già votante con After voting. |
| Risultati prima del previsto | Controlla Always, sessione già votante con After voting, Closed esplicito e fine salvata. After closing aspetta chiusura reale o fine del sondaggio Published. |
| Il blocco dice chiuso ma lo stato è Published | Date future/passate, voto della sessione e regola dei risultati. L'avviso è generico. |
| La pagina tradotta mostra testi di ripiego | Lingua richiesta, lingua salvata del sondaggio, etichette corrispondenti e Polls 0.1.6 o successivo. Traduci separatamente la pagina circostante. |
| Testi presenti ma barre orizzontali assenti | Usa Polls 0.1.6 con CMS 1.106.5 o successivo e verifica il caricamento del CSS WebBlocks UI incluso. Aggiorna le cache obsolete dopo l'aggiornamento. |
| Le percentuali sommate superano 100% | Nella scelta multipla sono calcolate per scheda per ogni opzione. Una scheda può scegliere più opzioni. |
| Export CSV non disponibile o vietato | Salva il sondaggio e controlla permesso di esportazione e accesso al sito. Il file contiene totali per opzione, non una rubrica di votanti. |
Concludi con un lancio controllato
Prima di invitare visitatori reali, verifica sito proprietario, handle stabile, testo, modalità, permessi, date e regola dei risultati. Controlla separatamente pagina e percorso pubblicato. Invia una scheda di prova in un sondaggio usa e getta, verifica conteggio e CSV, poi creane uno nuovo per i totali effettivi.
Per un lancio multilingue o programmato, verifica ogni lingua prevista e i confini temporali rilevanti. Oltre al modulo salvato controlla la vista reale e i conteggi registrati. Assegna a un operatore la chiusura, l'esportazione e la responsabilità di mantenere appropriati i risultati pubblici.
Prosegui con la documentazione di Polls per l'integrazione, Ruoli e permessi per l'accesso o Pubblicare una pagina per il flusso delle pagine.