The EDD_Download class is used for getting data about a specific Download, creating new Downloads, and editing existing Downloads. The public properties that may be managed with this class are:
- $ID = 0;
- $post_author = 0;
- $post_date = ‘0000-00-00 00:00:00’;
- $post_date_gmt = ‘0000-00-00 00:00:00’;
- $post_content = ”;
- $post_title = ”;
- $post_excerpt = ”;
- $post_status = ‘publish’;
- $comment_status = ‘open’;
- $ping_status = ‘open’;
- $post_password = ”;
- $post_name = ”;
- $to_ping = ”;
- $pinged = ”;
- $post_modified = ‘0000-00-00 00:00:00’;
- $post_modified_gmt = ‘0000-00-00 00:00:00’;
- $post_content_filtered = ”;
- $post_parent = 0;
- $guid = ”;
- $menu_order = 0;
- $post_mime_type = ”;
- $comment_count = 0;
- $filter;
Note: The above properties are inherited from and identical to the properties in WP_Post.
Creating a Download
To create a new download you first instantiate the class and then run the create() method.
$new_download = new EDD_Download; $new_download->create();
This will create a single Download with default settings, which are a Draft with the title of ‘New Download Product’.
The create method uses
wp_insert_post(), so you may pass any arguments to create() that wp_insert_post() can accept. Something like this would work fine:
$new_download = new EDD_Download; $download_args = array( 'post_title' => 'My eBook', 'post_content' => 'This is my eBook. Nice long description.', 'post_status' => 'publish', ) $new_download->create( $download_args );
Laden van een bestaande download
Dit wordt eenvoudig bereikt door een Download ID mee te geven aan de klassenaam tijdens het instantiëren.
Voorbeeld:
$my_download = new EDD_Download( 1492 );
Methoden voor het ophalen van gegevens
EDD_Download heeft een verscheidenheid aan methoden voor het verkrijgen van gegevens over de Download, het manipuleren van metagegevens en het testen op verschillende zaken.
get_ID()
Deze methode retourneert eenvoudig de ID van de Download.
Voorbeeld:
$download_id = $my_download->get_ID();
Retourneert: een geheel getal, zoals 1492.
get_price()
Deze methode retourneert de prijs van de Download in dubbel formaat, zonder valutateken.
$download_price = $my_download->get_price();
Retourneert: een dubbel getal, zoals 9.99. Er kunnen wiskundige bewerkingen op dit resultaat worden uitgevoerd.
get_prices()
Deze methode retourneert een array van de variabele prijzen van de Download in dubbel formaat, zonder valutateken.
$variable_prices = $my_download->get_prices();
Retourneert een array van prijzen zoals deze:
Array
(
[1] => Array
(
[index] => 1
[name] => Regular
[amount] => 9.99
)
[2] => Array
(
[index] =>
[name] => Unleaded
[amount] => 19.99
)
is_single_price_mode()
Bepaalt of de modus voor één prijs is ingeschakeld of uitgeschakeld. De modus voor één prijs verwijst naar de vraag of meerdere prijsopties tegelijkertijd kunnen worden gekocht. In de gebruikersinterface van Easy Digital Downloads staat het selectievakje hiervoor onder Variabele prijzen.

$is_single_price_mode = $my_download->is_single_price_mode();
Retourneert: true of false
has_variable_prices()
Bepaal of Variabele prijzen zijn ingeschakeld of uitgeschakeld voor een specifieke Download.
$download_price = $my_download->has_variable_prices();
Retourneert: true of false
get_files()
Deze methode retourneert een array van de bestanden die aan de Download zijn gekoppeld
$my_files = $my_download->get_files();
Retourneert een array van prijzen zoals deze:
Array
(
[0] => Array
(
[attachment_id] => 10
[name] => Be Kind To Your Web Footed Friends
[file] => https://example.com/wp-content/uploads/edd/2015/05/be_kind_to_your_web_footed_friend.mp3
[condition] => all
)
)
get_file_download_limit()
Deze methode haalt het aantal keren op dat dit bestand mag worden gedownload.
Voorbeeld:
$download_limit = $my_download->get_file_download_limit();
Retourneert: een geheel getal, zoals 100.
get_file_price_condition()
Wanneer een product variabele prijzen heeft, kunnen een of meer bestanden te koop zijn. Onder de Prijs toewijzing kunnen bestanden worden gekoppeld aan alle prijsopties of slechts aan specifieke opties. In het onderstaande voorbeeld is het bestand gekoppeld aan Tracks 1, 2, 3 en Volledig album.

Voorbeeld:
$price_condition = $my_download->get_file_price_condition();
Retourneert: een geheel getal, zoals 2.
get_type()
Retourneert een waarde die aangeeft of de Download een Bundel of Standaard is.
Voorbeeld:
$download_type = $my_download->get_type();
Retourneert: 'default' of 'bundle'
is_bundled_download()
Bepaal of dit een gebundelde download is.
Voorbeeld:
$is_bundled_download = $my_download->is_bundled_download();
Retourneert: true of false
get_bundled_downloads()
Haalt de Download-ID's op van de items in een gebundelde download.
Voorbeeld:
$bundled_downloads = $my_download->get_bundled_downloads();
Retourneert: Een array van Download-ID's zoals deze:
Array
(
[0] => 68
[1] => 114
)
Opmerking: get_bundled_downloads() retourneert een lege array als het product geen bundel is, dus kijk naar iets als dit:
if ( $my_download->is_bundled_download() ) {
$bundled_downloads = $my_download->get_bundled_downloads();
}
get_notes()
Retourneert de notities voor een download als een string.
Voorbeeld:
$download_notes = $my_download->get_notes();
Retourneert: De notities als een string, en behoudt regeleinden.
get_sku()
Retourneert de SKU voor een download als een string.
Voorbeeld:
$download_sku = $my_download->get_sku();
Retourneert: De SKU als een string
get_button_behavior()
Retourneert wat er gebeurt wanneer iemand op de koopknop klikt
Voorbeeld:
$download_button_behavior = $my_download->get_button_behavior();
Retourneert: 'direct' voor Nu Kopen of 'add_to_cart' voor Toevoegen aan winkelwagen.
get_sales()
Retourneert het aantal voltooide verkopen voor dit item
Voorbeeld:
$download_sales = $my_download->get_sales();
Retourneert: een geheel getal zoals 42
increase_sales()
Verhoogt het aantal verkopen met 1. Kan geen invoer nemen, kan niet met meer dan 1 verhogen.
Voorbeeld:
$increase_sales = $my_download->increase_sales();
Retourneert: false bij falen of een geheel getal van het nieuwe verkoopaantal.
decrease_sales()
Verlaagt het aantal verkopen met 1. Kan geen invoer nemen, kan niet met meer dan 1 verhogen.
Voorbeeld:
$decrease_sales = $my_download->decrease_sales();
Retourneert: false bij falen of een geheel getal van het nieuwe verkoopaantal.
get_earnings()
Retourneert de totale inkomsten voor deze download.
Voorbeeld:
$download_earnings = $my_download->get_earnings();
Retourneert: een float zoals 152.69
increase_earnings( mixed $amount = 0 )
Verhoogt de totale inkomsten voor een download met het ingevoerde bedrag.
Voorbeeld:
$increase_earnings = $my_download->increase_earnings();
Retourneert: false bij falen of een float van het nieuwe bedrag, zoals 247.39
decrease_earnings( mixed $amount = 0 )
Vermindert de totale inkomsten voor een Download met het invoerbedrag.
Voorbeeld:
$decrease_earnings = $my_download->decrease_earnings();
Retourneert: false bij een fout of een float van het nieuwe bedrag, zoals 147.39
is_free( mixed $price_id = false )
Controleert of de download gratis is, OF als de opgegeven prijs-ID gratis is.
Voorbeeld:
$is_free = $my_download->is_free();
Retourneert: true of false
