Einmal den Plan pflegen. Um den Kalender kümmert sich Squadeno.

Ein WordPress-Plugin für Sportvereine. Es verwaltet Trainingszeiten, die Menschen des Vereins, Sportstätten und Veranstaltungen. Die einzelnen Termine tippt niemand ab, sie entstehen aus dem Plan. Ferien nehmen sich von selbst heraus.

Spielt Ihr Verein in einer Liga? Fußballverein mit Mannschaften, Kadern und Spielplan ansehen

Die Demo gibt es auch auf Englisch

Kostenlos und GPL-lizenziert · WordPress 6.7+ · PHP 8.1+ · Deutsch und Englisch enthalten

Der Alltag im Verein

Der Plan stimmt. Die Website hinkt zwei Saisons hinterher.

Die Trainingszeiten stehen in einem PDF, das jemand letztes Jahr exportiert hat. Die Sommerferien fehlen im Kalender. Eine Stunde fällt kurzfristig aus — und steht nur in einer WhatsApp-Gruppe. Wer weiß, wann die Halle frei ist, ist drei Wochen im Urlaub.

Nichts davon ist ein Gestaltungsproblem. Es ist die Folge davon, dass jeder Termin von Hand eingetragen werden will, an mehreren Stellen, von Leuten, die das neben Beruf und Familie erledigen.

So funktioniert es

Drei Dinge tragen Sie ein. Alles andere ergibt sich.

Squadeno hält je Sportart eine einzige verlässliche Quelle. Alles Weitere leitet es daraus ab: die öffentliche Seite, den Vereinskalender, die Liste der nächsten Termine, die strukturierten Daten für Suchmaschinen.

1

Die Trainingszeiten

Dienstag, 18 Uhr, Turnhalle, September bis Juni. Das tragen Sie einmal je Gruppe ein. Daraus entsteht jeder einzelne Termin, für diese Saison und die nächste. Nicht wöchentlich? Alle zwei Wochen oder der letzte Samstag im Monat geht genauso, und ein Kurs über zehn Termine hört von selbst auf.

2

Ferien und Schließzeiten

Ferien und Hallensperrungen tragen Sie zentral ein. Betroffene Stunden verschwinden automatisch aus allen Kalendern. Ferienbetreuung und Veranstaltungen bleiben sichtbar.

3

Die Ausnahmen

Eine Stunde fällt aus, wird verlegt, oder es kommt eine dazu. Das erledigen Sie am betroffenen Termin selbst. Die Änderung erscheint danach überall dort, wo die Sportart auftaucht, ohne dass Sie eine Seite anfassen.

Und wenn Sie spielen: Mannschaften sind Untergruppen einer Sportart — mit eigenem Kader, eigener Liga und Begegnungen am Termin, die im Kalender-Abo landen. Einzuschalten in den Einstellungen; ohne den Schalter sehen Sie nichts davon.

Der Anfang

Die ersten Sportarten legt der Assistent mit Ihnen an.

Nach der Installation steht niemand vor einer leeren Verwaltung. Der Einrichtungsassistent fragt Schritt für Schritt ab, was der Verein hat, und legt es dabei gleich an: erst die Sportstätten, dann die Personen, dann die Sportarten.

  • Jeder Schritt liefert dem nächsten, was er braucht. Wenn Sie die Sportart eintragen, stehen Ort und Trainer schon zur Auswahl.
  • Nichts bleibt in der Schwebe. Wer zwischendurch aufhört, behält alles bisher Angelegte.
  • Was schon gepflegt ist, wird aus Ihren Daten gelesen; abgehakt wird nichts, was niemand getan hat.
  • Bis die Einrichtung steht, tragen Dashboard und Pluginliste den nächsten Schritt mit. Danach ist der Hinweis weg.
Der Schritt, in dem die Sportarten entstehen: Trainer und Trainingszeit stehen schon zur Auswahl, Mannschaften übernehmen sie.

Was Besucher und Redaktion sehen

Jede Sportart bekommt eine Seite, die man findet.

