Familien-Bestellungen
Das Familien-Bestellungen-Modul vereinfacht wiederkehrende Sammelbestellungen innerhalb einer Gruppe â ob Familie, Freundeskreis oder Community. Jedes Mitglied trĂ€gt seine Menge pro Position ein, ein Koordinator behĂ€lt die GesamtĂŒbersicht.
Allgemein
Eine Bestellung erstellen
Ein Koordinator legt eine Sammelbestellung mit Titel, Beschreibung, optionalem Shop-Link, einer Liste von Positionen und einer Einsendefrist an. AusgewĂ€hlte Mitglieder werden per E-Mail ĂŒber die neue Bestellung informiert.
Mengen eintragen
Solange eine Bestellung offen ist, tragen Mitglieder ihre gewĂŒnschte Menge pro Position direkt im Frontend ein â mehrfach anpassbar, bis die Frist erreicht ist.
Fristen & automatische E-Mails
Ein stĂŒndlicher Hintergrundjob prĂŒft alle offenen Bestellungen: LĂ€uft die Frist in weniger als sieben Tagen ab, wird einmalig eine Erinnerungsmail verschickt (an die ursprĂŒnglich benachrichtigten Mitglieder UND alle, die bereits eine Menge eingetragen haben). Ist die Frist erreicht, schlieĂt das Modul die Bestellung automatisch und verschickt eine Abschluss-Zusammenfassung.
Koordinator-Ăbersicht & Export
Der Koordinator sieht eine GesamtĂŒbersicht aller Positionen mit Mengen pro Nutzer und kann die Bestellung als CSV exportieren.
Shortcodes
Shortcode Beschreibung weinhold_family_orders Rendert die BestellĂŒbersicht: offene und abgeschlossene Bestellungen, Erstell-Formular, Detail-/Mengen-Ansicht
Dateien
modules/family_orders.php â einzige Datei des Moduls: Datenbank, Cron-Job, Frontend-Formularverarbeitung, drei E-Mail-Versandfunktionen, CSV-Export, Shortcode, Admin-Seite, Cleanup.
FĂŒr Entwickler
Datenbank
Tabelle Spalten (Auswahl) weinhold_family_orders title, description, shop_url, status (open/closed), deadline_gmt, notify_user_ids, launch_mail_sent, reminder_mail_sent, closed_mail_sent weinhold_family_order_items order_id, name, item_url, sort_order weinhold_family_order_entries order_id, item_id, user_id, quantity (unique je Kombination aus allen dreien) Cron-Job
weinhold_family_orders_cron_tick lĂ€uft stĂŒndlich (registriert 15 Minuten nach der Modul-Aktivierung, WP-Cron-Standardintervall hourly). weinhold_family_orders_run_cron_tick() schlieĂt Bestellungen mit abgelaufener Frist automatisch und löst dabei die Abschluss-Mail aus, verschickt auĂerdem fĂŒr Bestellungen mit Frist innerhalb der nĂ€chsten sieben Tage einmalig die Erinnerungsmail (Flags launch_mail_sent/reminder_mail_sent/closed_mail_sent verhindern Mehrfachversand).
Drei E-Mail-Funktionen
Funktion Wann EmpfÀnger weinhold_family_orders_send_launch_mail($order_id) Bei Erstellung Konfigurierte notify_user_ids weinhold_family_orders_send_reminder_mail($order) Frist in unter 7 Tagen notify_user_ids PLUS alle, die bereits eine Menge eingetragen haben weinhold_family_orders_send_closed_summary_mail($order_id) Frist erreicht notify_user_ids
Alle drei E-Mail-Funktionen nutzen direktes wp_mail() statt des zentralen Template-Systems des E-Mail-Versand-Moduls â anders als z. B. GerĂ€tesicherheit oder Security Manager, die ihre Benachrichtigungen ĂŒber weinhold_send_module_mail() mit anpassbaren Vorlagen versenden. Eigenes TabellenprĂ€fix wpdb prefix statt des sonst im Framework ĂŒblichen wpdb base_prefix â wie beim Bastard-des-Monats-Modul ist dieses Modul bewusst nicht Multisite-ĂŒbergreifend gedacht.Besonderheiten
Die Erinnerungsmail geht NICHT nur an Mitglieder ohne Eintrag, sondern zusĂ€tzlich an alle, die bereits eine Menge eingetragen haben â vermutlich damit auch Teilnehmer, die schon mitgemacht haben, ihre Mengen vor Fristende noch anpassen können.
Versionshistorie
Version Datum Ănderung 1.0.0 22.09.2026 EinfĂŒhrung der Versionierung.