Inloggen
Aan de slag

Easy Digital Downloads Documentatie

Documentatie, Referentiemateriaal en Tutorials voor Easy Digital Downloads 

Software Licensing – Minimale Vereisten

Software Licensing 3.8 introduceerde de mogelijkheid om minimale platformvereisten voor producten in te stellen. Als een klant niet aan die vereisten voldoet, krijgt deze geen automatische updates via de API.

API-voorwaarden

Om ervoor te zorgen dat deze functie correct werkt, moeten de platformversies van de klant worden meegestuurd met het API-verzoek dat controleert op een update.

Als u onze plugin-updater gebruikt, betekent dit dat uw product versie 1.9 of hoger van het EDD_SL_Plugin_Updater class-bestand moet bundelen.

Als u onze thema-updater gebruikt, moet uw product versie 1.2 of hoger bundelen.

Als u een aangepaste integratie hebt gebouwd, moet u ervoor zorgen dat u "php_version" en "wp_version" opneemt in uw API-verzoek. Raadpleeg onze API-documentatie voor meer details.

Als de site van een klant de platformversie(s) niet opneemt in het API-verzoek, worden die vereisten niet gecontroleerd en kan de gebruiker nog steeds de update ontvangen.

Vereisten configureren voor een product

Om vereisten voor een product te configureren, bewerkt u het product via Downloads > Bewerken. Zoek in de rechterzijbalk naar een metabox genaamd "Downloadvereisten". Het ziet er als volgt uit:

Voer eenvoudig uw minimale vereiste versies in en sla op. Alle lege versies worden niet gecontroleerd of vereist.

Aangepaste vereisten toevoegen

Standaard ondersteunt Software Licensing PHP- en WordPress-versies, hoewel uw eigen afhankelijkheden met wat aangepaste code kunnen worden toegevoegd. Twee stappen zijn vereist:

1. Voeg uw afhankelijkheid toe aan de metabox

Het toevoegen van een nieuwe afhankelijkheid gebeurt met een eenvoudige filter zoals deze, die aan uw eigen site moet worden toegevoegd:

add_filter( 'edd_sl_platforms', function( $platforms ) {
	$platforms['your-platform-id'] = 'Your Platform Display Name';
	
	return $platforms;
} );

Vervang your-platform-id door een unieke, slug-vriendelijke versie van uw afhankelijkheidsnaam, en vervang Your Platform Display Name door de weergavevriendelijke versie. Hier is een voorbeeld van het toevoegen van Easy Digital Downloads als vereiste:

add_filter( 'edd_sl_platforms', function( $platforms ) {
	$platforms['easy-digital-downloads'] = 'Easy Digital Downloads';

	return $platforms;
} );

Eenmaal toegevoegd, verschijnt uw platform in de metabox:

2. Neem de afhankelijkheidsversie op in uw API-verzoek

Wanneer u via de API controleert op een nieuwe update (binnen uw product), moet u het huidige versienummer van de afhankelijkheid meesturen in het API-verzoek. Om dat te doen, hoeft u alleen maar een nieuw argument toe te voegen: {your platform ID}_version.

Een versiecontrole-verzoek ziet er normaal gesproken als volgt uit:

https://YOURSITE.com/?edd_action=get_version&item_id=8&license=cc22c1ec86304b36883440e2e84cddff&url=https://licensedsite.com

Maar met ons nieuwe argument zou het er als volgt uitzien:

https://YOURSITE.com/?edd_action=get_version&item_id=8&license=cc22c1ec86304b36883440e2e84cddff&url=https://licensedsite.com&easy-digital-downloads_version=1.0

Merk de toevoeging op van &easy-digital-downloads_version=1.0 aan het einde.

Als u een aangepaste updater gebruikt, kunt u het nieuwe argument rechtstreeks toevoegen aan de API-parameters die met het verzoek worden verzonden:

$api_params = array(
	'edd_action'                     => 'get_version',
	'license'                        => ! empty( $data['license'] ) ? $data['license'] : '',
	'item_name'                      => isset( $data['item_name'] ) ? $data['item_name'] : false,
	'item_id'                        => isset( $data['item_id'] ) ? $data['item_id'] : false,
	'version'                        => $this->version,
	'slug'                           => $data['slug'],
	'author'                         => $data['author'],
	'url'                            => home_url(),
	'beta'                           => ! empty( $data['beta'] ),
	'php_version'                    => phpversion(),
	'wp_version'                     => get_bloginfo( 'version' ),
	'easy-digital-downloads_version' => defined( 'EDD_VERSION' ) ? EDD_VERSION : '', // current version number
);

Als u onze plugin-updater class (versie 1.9 of hoger) gebruikt, kunt u dit argument toevoegen aan het API-verzoek met behulp van een filter. Deze filter moet deel uitmaken van uw plugin, omdat deze op de sites van uw klanten wordt uitgevoerd:

add_filter( 'edd_sl_plugin_updater_api_params', function( $api_params, $api_data, $plugin_file ) {
	/*
	 * Make sure $plugin_file matches your plugin's file path. You should have a constant for this
	 * or can use __FILE__ if this code goes in your plugin's main file.
	 */
	if ( __FILE__ === $plugin_file ) {
		// Dynamically retrieve the current version number.
		$api_params['easy-digital-downloads_version'] = defined( 'EDD_VERSION' ) ? EDD_VERSION : '';
	}

	return $api_params;
}, 10, 3 );

Zorg ervoor dat u easy-digital-downloads vervangt door de unieke ID die u voor uw afhankelijkheid hebt gekozen, en defined( 'EDD_VERSION' ) ? EDD_VERSION : '' door het huidige versienummer. Deze waarde moet dynamisch kunnen worden opgehaald door de klantensite.

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]