Dieser Leitfaden erklärt die verfügbaren Hooks in den WPSubscription- und WPSubscription Pro-Plugins. Diese Hooks ermöglichen es Entwicklern, benutzerdefinierte Logik zu verschiedenen Zeitpunkten im Lebenszyklus des Abonnements auszulösen oder das abonnementbezogene Verhalten zu ändern.


Was sind Hooks?

Hooks ermöglichen es Entwicklern:

  • Aktionen auszulösen, wenn ein Abonnement erstellt, storniert, abgelaufen usw. ist.

  • Das Verhalten von WooCommerce während der Verlängerungen oder der Warenkorbverwaltung anzupassen

  • Mit externen Tools zu integrieren (über REST API oder Automatisierungstools)

Hooks sind verfügbar als:

  • do_action() (Aktionen): Eine Funktion zu einem bestimmten Zeitpunkt auslösen

  • add_filter() (Filter): Daten zu ändern, bevor sie zurückgegeben oder gespeichert werden


Hooks der kostenlosen Version

Diese sind im kostenlosen WPSubscription-Plugin verfügbar.

Hook-Name

Ausgelöst, wenn

Parameter

subscrpt_subscription_activated

Abonnement wird aktiviert

$subscription_id

subscrpt_subscription_expired

Abonnement läuft ab

$subscription_id

subscrpt_subscription_cancelled

Abonnement wird storniert

$subscription_id

subscrpt_subscription_pending_cancellation

Abonnement zur Stornierung markiert

$subscription_id

subscrpt_subscription_pending

Abonnementstatus ist ausstehend

$subscription_id

subscrpt_subscription_resumed

Wiederhergestellt nach Stornierung

$subscription_id, $old_status

subscrpt_subscription_status_changed

Status ändert sich

$subscription_id, $old_status, $new_status

subscrpt_status_changed_admin_email_notification

E-Mail-Benachrichtigung an den Administrator

$post_id, $old_status_label, $new_status_label


Hooks der Pro-Version

Diese sind nur in WPSubscription Pro verfügbar und werden hauptsächlich für Automatisierung und Integrationen verwendet.

Hook-Name

Ausgelöst Wenn

Parameter

subscrpt_subscription_cancelled

Über API storniert

$subscription_id

subscrpt_subscription_pending

Über API pausiert

$subscription_id

subscrpt_subscription_activated

Über API reaktiviert

$subscription_id

subscrpt_subscription_status_changed

Status über API geändert

$subscription_id, $old_status, $new_status

subscrpt_subscription_trial_ended

Testphase endet

$subscription_id

subscrpt_subscription_expired

Als abgelaufen markiert

$subscription_id

subscrpt_subscription_payment_failed

Zahlung fehlgeschlagen

$subscription_id

subscrpt_api_verified

API-Schlüssel ist verifiziert

api_key

subscrpt_grace_period_started

Abonnement abgelaufen, und die Karenzzeit hat begonnen

$subscription_id

subscrpt_grace_period_ended

Abonnement abgelaufen, und die Karenzzeit ist vorbei

$subscription_id

subscrpt_switch_order_created

Abonnement Upgrade/Downgrade-Bestellung erstellt

$switch_type, $order, $order_item, $switch_context

subscrpt_switch_completed

Abonnement Upgrade/Downgrade abgeschlossen.

$switch_type, $order, $order_item, $switch_context


E-Mail-Benachrichtigungs-Hooks

Verwendet, um den Inhalt und das Verhalten von E-Mails anzupassen, die an Kunden oder Administratoren gesendet werden.

Hook-Name

Zweck

subscrpt_status_changed_admin_email

Admin-E-Mail bei Statusänderung

subscrpt_subscription_expired_email

Kunden-E-Mail für abgelaufenes Abonnement

subscrpt_subscription_expired_email_notification

System-E-Mail-Auslöser für Ablauf

Beispiel: E-Mail-Inhalt anpassen

add_action('subscrpt_subscription_expired_email', function($subscription_id) {
add_filter('woocommerce_email_content', function($content) use ($subscription_id) {
return $content . "\n\nErneuern Sie heute und sparen Sie 10%!";
});
});

Checkout & Warenkorbfilter

Diese ermöglichen die Anpassung, wie Abonnementprodukte während der Erneuerung und des Checkouts funktionieren.

Filtername

Beschreibung

subscrpt_renewal_item_meta

Meta zu Erneuerungsbestellungen hinzufügen

subscrpt_renewal_product_args

Produktargumente für Erneuerungen ändern

subscrpt_block_simple_cart_item_data

Warenkorbdaten für Abonnements ändern


Admin-Filter

Filtername

Beschreibung

post_updated_messages

Admin-Benachrichtigungen für Abonnements anpassen

plugin_action_links_{plugin_file}

Plugin-Aktionslinks hinzufügen (z.B. Einstellungen, Upgrade)


Automatisierungs-Hooks

Wird von Drittanbieter-Plugins für Automatisierungen oder ähnliche externe Tools zur programmatischen Steuerung von Abonnements verwendet.

Hook

Beschreibung

subscrpt_cancel_subscription

Abonnement über externen Trigger kündigen

subscrpt_pause_subscription

Abonnement pausieren

subscrpt_resume_subscription

Pause des Abonnements fortsetzen

subscrpt_change_status

Status manuell ändern

subscrpt_reactivate_subscription

Ein gekündigtes Abonnement reaktivieren


Best Practices

  • Verwenden Sie add_action() oder add_filter() mit einer einzigartigen Callback-Funktion

  • Verwenden Sie Priorität und Anzahl der akzeptierten Argumente korrekt: add_action('subscrpt_subscription_activated', 'my_custom_function', 10, 1);


Anwendungsfälle

  • Eine benutzerdefinierte Slack-Benachrichtigung bei fehlgeschlagenen Erneuerungen senden

  • Rollen automatisch bei Aktivierung zuweisen

  • CRM-Workflows bei Pause oder Kündigung auslösen

  • E-Mail-Vorlagen mit Treueangeboten erweitern

  • Externe Dashboards bei Änderungen des Abonnements aktualisieren