Saubere URLs, interne Verlinkung zwischen Sportart, Person und Sportstätte, dazu strukturierte Daten nach schema.org. So landet die Suche nach „Kinderturnen“ im Ort tatsächlich irgendwo. Auch die Menschen des Vereins liegen an einer Stelle: Trainer und Vorstand sind je ein Datensatz, und das Amt sagt, was jemand tut.

Zum Vergrößern auf einen Screenshot klicken.

Auf der Website

Alle Sportarten auf einen Blick, filterbar nach Altersgruppe und Abteilung.
Eine Sportart: Trainingszeiten, Ansprechpartner und die erzeugten nächsten Termine.
Der Vereinskalender: Training, Veranstaltungen und Schließzeiten an einer Stelle, als Monat, als Woche oder als Trainingsplan. Ferien blocken die betroffenen Stunden, eine abgesagte bleibt durchgestrichen sichtbar.
Die Trainer als eigene Seite, gefiltert auf das Amt „Trainer".
Der Vorstand als eigene Seite, gefiltert auf die Vorstandsämter und nach Gremium gruppiert. Es sind dieselben Datensätze wie bei den Trainern, niemand wird doppelt gepflegt.
Die Veranstaltungen als eigene Seite, mit dem Datum über jeder und Filtern für Typ und Altersgruppe.
Eine Mannschaft mit Kader: Positionen in gepflegter Reihenfolge, Trikotnummern, die Liga mit Link zur Verbandstabelle und die Begegnungen zwischen den Trainingsterminen. Sichtbar nur, wenn der Spielbetrieb eingeschaltet ist.

Im Backend

Die Übersicht im Backend zeigt neuen Redakteuren, wo was gepflegt wird.
Eine Sportart pflegen: die Trainingszeit der Woche, die daraus errechneten Termine mit Absagen und Verschieben direkt daneben, Felder für Zusatz- und Ersatztermin, und die Trainer mit ihrer Berechtigungsstufe.
Alle Sportarten im Backend, mit ihren Untergruppen, Altersgruppen und Sparten.
Rechte in zwei Schichten: sechs Aufgabenpakete je Person angekreuzt, dazu für Trainer eine Stufe je Sportart.

Plugin und Theme

Ein passendes Theme gibt es auch.

Das Plugin fügt sich in jedes Theme ein. Wenn Ihr Verein bei einer leeren Website anfängt und noch kein eigenes Design hat, gibt es ein zweites Stück: Squadeno, ein WordPress-Theme, das neben dem Plugin entstanden ist. Sportarten, Trainingszeiten, Trainer und Sportstätten erscheinen darin ohne Einrichtung.

  • Hero-Slider, Rubrikseiten und Karten, alles über den Customizer befüllt.
  • Keine externen Schriften, kein CDN. Über Ihre Besucher verlässt nichts den eigenen Server.
  • Ebenfalls kostenlos und GPL-lizenziert. Es ist für wordpress.org freigegeben und lässt sich bis zur Aufnahme ins Verzeichnis auf seiner eigenen Seite laden.
Das Theme ansehen
Eine Sportart im Squadeno-Theme: Kopfbild, Trainingszeiten, Ansprechpartner und nächste Termine.

Ehrlich gesagt

Wann sich das lohnt. Und wann nicht.

Passt gut, wenn …

  • Sie mehrere Sportarten oder Gruppen mit eigenen Zeiten haben
  • Trainer ihre Termine selbst aktuell halten sollen, ohne vollen Redaktionszugriff
  • der Vorstand auf die Website gehört und dieselbe Person trainieren und ein Amt haben kann
  • sich Ihre Saison wöchentlich wiederholt und von Ferien unterbrochen wird
  • jedes Angebot auf einer eigenen Seite auffindbar sein soll
  • Sie Sportstätten mit Adresse, Karte und automatischer „Was findet hier statt“-Liste wollen
  • Sportarten, Personen, Veranstaltungen und Sportstätten je eine eigene Seite bekommen sollen, gebaut aus einem Block statt aus einer schlichten Liste
  • Ihre Mannschaften einen Kader, eine Liga und einen Spielplan brauchen — Spielbetrieb lässt sich einschalten, bleibt sonst aber unsichtbar

