Anmelden
Loslegen

Easy Digital Downloads Dokumentation

Dokumentation, Referenzmaterialien und Tutorials für Easy Digital Downloads 

Wiederkehrende Zahlungen – Entwickler: EDD_Recurring_Subscriber

Wiederkehrende Zahlungen wird mit einer neuen EDD-Klasse zur Verwaltung von Abonnenten geliefert. Die Klasse EDD_Recurring_Subscriber ermöglicht Ihnen die Interaktion mit Abonnementkunden und den Abonnements in deren Konten.

Objekte erstellen

EDD_Recurring_Subscriber sollte mit einer Kennung für einen EDD-Kunden oder WordPress-Benutzer auf der Website aufgerufen werden. Dies kann eine E-Mail-Adresse, eine WordPress-Benutzer-ID oder eine EDD-Kunden-ID sein. Hier sind einige Beispiele:

$subscriber = new EDD_Recurring_Subscriber( '[email protected]' );

Wenn Sie eine Ganzzahl übergeben, wird nach einem EDD-Kunden mit dieser customer_id gesucht.

$subscriber = new EDD_Recurring_Subscriber( 3 );

Wenn Sie eine Ganzzahl mit einem zweiten Argument von true übergeben, wird nach einem WordPress-Benutzer mit dieser user_id gesucht.

$subscriber = new EDD_Recurring_Subscriber( 3, true );

Jede der obigen Optionen gibt ein Objekt zurück, das wie folgt aussieht:

EDD_Recurring_Subscriber Object
(
    [subs_db:EDD_Recurring_Subscriber:private] => EDD_Subscriptions_DB Object
        (
            [table_name] => wp_edd_subscriptions
            [version] => 1.4.1.3
            [primary_key] => id
        )

    [id] => 11111
    [purchase_count] => 19
    [purchase_value] => 2173.3
    [email] => [email protected]
    [emails] => Array
        (
            [0] => [email protected]
        )

    [name] => Bob Smith
    [date_created] => 2015-06-15 16:38:08
    [payment_ids] => 
    [user_id] => 1nan1
    [notes:protected] => 
    [raw_notes:EDD_Customer:private] => 
    [db:protected] => EDD_DB_Customers Object
        (
            [meta_type] => customer
            [date_key] => date_created
            [cache_group] => customers
            [table_name] => wp_edd_customers
            [version] => 1.0
            [primary_key] => id
        )
)

Verfügbare Methoden

Jede der folgenden Methoden geht davon aus, dass Sie ein Objekt haben, das einem bestimmten Kunden zugeordnet ist, und wird diesen Kunden als „der Kunde“ bezeichnen.

Bedingte Methoden

$subscriber->hat_aktives_abonnement()

Diese Methode prüft, ob der Kunde ein aktives oder gekündigtes, aber nicht abgelaufenes Abonnement hat.

Gibt einen booleschen Wert zurück, gefiltert wie folgt:

apply_filters( 'edd_recurring_has_active_subscription', $ret, $this );
$subscriber->hat_produkt_abonnement( $product_id = 0 )

Diese Methode prüft, ob der Kunde irgendeine Art von Abonnement für eine bestimmte EDD-Produkt-ID hat.

Akzeptiert eine Ganzzahl, die eine EDD-Produkt-ID ist.

Gibt einen booleschen Wert zurück, gefiltert wie folgt:

return apply_filters( 'edd_recurring_has_product_subscription', $ret, $product_id, $this );
$subscriber->hat_aktives_produkt_abonnement( $product_id = 0 )

Diese Methode prüft, ob der Kunde ein aktives Abonnement für eine bestimmte EDD-Produkt-ID hat.

Akzeptiert eine Ganzzahl, die eine EDD-Produkt-ID ist.

Gibt einen booleschen Wert zurück, gefiltert wie folgt:

return apply_filters( 'edd_recurring_has_active_product_subscription', $ret, $product_id, $this );

Abonnenteninformationen abrufen

$subscriber->hole_abonnement_nach_profil_id( $profile_id = ” )

Diese Methode akzeptiert eine Zahlungs-Profil-ID und gibt ein EDD_Subscription-Objekt mit allen Informationen zu diesem Abonnement zurück.

Akzeptiert eine Zahlungs-Gateway-Profil-ID. Sie finden Profil-IDs für bestimmte Abonnements auf der Detailseite eines bestimmten Abonnements unter Downloads → Abonnements.

Gibt ein EDD_Subscription-Objekt zurück. Ein Beispiel finden Sie in der EDD_Subscription-Dokumentation.

$subscriber->hole_abonnement( $subscription_id = 0 )

Diese Methode akzeptiert eine Abonnement-ID und gibt ein EDD_Subscription-Objekt mit allen Informationen zu diesem Abonnement zurück, ähnlich wie $subscriber->get_subscription_by_profile_id()

$subscriber->hole_abonnements( $product_id = 0, $statuses = array() )

