Zaloguj się
Rozpocznij

Dokumentacja Easy Digital Downloads

Dokumentacja, materiały referencyjne i samouczki dla Easy Digital Downloads 

EDD_Payment

Klasa EDD_Payment ułatwia tworzenie, edycję i usuwanie informacji o płatnościach w Easy Digital Downloads. Oto kilka przykładów:

Przykład tworzenia nowej płatności
$payment = new EDD_Payment();
$payment->add_download( 97 );
$payment->email = '[email protected]';
$payment->status = 'complete';
$payment->save();
Przykład aktualizacji adresu e-mail przy istniejącej płatności:
$payment = new EDD_Payment( 4023 );
$payment->email = '[email protected]';
$payment->save();

Dostępne właściwości

Oto właściwości dostępne dla Twojego obiektu:

  • $ID
  • $number
  • $mode
  • $key
  • $total
  • $subtotal
  • $tax
  • $fees
  • $discounts
  • $date
  • $completed_date
  • $status
  • $old_status
  • $status_nicename
  • $customer_id
  • $user_id
  • $first_name
  • $last_name
  • $email
  • $address
  • $transaction_id
  • $downloads
  • $ip
  • $gateway
  • $currency
  • $szczegoly_koszyka
  • $nieograniczone_pobieranie
  • $oczekujacy
  • $platnosc_nadrzedna

Dostępne metody

add_download( $download_id = 0, $args = array(), $options = array() )

Ta metoda pozwala dodać produkt do pobrania do płatności. Akceptuje trzy argumenty:

$download_id

To jest identyfikator produktu do pobrania, który chcesz dołączyć. Jest to zawsze liczba całkowita.

$args

To jest tablica, która może nadpisać te wbudowane wartości domyślne:

            'quantity'    => 1,
            'price_id'    => false,
            'item_price'  => 0.00,
            'tax'         => 0.00,
            'fees'        => array()

Opłaty mogą być czymkolwiek wymaganym, ale zgodnie z formatem
add_fee(). Więcej informacji można znaleźć w dokumentacji EDD_Fees.

$options

To jest tablica, która może przyjmować dowolne opcje dla produktu do pobrania. Przykłady mogą obejmować
is_renewal lub is_upgrade dla rozszerzenia Software Licensing.

WAŻNE: jeśli dodasz produkt do pobrania do zakończonej płatności, nowy produkt do pobrania zostanie ustawiony na cenę zerową. Jeśli dodasz produkt do pobrania do płatności z jakimkolwiek innym statusem, ten produkt do pobrania zachowa swoją domyślną wartość finansową, a całkowita wartość płatności wzrośnie.

To domyślne zachowanie może zostać nadpisane przez wysłanie
item_price w $args.

remove_download( $download_id, $args = array() )

Ta metoda pozwala usunąć produkt do pobrania z płatności. Akceptuje dwa argumenty:

$download_id

To jest identyfikator produktu do pobrania, który chcesz dołączyć. Jest to zawsze liczba całkowita.

$args

To jest tablica, która może nadpisać te wbudowane wartości domyślne:

            'quantity'    => 1,
            'price_id'    => false,
            'item_price'  => 0.00,
            'cart_index'  => false,

UWAGA: jeśli Twój produkt do pobrania jest zmienny, wymagany jest identyfikator ceny (price_id), aby można było usunąć właściwy element.

UWAGA: Domyślnie remove_download() usuwa tylko jeden element. Jeśli masz wiele takich samych elementów, będziesz musiał użyć opcji ilości (quantity) w $args.

get_meta( $meta_key = ‘_edd_payment_meta’, $single = true )

Ta metoda pobiera metadane powiązane z płatnością. Akceptuje klucz metadanych i wartość logiczną, aby zażądać metadanych w trybie pojedynczym lub nie.

Wewnętrznie ta metoda uruchamia get_post_meta, a następnie stosuje pewną logikę, aby zapewnić wsteczną kompatybilność z EDD 1.5

Następnie uruchamia apply_filters na
'edd_get_payment_meta_' . $meta_key, a następnie zwraca wynik po kolejnym filtrowaniu edd_get_payment_meta

update_meta( $meta_key = ”, $meta_value = ”, $prev_value = ” )

Ta metoda pozwala zaktualizować metadane posta dla płatności. Akceptuje klucz metadanych, wartość metadanych i poprzednią wartość metadanych do porównania.