Eher nicht, wenn …

  • Sie Online-Buchung und Bezahlung brauchen; Squadeno zeigt Angebote an, verkauft sie aber nicht
  • Sie Mitgliederverwaltung, Beiträge oder Anwesenheiten führen wollen
  • Ihr Verein eine Mannschaft und einen festen Trainingstermin hat, dafür genügt eine Textseite
  • Sie eine gerechnete Tabelle oder gepflegte Spielergebnisse suchen; Mannschaften, Kader und Spielplan gibt es, die Tabelle bleibt beim Verband
Standardmäßig aus

Ohne Ihr Zutun verlässt kein Datum Ihre Website.

Karten sind Opt-in. Solange der Kartenanbieter auf „keine“ steht, und das ist die Voreinstellung, kontaktiert das Plugin keinen fremden Server. Das gilt im Frontend wie im Adminbereich. Die Kartenbibliothek Leaflet liegt mit im Plugin und kommt von Ihrem eigenen Server, nie von einem CDN. Getrackt wird nichts, gemessen auch nicht. Der Spamschutz arbeitet mit Honeypot und Zeitfalle und braucht dafür keine fremden Dienste; Cloudflare Turnstile lässt sich zuschalten, muss aber nicht.

Fragen

Die, die zuerst kommen.

Können Trainer ihre Inhalte selbst pflegen?

Ja, und zwar in drei Stufen je Zuordnung: volle Bearbeitung ihrer Sportart, nur lesend (sie erscheinen als Ansprechpartner, haben aber keinen Backend-Zugriff) oder nur Termine. Für den letzten Fall gibt es eine schlanke Box, mit der sich eine Stunde absagen, verschieben oder ergänzen lässt und sonst nichts. Voreingestellt ist die strengste Stufe.

Deckt es auch den Vorstand ab, nicht nur die Trainer?

Ja. Es gibt einen Datensatz je Mensch, unabhängig davon, was er im Verein tut, und ein Amt sagt, was das ist: Trainer, Vorsitz, Kasse, Mitgliederverwaltung. Ämter können in Gremien liegen, so kommen geschäftsführender und erweiterter Vorstand in der richtigen Reihenfolge heraus, die eine alphabetische Sortierung nicht hinbekommt. Eine Vorstandsseite ist dann eine normale Seite mit einem Block darin, gefiltert auf die Vorstandsämter. Wer trainiert und im Vorstand sitzt, wird einmal erfasst und erscheint an beiden Stellen.

Bei uns ist nicht alles wöchentlich. Passt das?

Ja. Eine Trainingszeit wiederholt sich standardmäßig jede Woche, sie kann aber ebenso alle zwei, drei oder vier Wochen laufen oder auf einen festen Wochentag im Monat fallen — den zweiten Samstag, den letzten Freitag. Und sie kann enden: zu einem Datum oder nach einer festen Zahl von Terminen. Ein Anfängerkurs über zehn Termine hört nach dem zehnten auf, und im Kalender bleibt es still. Eine Schließzeit verbraucht keinen dieser zehn: Ist die Halle über die Ferien zu, läuft der Kurs eine Woche länger. Ist das Ende vorbei, fällt die Trainingszeit von der Seite der Sportart — der Eintrag bleibt, damit Sie den Kurs in der nächsten Saison wieder aufnehmen können.

Unser Verein spielt in einer Liga. Deckt das Plugin das ab?

Ja, sobald Sie den Spielbetrieb in den Einstellungen einschalten — vorher sehen Sie nichts davon. Eine Mannschaft ist dann eine Untergruppe ihrer Sportart, mit eigener Seite, eigenen Trainingszeiten, eigenem Kader und einem Liga-Feld, das auf die Tabelle des Verbands verlinkt. Am Termin tragen Sie Gegner und Heim oder Auswärts ein; beides landet im Kalender-Abo. Ein Verein mit nur einer Sportart legt seine Altersklassen direkt als Sportarten an — F-Jugend, Damen, Herren. Was das Plugin ausdrücklich nicht tut: eine eigene Tabelle rechnen oder Ergebnisse führen. Die Tabelle des Verbands ist die gültige, und ein Spielbericht ist ein gewöhnlicher Beitrag.

