La classe EDD_Download viene utilizzata per ottenere dati su un Download specifico, creare nuovi Download e modificare Download esistenti. Le proprietà pubbliche che possono essere gestite con questa classe sono:
- $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;
Nota: Le proprietà sopra elencate sono ereditate e identiche alle proprietà in WP_Post.
Creazione di un Download
Per creare un nuovo download, prima istanzia la classe e poi esegui il metodo create().
$new_download = new EDD_Download; $new_download->create();
Questo creerà un singolo Download con impostazioni predefinite, che sono una bozza con il titolo 'Nuovo Prodotto Download'.
Il metodo create utilizza
wp_insert_post(), quindi puoi passare qualsiasi argomento a create() che wp_insert_post() può accettare. Qualcosa di simile funzionerebbe bene:
$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 );
Caricamento di un Download Esistente
Ciò si ottiene semplicemente passando un ID Download al nome della classe durante l'istanziazione.
Esempio:
$my_download = new EDD_Download( 1492 );
Metodi di Recupero Dati
EDD_Download ha una varietà di metodi per ottenere dati sul Download, manipolare metadati e testare varie cose.
get_ID()
Questo metodo restituisce semplicemente l'ID del Download.
Esempio:
$download_id = $my_download->get_ID();
Restituisce: un intero, come 1492.
get_price()
Questo metodo restituisce il prezzo del Download in formato double, senza simbolo di valuta.
$download_price = $my_download->get_price();
Restituisce: un double, come 9.99. Su questo risultato si possono eseguire calcoli matematici.
get_prices()
Questo metodo restituisce un array dei prezzi variabili del Download in formato double, senza simbolo di valuta.
$variable_prices = $my_download->get_prices();
Restituisce un array di prezzi come questo:
Array
(
[1] => Array
(
[index] => 1
[name] => Regular
[amount] => 9.99
)
[2] => Array
(
[index] =>
[name] => Unleaded
[amount] => 19.99
)
is_single_price_mode()
Determina se la Modalità Prezzo Singolo è abilitata o disabilitata. La modalità prezzo singolo si riferisce alla possibilità di acquistare contemporaneamente più opzioni di prezzo. Nell'interfaccia utente di Easy Digital Downloads la casella di controllo per essa si trova sotto Prezzi Variabili.

$is_single_price_mode = $my_download->is_single_price_mode();
Restituisce: true o false
has_variable_prices()
Determina se i Prezzi Variabili sono abilitati o disabilitati su un Download specifico.
$download_price = $my_download->has_variable_prices();
Restituisce: true o false
get_files()
Questo metodo restituisce un array dei file allegati al Download
$my_files = $my_download->get_files();
Restituisce un array di prezzi come questo:
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()
Questo metodo ottiene il numero di volte in cui questo file può essere scaricato.
Esempio:
$download_limit = $my_download->get_file_download_limit();
Restituisce: un intero, come 10.
get_file_price_condition()
Quando un prodotto ha prezzi variabili, uno o più file potrebbero essere disponibili per l'acquisto. Sotto Assegnazione Prezzo, i File possono essere associati a Tutte le opzioni di prezzo o solo a quelle specifiche. Nell'esempio seguente il file è associato a Tracce 1, 2, 3 e Album Completo.

Esempio:
$price_condition = $my_download->get_file_price_condition();
Restituisce: un intero, come 2.
get_type()
Restituisce un valore che indica se il Download è un Bundle o Default.
Esempio:
$download_type = $my_download->get_type();
Restituisce: 'default' o 'bundle'
is_bundled_download()
Determina se questo è un download in bundle.
Esempio:
$is_bundled_download = $my_download->is_bundled_download();
Restituisce: true o false
get_bundled_downloads()
Ottiene gli ID Download degli articoli in un Download in bundle.
Esempio:
$bundled_downloads = $my_download->get_bundled_downloads();
Restituisce: Un array di ID Download come questo:
Array
(
[0] => 68
[1] => 114
)
Nota: get_bundled_downloads() restituirà un array vuoto se il prodotto non è un bundle, quindi considera di fare qualcosa di simile a questo:
if ( $my_download->is_bundled_download() ) {
$bundled_downloads = $my_download->get_bundled_downloads();
}
get_notes()
Restituisce le note per un Download come stringa.
Esempio:
$download_notes = $my_download->get_notes();
Restituisce: Le note come stringa, e mantiene le interruzioni di riga.
get_sku()
Restituisce lo SKU per un Download come stringa.
Esempio:
$download_sku = $my_download->get_sku();
Restituisce: Lo SKU come stringa
get_button_behavior()
Restituisce cosa succede quando qualcuno fa clic sul pulsante Acquista
Esempio:
$download_button_behavior = $my_download->get_button_behavior();
Restituisce: 'direct' per Acquista ora o 'add_to_cart' per Aggiungi al carrello.
get_sales()
Restituisce il numero di vendite completate per questo articolo
Esempio:
$download_sales = $my_download->get_sales();
Restituisce: un intero come 42
increase_sales()
Incrementa il numero di vendite di 1. Non può accettare input, non può aumentare di più di 1.
Esempio:
$increase_sales = $my_download->increase_sales();
Restituisce: false in caso di fallimento o un intero del nuovo conteggio delle vendite.
decrease_sales()
Decrementa il numero di vendite di 1. Non può accettare input, non può aumentare di più di 1.
Esempio:
$decrease_sales = $my_download->decrease_sales();
Restituisce: false in caso di fallimento o un intero del nuovo conteggio delle vendite.
get_earnings()
Restituisce il guadagno totale per questo download.
Esempio:
$download_earnings = $my_download->get_earnings();
Restituisce: un float come 152.69
increase_earnings( mixed $amount = 0 )
Aumenta i guadagni totali per un Download dell'importo di input.
Esempio:
$increase_earnings = $my_download->increase_earnings();
Restituisce: false in caso di fallimento o un float del nuovo importo, come 247.39
decrease_earnings( mixed $amount = 0 )
Diminuisce i guadagni totali per un Download dell'importo di input.
Esempio:
$decrease_earnings = $my_download->decrease_earnings();
Restituisce: false in caso di errore o un float del nuovo importo, come 147.39
is_free( mixed $price_id = false )
Verifica se il download è gratuito, OPPURE se il prezzo specificato è gratuito.
Esempio:
$is_free = $my_download->is_free();
Restituisce: true o false