Przed aktualizacją klucz metadanych jest przetwarzany przez filtr o nazwie
'edd_update_payment_meta_' . $meta_key.

Zwracana wartość to wynik
update_post_meta.

add_fee( $args = ”, $global = true )

Ta metoda pozwala dołączyć dowolną opłatę do płatności. Działa dokładnie tak samo jak w EDD_Fees, proszę przeczytać tam dokumentację.

remove_fee( $key )

Ta metoda pozwala usunąć daną opłatę. Działa dokładnie tak samo jak w EDD_Fees,
proszę zapoznać się z dokumentacją tam.

remove_fee_by( $key, $value, $global = false )

Ta metoda pozwala usunąć opłatę bez konieczności znajomości jej pozycji w tablicy opłat. Na przykład, jeśli masz opłatę z etykietą wysyłka, możesz zrobić coś takiego:

$payment->remove_fee_by( 'label', 'Shipping' );

Powyższy kod usunie pierwsze wystąpienie opłaty z etykietą Wysyłka. Jeśli dodasz flagę global true w ten sposób:

$payment->remove_fee_by( 'label', 'Shipping', true );

usunie WSZYSTKIE opłaty z etykietą Wysyłka.

add_note( $note = false )

Ta metoda pozwala dołączyć notatkę do płatności. Wyniki będą wyglądać mniej więcej tak:

update_status( $status = false )

Ta metoda pozwala ustawić status danej płatności. Oto możliwe statusy:

  • Oczekująca
  • Zakończona
  • Zwrócono środki
  • Nieudana
  • Porzucona
  • Anulowano

array_convert()

Ta metoda pozwala uzyskać wszystkie dostępne właściwości jako tablicę. Przykład:

$payment = new EDD_Payment( 4577 );
$payments_array = $payment->array_convert();

WAŻNE: właściwości, które zostały przeniesione do tablicy za pomocą array_convert, NIE będą aktualizowane w tej tablicy. Jeśli potrzebujesz zaktualizowanej wersji po zmianie, musisz ponownie uruchomić tę metodę i ponownie wypełnić tablicę.

save()

Ta metoda pobiera wszelkie zmiany lub aktualizacje dokonane przez inne metody i zapisuje je w bazie danych.

UWAGA: jeśli nie użyjesz save(), żadna z Twoich zmian nie zostanie wprowadzona.

Przykłady

Oto kilka przykładów kodu dla niektórych typowych zadań:

Tworzenie płatności

$payment = new EDD_Payment(); // Instantiates a payment object
$payment->add_download( 12 ); // Adds download id 12 to the payment at it's default price
$payment->email = '[email protected]'; // Email is required for a payment
$payment->status = 'complete'; // Completes the payment
$payment->save(); // Writes to the database any changes that were made

Edycja istniejącej płatności

$payment = new EDD_Payment( 42 ); // Loads the information for Payment ID 42
$payment->email = '[email protected]'; // Changes the email address on the payment
$payment->save();

Zmiana statusu płatności

$payment = new EDD_Payment( 1337 );
$payment->status = 'revoked';
$payment->save();

Dodawanie produktu z ceną zmienną

$payment = new EDD_Payment( 1942 );
$args = array(
    'price_id' => 1, // Variable price ID
    'item_price' => 0.00, // Makes the item free
);
$payment->add_download( 23, $args ); // Adds Download ID 23, variable price 1 to the payment
$payment->save();

Dodawanie produktu z opcjami

$payment = new EDD_Payment( 2008 );
$args = array(
    'item_price' => 4.00,
);
$options = array(
    'is_renewal' => true,
);
$payment->add_download( 28, $args, $options );
$payment->save();

Usuwanie produktu

$payment = new EDD_Payment( 2008 );
$payment->remove_download( 23 );
$payment->save();

Usuwanie produktu z ceną zmienną

$payment = new EDD_Payment( 2008 );
$args = array(
    'price_id' => 1,
);
$payment->remove_download( 28, $args );
$payment->save();
Czy ten artykuł był pomocny?

Zacznij sprzedawać już dziś!

Dołącz do ponad 50 000 sprytnych właścicieli sklepów i zacznij korzystać z najłatwiejszego sposobu sprzedaży produktów cyfrowych za pomocą WordPress.

Copyright © 2025 Sandhills Development, LLC

[universally_switcher]