Connexion
Commencer

Documentation Easy Digital Downloads

Documentation, matériel de référence et tutoriels pour Easy Digital Downloads 

Licences de logiciels – Implémentation du programme de mise à jour pour les thèmes WordPress

Avec l'extension Licences de logiciels pour Easy Digital Downloads, vous pouvez configurer des mises à jour automatiques pour les thèmes. Cela ne signifie *pas* que le thème de votre client se mettra à jour lui-même, mais plutôt que votre client pourra mettre à jour son thème en utilisant les outils de mise à jour WordPress traditionnels, *comme si* le thème était hébergé sur WordPress.org.

Il y a deux composants clés dans l'exemple :

  1. Le fichier composer.json qui configurera tout ce dont vous avez besoin pour commencer à travailler avec l'API de licences de logiciels dans votre plugin WordPress.
  2. Le fichier functions.php, qui inclut le code pour se connecter au SDK de licences de logiciels EDD, une solution prête à l'emploi pour les développeurs de plugins et de thèmes WordPress afin d'intégrer rapidement les licences de logiciels Easy Digital Downloads dans leurs produits sans configuration complexe ni interfaces d'administration personnalisées.

Étape 1 : Installer le package composer

Mettez à jour (ou créez) le fichier composer.json de votre plugin dans le répertoire principal de votre plugin. Exécutez composer install pour ajouter le SDK de licences de logiciels à votre plugin (notez que ce lien inclut également les instructions et exemples les plus récents).

Étape 2 : Mettre à jour votre thème pour utiliser le SDK

Cet extrait fournit un point de départ pour le code requis dans votre thème pour l'intégration avec le SDK :

/**
* This is just a demonstration of how theme licensing works with
* Easy Digital Downloads.
*
* @package EDD Sample Theme
*/

/**
* Load theme updater functions.
* Action is used so that child themes can easily disable.
*/

/**
* Initialize the theme license handler and updater.
*
* This registry handles activating and deactivating the license key,
* as well as checking for updates to the theme.
*/
add_action(
'edd_sl_sdk_registry',
function ( $init ) {
$init->register(
array(
'id' => 'edd-sample-theme',
'url' => 'https://edd.local',
'item_id' => 36894,
'version' => '1.0.0',
'file' => __FILE__,
'type' => 'theme',
)
);
}
);

// Load the SDK from the vendor directory. The SDK handles autoloader setup automatically.
if ( file_exists( __DIR__ . '/vendor/easy-digital-downloads/edd-sl-sdk/edd-sl-sdk.php' ) ) {
require_once __DIR__ . '/vendor/easy-digital-downloads/edd-sl-sdk/edd-sl-sdk.php';
}
}

Modifiez les informations pour qu'elles correspondent à votre boutique :

  • id – Slug du plugin/thème.
  • url – L'URL de la boutique.
  • item_id – L'ID de l'article (sur votre boutique).
  • version – Le numéro de version actuel.
  • file – Le fichier principal du plugin. Non nécessaire pour les thèmes.
  • typeplugin ou theme. Non nécessaire pour les plugins.
  • weekly_check – Facultatif : s'il faut faire une requête hebdomadaire pour confirmer le statut de la licence. La valeur par défaut est true.

Une fois votre thème activé, vos clients peuvent ajouter leur clé de licence et choisir d'autoriser votre boutique à ajouter leurs versions PHP et WordPress à leurs données d'activation :

Notes importantes

  • Si vous rencontrez des problèmes avec la vérification SSL lors de la demande de mises à jour, vous pouvez utiliser le filtre edd_sl_api_request_verify_ssl pour désactiver le drapeau de vérification SSL.
  • Si vous souhaitez empêcher vos utilisateurs d'activer les mises à jour automatiques pour votre thème ou plugin, vous pouvez ajouter un extrait de code à votre code distribué pour désactiver les mises à jour automatiques :
add_filter( 'auto_update_plugin', 'edd_sample_disable_plugin_autoupdates', 10, 2 );
function edd_sample_disable_plugin_autoupdates( $update, $plugin ) {
	if ( 'my-plugin/my-plugin.php' === $plugin->plugin ) {
		return false;
	}

	return $update;
}

add_filter( 'auto_update_theme', 'edd_sample_disable_theme_autoupdates', 10, 2 );
function edd_sample_disable_theme_autoupdates( $update, $theme ) {
	if ( 'my-theme' === $theme->theme ) {
		return false;
	}

	return $update;
}
Was this article helpful?

Commencez à vendre dès aujourd'hui !

Rejoignez plus de 50 000 propriétaires de boutiques avisés et commencez à utiliser le moyen le plus simple de vendre des produits numériques avec WordPress.

Copyright © 2025 Sandhills Development, LLC

[universally_switcher]