Login
Get Started

Documentación de Easy Digital Downloads

Documentación, Materiales de Referencia y Tutoriales para Easy Digital Downloads 

Licencias de Software – Requisitos mínimos

Licencias de Software 3.8 introdujo la capacidad de establecer requisitos mínimos de plataforma para los productos. Si un cliente no cumple con esos requisitos, no recibirá actualizaciones automáticas a través de la API.

Prerrequisitos de la API

Para que esta función funcione correctamente, las versiones de plataforma del cliente deben enviarse junto con la solicitud de API que comprueba si hay una actualización.

Si estás utilizando el actualizador de plugins de nuestro sitio, eso significa que tu producto debe incluir la versión 1.9 o superior del archivo de clase EDD_SL_Plugin_Updater.

Si estás utilizando el actualizador de temas de nuestro sitio, tu producto debe incluir la versión 1.2 o superior.

Si has creado una integración personalizada, debes asegurarte de incluir "php_version" y "wp_version" en tu solicitud de API. Consulta nuestra documentación de la API para más detalles.

Si el sitio de un cliente no incluye la versión o versiones de plataforma en la solicitud de API, entonces esos requisitos no se comprobarán y el usuario aún podría recibir la actualización.

Configuración de requisitos para un producto

Para configurar los requisitos de un producto, edita el producto a través de Descargas > Editar. En la barra lateral derecha, busca un metabox llamado "Requisitos de Descarga". Se ve así:

Simplemente introduce tus versiones mínimas requeridas y guarda. Las versiones que se dejen en blanco no se comprobarán ni serán requeridas.

Añadir requisitos personalizados

Por defecto, Licencias de Software soporta versiones de PHP y WordPress, aunque tus propias dependencias pueden añadirse con algo de código personalizado. Se requieren dos pasos:

1. Añadir tu dependencia al metabox

Añadir una nueva dependencia se hace con un filtro simple como este, que debe añadirse a tu propio sitio:

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

Reemplaza your-platform-id con una versión única y amigable de slug de tu nombre de dependencia, y reemplaza Your Platform Display Name con la versión amigable para mostrar. Aquí tienes un ejemplo de cómo añadir Easy Digital Downloads como requisito:

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

	return $platforms;
} );

Una vez añadido, tu plataforma aparecerá en el metabox:

2. Incluir la versión de la dependencia en tu solicitud de API

Al comprobar si hay una nueva actualización a través de la API (dentro de tu producto), necesitas enviar el número de versión actual de la dependencia en la solicitud de API. Para hacerlo, simplemente tienes que añadir un nuevo argumento: {your platform ID}_version.

Una solicitud de comprobación de versión normalmente se ve así:

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

Pero con nuestro nuevo argumento, se vería así:

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

Observa la adición de &easy-digital-downloads_version=1.0 al final.

Si estás utilizando un actualizador personalizado, puedes añadir el nuevo argumento directamente a los parámetros de la API enviados con la solicitud:

$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
);

Si estás utilizando nuestra clase de actualizador de plugins (versión 1.9 o superior), entonces puedes añadir este argumento a la solicitud de API utilizando un filtro. Este filtro debe ser parte de tu plugin, ya que se ejecuta en los sitios de tus clientes:

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 );

Asegúrate de reemplazar easy-digital-downloads con el ID único que hayas elegido para tu dependencia, y defined( 'EDD_VERSION' ) ? EDD_VERSION : '' con el número de versión actual. Este valor debe poder ser recuperado dinámicamente por el sitio del cliente.

Was this article helpful?

¡Empieza a vender hoy mismo!

Únete a más de 50.000 propietarios de tiendas inteligentes y empieza a usar la forma más fácil de vender productos digitales con WordPress.

Copyright © 2025 Sandhills Development, LLC

[universally_switcher]