Wer darf was pflegen?

Die Rechte liegen in zwei Schichten. Vereinsweit gibt es fünf Aufgabenpakete, die am Personen-Datensatz angekreuzt werden: eigenes Profil, Trainer, Vereinsverwaltung, Termine und Öffentlichkeitsarbeit. Darüber hinaus hängt ein Trainer an den ihm zugewiesenen Sportarten, mit einer Stufe je Zuordnung. Löschen darf nur die Vereinsverwaltung, und niemand kann ein Paket weitergeben, das er nicht selbst hat. Alles andere in WordPress bleibt unberührt: Kein Paket öffnet Plugins, Themes, Benutzer oder die Einstellungen.

Wie aufwendig ist die Einrichtung?

Der Einrichtungsassistent führt hindurch: Umfang, Übersichtsseiten, Sportstätten, Personen, Altersgruppen, Sportarten, Abschluss; wer in einer Liga spielt, bekommt die Positionen dazu. Er legt an, was Sie eintippen, und stellt im nächsten Schritt zur Auswahl, was im vorigen entstanden ist. Am Ende steht keine leere Struktur, sondern eine Sportart mit Trainer, Sportstätte und Trainingszeit, aus der der Kalender schon Termine erzeugt. Wer lieber selbst anfängt, überspringt ihn: Die Liste der offenen Punkte bleibt und zeigt, was noch fehlt.

Kann ich es ausprobieren, bevor ich es installiere?

Ja. Die Demo startet ein vollständiges WordPress im Browser, mit dem Plugin, dem passenden Theme und einem eingerichteten Beispielverein. Auf Ihrem Rechner landet nichts, gespeichert wird nichts; mit dem Schließen des Tabs ist alles vorbei. Im Kalender können Sie zwischen Monat, Woche und Trainingsplan umschalten, eine Sportart öffnen oder im Adminbereich eine Trainingszeit ändern und zusehen, wie jeder Kalender nachzieht. Sie sind als Administrator angemeldet, der Customizer steht Ihnen also auch offen. Die Oberfläche erscheint dabei auf Deutsch.

Funktioniert das mit meinem Theme?

Ja. Die Ausgabe läuft über Shortcodes und Blöcke und fügt sich in jedes Theme ein, ob Block-Theme oder klassisches. Für jede Liste gibt es einen Block: Sportarten, Kalender, nächste Termine, Personen, Veranstaltungen und Sportstätten. Das Styling nutzt eigene, präfixierte Klassen und eine Markenfarbe, die Sie setzen können. Wenn Sie noch kein Theme haben: das Squadeno-Theme ist für dieses Plugin gebaut und zeigt Ihre Sportarten ohne Einrichtung.

Können die URLs auf Deutsch sein?

Ja. Die URL-Basen sind englisch voreingestellt (sports, people, …) und lassen sich je Website in den Einstellungen ändern, etwa auf sportarten und personen. Die Oberfläche selbst kommt auf Englisch mit vollständiger deutscher Übersetzung; weitere Sprachen lassen sich über die mitgelieferte Vorlage ergänzen.

Was ist mit Caching-Plugins?

Die vertragen sich damit. Berechnete Termine werden intern zwischengespeichert und bei jeder Änderung verworfen; ein Seiten- oder Objekt-Cache obendrauf macht es nur schneller.

Kann ich mir Funktionen wünschen?

Ja, und die meisten Verbesserungen kamen bisher aus dem Vereinsalltag und nicht aus einem Fahrplan. Das Plugin wächst weiter. Wenn in Ihrem Verein etwas fehlt oder anders laufen müsste, schreiben Sie mir. Ich höre mir das an, und meistens findet sich eine Lösung.

Was kostet es?

Nichts. Es ist freie Software unter der GPL, veröffentlicht im WordPress-Plugin-Verzeichnis. Es gibt keine Bezahlversion und keine eingebauten Verkaufshinweise. Wer die Website nicht selbst aufsetzen möchte, kann mich auf Einrichtung, Gestaltung und Pflege ansprechen. Das Plugin selbst bleibt in jedem Fall kostenlos.