Diese Methode ruft alle Abonnements für den Kunden ab, die den Eingabekriterien entsprechen. Sie akzeptiert zwei Argumente: das erste ist eine Produkt-ID und das zweite ein Array von Status. Hier sind einige Beispiele:

// gets all subscriptions for the customer
$subscriber->get_subscriptions();
// gets all subscriptions for the customer for product ID 85
$subscriber->get_subscriptions( 85 );
// gets all active subscriptions for the customer for product ID 85
$subscriber->get_subscriptions( 85, array( 'active' ) );
// gets all active subscriptions for the customer, regardless of product
$subscriber->get_subscriptions( '', array( 'active' ) );
// gets all active and cancelled subscriptions for the customer, regardless of product
$subscriber->get_subscriptions( '', array( 'active', cancelled' ) );
$subscriber->hole_neues_ablaufdatum( $download_id = 0, $price_id = null )

Diese Methode bestimmt das Ablaufdatum eines Abonnements eine Periode über das aktuelle Ablaufdatum hinaus. Wenn das Ablaufdatum beispielsweise 2017-01-01 23:59:59 wäre und die Periode ein Monat wäre, würde diese Methode 2017-02-01 23:59:59 zurückgeben.

Akzeptiert eine Ganzzahl für download_id als erstes erforderliches Argument.

Akzeptiert eine Ganzzahl für price_id im Falle von variablen Preisen, optional

Gibt ein Datum im Format Y-m-d H:i:s zurück.

$subscriber->hole_wiederkehrende_kunden_ids()

Diese Methode gibt ein Array zurück, das alle Kunden-IDs enthält, die von Zahlungs-Gateways für den Kunden erstellt wurden. Ein Beispiel wäre

Array
(
    [stripe] => cus_85YmUU1QuH5yxY
)

Die Ausgabe wird auf diese Weise gefiltert:

apply_filters( 'edd_recurring_customer_ids', $ids, $this );
$subscriber->hole_wiederkehrende_kunden_id( $gateway = false )

Diese Methode akzeptiert einen Gateway-Namen und gibt eine Zeichenkette zurück, die die mit dem Kunden und diesem Gateway verknüpfte Kunden-ID enthält.

Akzeptiert eine Zeichenkette, die einen Gateway-Namen wie stripe enthält.

Gibt eine Zeichenkette zurück, die eine Kunden-ID wie cus_85YmUU1QuH5yxY enthält

Die Ausgabe wird auf diese Weise gefiltert:

apply_filters( 'edd_recurring_get_customer_id', $customer_id, $this );

Abonnentenoptionen festlegen

$subscriber->als_abonnent_festlegen()

Diese Methode nimmt den Kunden und erstellt einen EDD-Kunden mit seinen Informationen.

$subscriber->wiederkehrende_kunden_id_festlegen( $recurring_id = ”, $gateway = false )

Diese Methode akzeptiert eine wiederkehrende ID eines Zahlungs-Gateways und einen Namen eines Zahlungs-Gateways und verknüpft sie mit dem Kunden.

Akzeptiert eine Zeichenkette, die eine wiederkehrende ID eines Zahlungs-Gateways wie cus_85YmUU1QuH5yxY enthält. Erforderlich.

Akzeptiert eine Zeichenkette mit einem Gateway-Namen wie
stripe. Erforderlich

Abonnements verwalten

$subscriber->abonnement_hinzufügen( $args = array() )

Diese Methode fügt einem EDD-Kunden ein Abonnement hinzu. Wenn keine customer_id enthalten ist, wird eine aus dem WordPress-Kunden erstellt.

Diese Methode verwendet EDD_Subscription::create() und hat daher alle gleichen Anforderungen. Vollständige Dokumentation für EDD_Subscription::create().

Akzeptiert ein Array von Daten, die von EDD_Subscription::create() benötigt werden.

Gibt ein Abonnementobjekt zurück.

$subscriber->zahlung_hinzufügen( $args = array() )

Diese Methode fügt einen Zahlungsdatensatz zu einem bestimmten Abonnement für den Kunden hinzu. Sie akzeptiert ein Array wie dieses:

$args = array(
    'subscription_id' => 0,
    'amount'          => '0.00', 
    'transaction_id'  => '',  
);

Der Array-Schlüssel subscription_id darf nicht leer sein und sollte eine Ganzzahl sein.

Diese Methode verwendet EDD_Subscription::add_payment() und hat daher alle gleichen Anforderungen. Vollständige Dokumentation für EDD_Subscription::add_payment().

Gibt true zurück.

War dieser Artikel hilfreich?

Verkaufen Sie noch heute!

Schließen Sie sich über 50.000 klugen Shop-Besitzern an und nutzen Sie die einfachste Methode, um digitale Produkte mit WordPress zu verkaufen.

Copyright © 2025 Sandhills Development, LLC

[universally_switcher]