| Zusammenfassung | Das Plugin Discourse Surveys ermöglicht es Ihnen, Umfragen direkt in Ihren Discourse-Forum-Beiträgen mit einfacher Markdown-Syntax zu erstellen. | |
| Repository-Link | https://github.com/discourse/discourse-surveys | |
| Installationsanleitung | Plugins in Discourse installieren |
Das Discourse Surveys Plugin ermöglicht es Ihnen, Umfragen direkt in Ihren Discourse-Forum-Beiträgen mit einfacher Markdown-Syntax zu erstellen. Das Plugin unterstützt derzeit eine Vielzahl von Fragetypen wie Optionsfelder, Kontrollkästchen, Dropdown-Menüs, Zahleneingaben, Textbereiche, Sternebewertungen und Daumen hoch/runter-Bewertungen.
Funktionen
- 7 verschiedene Feldtypen: Optionsfelder, Kontrollkästchen, Dropdown-Menüs, Textbereiche, Zahlenauswahl, Sternebewertungen und Daumen hoch/runter
- Erforderliche/Optionale Felder: Felder als erforderlich markieren, um die Vervollständigung sicherzustellen
- Emoji-Unterstützung: Emojis in Ihren Umfrageoptionen verwenden
- Markdown-Unterstützung: Rich-Text-Formatierung in Fragen und Optionen
- Benutzerauthentifizierung: Automatische Anmeldeaufforderungen für anonyme Benutzer
- Antwortverfolgung: Verhindert doppelte Einreichungen vom selben Benutzer
- Berechtigungsbewusst: Beachtet Themen- und Kategorieberechtigungen
- Mobil responsiv: Funktioniert nahtlos auf allen Geräten
Verwendung
Grundlegende Umfragestruktur
Alle Umfragen müssen in [survey] Tags eingeschlossen sein:
[survey name="my-survey" title="Kundenfeedback-Umfrage"]
<!-- Umfragefelder kommen hierher -->
[/survey]
Umfrageattribute
name: Eindeutige Kennung für die Umfrage (Standard ist „survey“)title: Optionaler Titel, der oben in der Umfrage angezeigt wirdpublic: Sichtbarkeit festlegen (zukünftige Funktion)status: Umfragestatus (zukünftige Funktion)
Feldtypen
1. Optionsfelder (Einzelne Auswahl)
[radio question="Was ist Ihre Lieblingsfarbe?"]
- Rot
- Blau
- Grün
- Gelb
[/radio]
2. Kontrollkästchen (Mehrfachauswahl)
[checkbox question="Welche Funktionen nutzen Sie? (Alle zutreffenden auswählen)"]
- E-Mail-Benachrichtigungen
- Mobile App
- Desktop-Benachrichtigungen
- API-Zugriff
[/checkbox]
3. Dropdown-Auswahl
[dropdown question="Zu welcher Altersgruppe gehören Sie?"]
- Unter 18
- 18-24
- 25-34
- 35-44
- 45-54
- 55+
[/dropdown]
4. Textbereich (Langform-Text)
[textarea question="Bitte geben Sie detailliertes Feedback an:" required="false"]
[/textarea]
5. Zahlenauswahl
[number question="Bewerten Sie diese Funktion von 1-10:" min="1" max="10"]
[/number]
6. Sternebewertung
[star question="Wie würden Sie Ihre Gesamterfahrung bewerten?"]
[/star]
7. Daumen hoch/runter
[thumbs question="Würden Sie dies weiterempfehlen?"]
[/thumbs]
Feldattribute
Alle Feldtypen unterstützen diese Attribute:
question: Der Fragetext (erforderlich)required: Ob das Feld ausgefüllt werden muss (true/false, Standard isttrue)min: Minimalwert für Zahlenfeldermax: Maximalwert für Zahlenfelder
Vollständiges Beispiel
Grundlegendes Umfrage-Markdown
Hier ist ein grundlegendes Beispiel für Umfrage-Markdown, das alle verfügbaren Felder enthält:
[survey name="awesome-survey-thumbs" title="Tolle Umfrage"]
[radio question="Wählen Sie eine Option:"]
- Katze
- Hund
[/radio]
[checkbox question="Wählen Sie mehrere Optionen:"]
- rot
- blau
- grün
[/checkbox]
[dropdown question="Geschlecht:"]
- Männlich
- Weiblich
[/dropdown]
[number question="Bewerten Sie diese Umfrage von 1 bis 10:"]
[/number]
[textarea question="Was ist Ihr Feedback zu xyz?" required="false"]
[/textarea]
[star question="Wie bewerten Sie die Gesamterfahrung?"]
[/star]
[thumbs question="Waren Sie mit unseren Dienstleistungen zufrieden?"]
[/thumbs]
[/survey]
Umfrage-Rendering
Unten sehen Sie ein Beispiel dafür, wie das obige Markdown in Discourse gerendert wird:
Fortgeschrittene Nutzung
Verwendung von Emojis in Optionen
[radio question="Wählen Sie Ihr Lieblingstier:"]
- 🐈 Katze
- 🐶 Hund
- 🐦 Vogel
- 🐠 Fisch
[/radio]
Markdown-Formatierung in Fragen
[radio question="Welche **Programmiersprache** bevorzugen Sie?"]
- JavaScript
- Python
- Ruby
- Go
[/radio]
[checkbox question="Wählen Sie Ihre *Lieblings*-Funktionen:"]
- Geschwindigkeit
- Sicherheit
- Benutzerfreundlichkeit
[/checkbox]
[textarea question="Bitte lesen Sie unsere [Richtlinien](https://example.com) und geben Sie Feedback:"]
[/textarea]
Unterstützte Formatierungen:
- Fett:
**Text** - Kursiv:
*Text* Durchgestrichen:~~Text~~Inline-Code:`Code`- Links:
[Text](URL)
Gemischte erforderliche und optionale Felder
[survey name="mixed-survey"]
[radio question="Was ist Ihre Rolle?" required="true"]
- Entwickler
- Designer
- Manager
- Sonstiges
[/radio]
[textarea question="Weitere Gedanken?" required="false"]
[/textarea]
[/survey]
Umfrageergebnisse
Derzeit bietet dieses Plugin keine Backend-Benutzeroberfläche zur direkten Anzeige der Umfrageergebnisse. Stattdessen können Sie sich auf Data Explorer-Abfragen verlassen, um Umfrageantworten abzurufen und zu analysieren. Hier ist ein Beispiel für eine Abfrage:
-- [params]
-- text :survey_name = survey
SELECT
s.id,
s.name,
s.post_id,
sf.question,
COALESCE(sr.value, sfo.html) AS value,
sr.user_id,
sr.created_at AS responded_at
FROM
surveys s
JOIN survey_fields sf ON sf.survey_id = s.id
JOIN survey_responses sr ON sr.survey_field_id = sf.id
LEFT JOIN survey_field_options sfo ON sfo.id = sr.survey_field_option_id
WHERE
s.name = :survey_name
ORDER BY
s.id DESC
Berechtigungen und Sicherheit
- Anmeldung erforderlich: Anonyme Benutzer müssen sich anmelden, bevor sie Antworten senden können
- Eine Antwort pro Benutzer: Jeder Benutzer kann nur eine Antwort pro Umfrage senden
- Themenberechtigungen: Benutzer benötigen Leseberechtigung für das Thema, um Umfragen anzuzeigen
- Beitragsberechtigungen: Benutzer benötigen Beitragsberechtigungen im Thema, um Antworten zu senden
- Archivierte Themen: Umfragen in archivierten Themen können keine neuen Antworten annehmen
- Gelöschte Beiträge: Umfragen in gelöschten Beiträgen sind nicht mehr zugänglich
Einschränkungen
- Nur eine Umfrage pro Beitrag zulässig
- Die Umfragestruktur kann nach Erhalt von Antworten nicht mehr geändert werden
- Alle Fragen der Umfragefelder müssen innerhalb einer einzelnen Umfrage eindeutig sein
- Fragen der Umfragefelder dürfen nicht leer sein
Technische Details
Datenbankschema
Das Plugin erstellt vier Haupttabellen in der Datenbank:
surveys: Hauptumfragedatensätzesurvey_fields: Einzelne Felder innerhalb von Umfragensurvey_field_options: Optionen für Auswahlfeldersurvey_responses: Benutzerantworten auf Umfragefelder
Styling
Das Plugin enthält responsives CSS, das sich an Ihr Theme anpasst. Benutzerdefinierte Stile können hinzugefügt werden, indem diese CSS-Klassen angesprochen werden:
.survey- Hauptumfrage-Container.survey-field- Einzelner Feld-Wrapper.field-[type]- Spezifische Container für Feldtypen.submit-response- Senden-Button
