Inloggen
Aan de slag

Easy Digital Downloads Documentatie

Documentatie, Referentiemateriaal en Tutorials voor Easy Digital Downloads 

Producten opvragen in de database

Bij het bouwen rond Easy Digital Downloads kunt u de behoefte voelen om de database te bevragen voor productgegevens. Dit document toont verschillende voorbeelden van hoe u dat correct kunt doen.

Een Enkel Product Ophalen

De beste manier om informatie over een enkel product te verkrijgen, is door de EDD_Download klasse te gebruiken. Deze accepteert een
download_id en retourneert een object met informatie over de download. Voorbeeld:

$download = new EDD_Download( 109 );

Dit zou een object als volgt retourneren:

EDD_Download Object
(
    [ID] => 109
    [price:EDD_Download:private] => 
    [prices:EDD_Download:private] => 
    [files:EDD_Download:private] => 
    [file_download_limit:EDD_Download:private] => 
    [type:EDD_Download:private] => 
    [bundled_downloads:EDD_Download:private] => 
    [sales:EDD_Download:private] => 
    [earnings:EDD_Download:private] => 
    [notes:EDD_Download:private] => 
    [sku:EDD_Download:private] => 
    [button_behavior:EDD_Download:private] => 
    [post_author] => 2
    [post_date] => 2016-03-22 13:30:29
    [post_date_gmt] => 2016-03-22 13:30:29
    [post_content] => Buy my mp3!
    [post_title] => My MP3
    [post_excerpt] => 
    [post_status] => publish
    [comment_status] => closed
    [ping_status] => closed
    [post_password] => 
    [post_name] => my-mp3
    [to_ping] => 
    [pinged] => 
    [post_modified] => 2016-03-22 13:30:29
    [post_modified_gmt] => 2016-03-22 13:30:29
    [post_content_filtered] => 
    [post_parent] => 0
    [guid] => https://edd.dev/?post_type=download&p=109
    [menu_order] => 0
    [post_mime_type] => 
    [comment_count] => 0
    [filter] => raw
    [post_type] => download
)

Zodra u het object heeft, zijn er een breed scala aan methoden die erop kunnen worden uitgevoerd om informatie zoals prijs, variaties, enz. te verkrijgen.
Volledige documentatie voor EDD_Download hier.

Meerdere Producten Ophalen

Downloads zijn een WordPress custom content type, dus het is mogelijk om de id's van meerdere downloads op te halen met
get_posts(). Als u de fields parameter correct specificeert, zal get_posts alleen de id's ophalen en zal de query veel sneller zijn. U moet ook ten minste download specificeren voor het post_type. Voorbeeld:

    $args = array(
        'fields'    => 'ids',
        'post_type' => 'download',
    );

    $downloads = get_posts( $args );

U kunt elke gewenste optie gebruiken in
get_posts() om uw query te verfijnen.
Volledige documentatie voor get_posts() hier.

Een extra optie die niet te vinden is in de documentatie voor
get_posts() heet no_found_rows(). Dit verwijdert enkele gegevens die nodig zijn voor paginering, maar versnelt uw query dramatisch. Als u paginering nodig heeft, gebruik deze optie dan niet. Als u geen paginering nodig heeft, zou het er als volgt uitzien:

$args = array(
	'fields'        => 'ids',
        'post_type'     => 'download',
	'no_found_rows' => true,
);

$downloads = get_posts( $args );

De bovenstaande query retourneert een array van download_id's als volgt:

Array
(
    [0] => 109
    [1] => 82
    [2] => 79
    [3] => 61
    [4] => 42
)

Werken Met Meerdere Producten

Zodra u een array van download_id's heeft, kunt u eenvoudig de array doorlopen en EDD_Download objecten maken als volgt:

foreach ( $downloads as $key => $download_id ) {
	$download = new EDD_Download( $download_id );
	// do whatever you wish with each object
}
Was dit artikel nuttig?

Begin vandaag nog met verkopen!

Sluit u aan bij meer dan 50.000 slimme winkel eigenaren, en begin met de eenvoudigste manier om digitale producten te verkopen met WordPress.

Copyright © 2025 Sandhills Development, LLC

[universally_switcher]