Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 520426dda2 | |||
| 4486306d7f |
112
README.md
112
README.md
@@ -1,2 +1,112 @@
|
|||||||
# wp-multi-ticket
|
# WP Multi Ticket Pro 🚀
|
||||||
|
|
||||||
|
Ein leistungsstarkes und einfaches Ticket- und Support-System für WordPress.
|
||||||
|
Es ermöglicht Gästen (ohne Login), Tickets zu erstellen, und bietet Administratoren ein umfassendes Dashboard zur Verwaltung, Analyse und Kommunikation.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ✨ Features
|
||||||
|
|
||||||
|
- **Gast-Tickets:** Besucher können Tickets erstellen, ohne sich registrieren zu müssen.
|
||||||
|
- **Frontend Integration:** Einfache Einbindung über Shortcodes auf beliebigen Seiten.
|
||||||
|
- **Intelligente Benachrichtigungen:**
|
||||||
|
- E-Mail-Benachrichtigungen an Admins und Kunden
|
||||||
|
- Discord & Telegram Integration für Echtzeit-Alerts
|
||||||
|
- **Analytics Dashboard:** Visuelle Auswertung (Charts) von Ticket-Statistiken, Arbeitslast und Statusverteilung direkt im Admin-Bereich
|
||||||
|
- **Ticket-Management:**
|
||||||
|
- Status- und Prioritätsverwaltung
|
||||||
|
- Zuweisung an spezifische Abteilungen oder Mitarbeiter
|
||||||
|
- Interne Notizen (für Mitarbeiter) vs. öffentliche Antworten
|
||||||
|
- **CSV-Export:** Exportieren Sie alle Tickets zur externen Analyse
|
||||||
|
- **Textbausteine:** Erstellen Sie Vorlagen für schnelle Antworten
|
||||||
|
- **Datei-Uploads:** Kunden und Admins können Dateien an Tickets anhängen
|
||||||
|
- **Auto-Updates:** Das Plugin prüft automatisch auf Updates (über Gitea)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📦 Installation
|
||||||
|
|
||||||
|
1. Laden Sie das Plugin-Verzeichnis (`wp-multi-ticket`) in den `/wp-content/plugins/` Ordner Ihrer WordPress-Installation hoch, oder installieren Sie es direkt über das WordPress Plugin-Menü ("ZIP hochladen").
|
||||||
|
2. Aktivieren Sie das Plugin im WordPress "Plugins" Menü.
|
||||||
|
3. Gehen Sie zu **Einstellungen > Permalinks** und klicken Sie einmal auf "Änderungen speichern", um sicherzustellen, dass die Links funktionieren.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🚀 Nutzung (Shortcodes)
|
||||||
|
|
||||||
|
### Ticket erstellen
|
||||||
|
Fügen Sie diesen Shortcode auf einer Seite ein (z.B. "Support"), wo Kunden neue Tickets eröffnen sollen:
|
||||||
|
|
||||||
|
```text
|
||||||
|
[wmt_form]
|
||||||
|
```
|
||||||
|
|
||||||
|
### Ticket-Status suchen
|
||||||
|
Fügen Sie diesen Shortcode ein, damit Kunden ihre offenen Tickets über ihre E-Mail-Adresse finden können:
|
||||||
|
|
||||||
|
```text
|
||||||
|
[wmt_lookup]
|
||||||
|
```
|
||||||
|
|
||||||
|
### Ticket-Ansicht
|
||||||
|
Dieser Shortcode ist meist nicht nötig manuell einzufügen, da Kunden automatisch per E-Mail-Link zu ihrer Ticket-Ansicht weitergeleitet werden:
|
||||||
|
|
||||||
|
```text
|
||||||
|
[wmt_view]
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚙️ Konfiguration
|
||||||
|
|
||||||
|
Nach der Installation finden Sie im WordPress-Menü den Punkt **"Tickets Pro"**.
|
||||||
|
|
||||||
|
### 1. Einstellungen
|
||||||
|
Hier passen Sie das System an Ihre Bedürfnisse an:
|
||||||
|
|
||||||
|
- **Kategorien & Abteilungen:** Definieren Sie Themenbereiche und weisen Sie sie Abteilungen zu.
|
||||||
|
- **Status & Prioritäten:** Legen Sie fest, welche Stati (z.B. *Offen*, *In Bearbeitung*) und Prioritäten verfügbar sind.
|
||||||
|
- **Textbausteine:** Erstellen Sie Vorlagen für häufige Antworten (öffentlich oder intern).
|
||||||
|
- **Datei-Uploads:** Legen Sie fest, welche Dateitypen (z.B. pdf, jpg) erlaubt sind.
|
||||||
|
|
||||||
|
### 2. Benachrichtigungen
|
||||||
|
Verbinden Sie Ihre Favoriten-Apps, um nie ein Ticket zu verpassen:
|
||||||
|
|
||||||
|
- **Discord Webhook URL:** Fügen Sie Ihre Discord-Webhook-URL für Push-Nachrichten in einen Channel ein.
|
||||||
|
- **Telegram Bot:** Token und Chat ID eingeben für Telegram-Benachrichtigungen.
|
||||||
|
- **Zusätzliche User:** Wählen Sie spezifische WordPress-Benutzer aus, die bei jedem neuen Ticket per E-Mail benachrichtigt werden sollen.
|
||||||
|
|
||||||
|
### 3. Analytics
|
||||||
|
Unter dem Menüpunkt **Analytics** sehen Sie Diagramme zu:
|
||||||
|
|
||||||
|
- Gesamtanzahl der Tickets
|
||||||
|
- Offene vs. geschlossene Tickets
|
||||||
|
- Tickets der letzten 30 Tage
|
||||||
|
- Workload pro Mitarbeiter (Agent Performance)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📄 Admin-Funktionen
|
||||||
|
|
||||||
|
Im Dashboard finden Sie eine Übersicht offener Tickets.
|
||||||
|
|
||||||
|
- **Antworten:** Nutzen Sie den WordPress Editor für formatierte Antworten.
|
||||||
|
- **Interne Notizen:** Schreiben Notizen, die nur für andere Admins sichtbar sind.
|
||||||
|
- **Drucken:** Erstellen Sie ein sauberes PDF/Print-Layout eines Tickets für Akten.
|
||||||
|
- **Export:** Nutzen Sie den *CSV Export* Button oben in der Liste, um Daten zu sichern.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔄 Updates
|
||||||
|
|
||||||
|
Das Plugin enthält einen eingebauten **Update-Checker**.
|
||||||
|
Sollte eine neue Version auf **Gitea** veröffentlicht werden, sehen Sie oben im Admin-Bereich eine Hinweismeldung mit einem Download-Link.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🆘 Support
|
||||||
|
|
||||||
|
Bei Fragen oder Problemen kontaktieren Sie bitte:
|
||||||
|
|
||||||
|
- **Telegram Support:** [t.me/M_Viper04](https://t.me/M_Viper04)
|
||||||
|
- **Web:** [m-viper.de](https://m-viper.de)
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
* Plugin Name: WP Multi Ticket Pro
|
* Plugin Name: WP Multi Ticket Pro
|
||||||
* Plugin URI: https://git.viper.ipv64.net/M_Viper/wp-multi-ticket
|
* Plugin URI: https://git.viper.ipv64.net/M_Viper/wp-multi-ticket
|
||||||
* Description: Leistungsstarkes Ticket- und Support-System für WordPress mit Gast-Tickets, Admin-Antworten, CSV-Export, Dashboard-Widgets und integriertem Update-Management über Gitea.
|
* Description: Leistungsstarkes Ticket- und Support-System für WordPress mit Gast-Tickets, Admin-Antworten, CSV-Export, Dashboard-Widgets und integriertem Update-Management über Gitea.
|
||||||
* Version: 1.1
|
* Version: 1.2
|
||||||
* Author: M_Viper
|
* Author: M_Viper
|
||||||
* Author URI: https://m-viper.de
|
* Author URI: https://m-viper.de
|
||||||
* Requires at least: 6.7.2
|
* Requires at least: 6.7.2
|
||||||
@@ -163,9 +163,18 @@ class WP_Multi_Ticket_Pro {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function enqueue_styles() {
|
public function enqueue_styles() {
|
||||||
|
// Hier wird die eingestellte Schriftfarbe geholt (Standard: #6b7280 = rgb(107, 114, 128))
|
||||||
|
$custom_font_color = get_option( 'wmt_font_color', '#6b7280' );
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<style>
|
<style>
|
||||||
.wmt-box { max-width: 800px; margin: 20px auto; background: #fff; padding: 25px; border-radius: 8px; box-shadow: 0 4px 15px rgba(0,0,0,0.08); font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; }
|
.wmt-box { max-width: 800px; margin: 20px auto; background: #fff; padding: 25px; border-radius: 8px; box-shadow: 0 4px 15px rgba(0,0,0,0.08); font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif; color: <?php echo esc_attr($custom_font_color); ?>; }
|
||||||
|
|
||||||
|
/* Überschriften explizit einfärben */
|
||||||
|
.wmt-box h1, .wmt-box h2, .wmt-box h3 {
|
||||||
|
color: <?php echo esc_attr($custom_font_color); ?>;
|
||||||
|
}
|
||||||
|
|
||||||
.wmt-btn { background: #0073aa; color: #fff; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; font-size: 14px; text-decoration: none; display: inline-block; line-height: 1.4; }
|
.wmt-btn { background: #0073aa; color: #fff; border: none; padding: 10px 20px; border-radius: 4px; cursor: pointer; font-size: 14px; text-decoration: none; display: inline-block; line-height: 1.4; }
|
||||||
.wmt-btn:hover { background: #005177; }
|
.wmt-btn:hover { background: #005177; }
|
||||||
.wmt-btn.danger { background: #dc3545; }
|
.wmt-btn.danger { background: #dc3545; }
|
||||||
@@ -303,6 +312,7 @@ class WP_Multi_Ticket_Pro {
|
|||||||
register_setting( 'wmt_settings_group', 'wmt_admin_email' );
|
register_setting( 'wmt_settings_group', 'wmt_admin_email' );
|
||||||
register_setting( 'wmt_settings_group', 'wmt_templates' );
|
register_setting( 'wmt_settings_group', 'wmt_templates' );
|
||||||
register_setting( 'wmt_settings_group', 'wmt_allowed_filetypes' );
|
register_setting( 'wmt_settings_group', 'wmt_allowed_filetypes' );
|
||||||
|
register_setting( 'wmt_settings_group', 'wmt_font_color' ); // NEU: Schriftfarbe registrieren
|
||||||
|
|
||||||
register_setting( 'wmt_notifications_group', 'wmt_discord_webhook' );
|
register_setting( 'wmt_notifications_group', 'wmt_discord_webhook' );
|
||||||
register_setting( 'wmt_notifications_group', 'wmt_telegram_token' );
|
register_setting( 'wmt_notifications_group', 'wmt_telegram_token' );
|
||||||
@@ -589,6 +599,14 @@ class WP_Multi_Ticket_Pro {
|
|||||||
<tr><th>Status</th><td><input type="text" name="wmt_statuses" value="<?php echo esc_attr( get_option('wmt_statuses', 'Offen, In Bearbeitung, Wartet auf Antwort, Geschlossen') ); ?>" class="regular-text"></td></tr>
|
<tr><th>Status</th><td><input type="text" name="wmt_statuses" value="<?php echo esc_attr( get_option('wmt_statuses', 'Offen, In Bearbeitung, Wartet auf Antwort, Geschlossen') ); ?>" class="regular-text"></td></tr>
|
||||||
<tr><th>Admin E-Mail</th><td><input type="email" name="wmt_admin_email" value="<?php echo esc_attr( get_option('wmt_admin_email', get_option('admin_email') ) ); ?>" class="regular-text"></td></tr>
|
<tr><th>Admin E-Mail</th><td><input type="email" name="wmt_admin_email" value="<?php echo esc_attr( get_option('wmt_admin_email', get_option('admin_email') ) ); ?>" class="regular-text"></td></tr>
|
||||||
<tr><th>Erlaubte Dateiendungen</th><td><input type="text" name="wmt_allowed_filetypes" value="<?php echo esc_attr( get_option('wmt_allowed_filetypes', 'pdf, doc, docx, jpg, jpeg, png, txt') ); ?>" class="regular-text"><p class="description">Kommagetrennt (z.B. pdf, doc, png).</p></td></tr>
|
<tr><th>Erlaubte Dateiendungen</th><td><input type="text" name="wmt_allowed_filetypes" value="<?php echo esc_attr( get_option('wmt_allowed_filetypes', 'pdf, doc, docx, jpg, jpeg, png, txt') ); ?>" class="regular-text"><p class="description">Kommagetrennt (z.B. pdf, doc, png).</p></td></tr>
|
||||||
|
<!-- NEU: Schriftfarbe Einstellung -->
|
||||||
|
<tr>
|
||||||
|
<th>Schriftfarbe</th>
|
||||||
|
<td>
|
||||||
|
<input type="color" name="wmt_font_color" value="<?php echo esc_attr( get_option('wmt_font_color', '#6b7280') ); ?>" class="regular-text">
|
||||||
|
<p class="description">Wählen Sie die Standard-Schriftfarbe für das Ticket-System (inkl. Überschriften).</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<th>Textbausteine</th>
|
<th>Textbausteine</th>
|
||||||
<td>
|
<td>
|
||||||
|
|||||||
Reference in New Issue
Block a user