en el uso de Kadence Cuando se utiliza Pattern Hub, puede generar claves de acceso para la biblioteca de diseño y facilitar el acceso a otras personas. Si desea acceder a la biblioteca a través del WooCommerce La venta de estas claves de acceso requiere el uso de herramientas más potentes para generar y gestionar las claves.El plugin WooCommerce Software License y el plugin License Manager for WooCommerce son soluciones ideales. En este artículo, presentaremos estedosLa configuración básica del plug-in y cómo se integra con Kadence Pattern Hub para la venta de claves de acceso.
![Imagen [1]-Guía completa para vender claves de acceso Kadence Pattern Hub en WooCommerce](https://www.361sale.com/wp-content/uploads/2025/04/20250403164238406-image.png)
Paso 1: Crear un producto Pattern Hub Access
En primer lugar, en WooCommerce Crear un nuevo producto en el que el producto se utilizará para vender claves de acceso. Configura el producto como un producto virtual sin utilizar el proceso de envío.
- Creación de productos virtuales
entrar en WordPress Backend, seleccione WooCommerce -> Productos -> Añadir Nuevo Productoy configurado como producto virtual.
![Imagen [2]-Guía completa para vender claves de acceso Kadence Pattern Hub en WooCommerce](https://www.361sale.com/wp-content/uploads/2025/04/20250403164456342-image.png)
- Licencia de configuración
Dependiendo del plugin utilizado (WooCommerce Software License o License Manager for WooCommerce), configure la licencia del producto y asóciela con el Generador de Claves de Acceso.
![Imagen [3]-Guía completa para vender claves de acceso Kadence Pattern Hub en WooCommerce](https://www.361sale.com/wp-content/uploads/2025/04/20250403164521401-image.png)
![Imagen [4]-Guía completa para vender claves de acceso Kadence Pattern Hub en WooCommerce](https://www.361sale.com/wp-content/uploads/2025/04/20250403164543973-image.png)
Paso 2: Conectar el Kadence Pattern Hub a la validación de licencias
existe WooCommerce Después de vender una clave de acceso en Kadence Pattern Hub, debe asegurarse de que Kadence Pattern Hub pueda verificar la validez de la licencia. Para hacer esto, necesita agregar un campo personalizado PHP Filtrar.
Configuración del filtro de licencias de software de WooCommerce::
El siguiente fragmento de código comprobará si la licencia es válida y está activada para el dominio solicitado en el momento de la solicitud. Si la clave es válida y está activada, el acceso se devuelve como permitido.
/**
* Validates license with WooCommerce Software License.
*
* @param Boolean $access true or false based on access.
* @param String $key the access key.
* @param WP_REST_Request $request full details about the request.
* @return Boolean based on if access should be granted.
*/
function custom_check_cloud_access( $access, $key, $request ) {
// If true the key matches with settings in Kadence Pattern Hub. Let that pass for testing purposes.
if ( $access ) {
return $access;
}
// Make sure WooCommerce Software License exists.
global $WOO_SL_API;
if ( $WOO_SL_API ) {
$site = preg_replace('(^https?://)', '', $request->get_param( 'site' ) );
$args = array(
'licence_key' => $key,
'domain' => $site,
'woo_sl_action' => 'status-check',
'product_unique_id' => 'PRODUCT_UNIQUE_ID',
);
$response = $WOO_SL_API->API_call( $args );
$response = json_decode( $response );
end( $response );
$response_data = current( $response );
if ( is_object( $response_data ) && 'success' === $response_data->status ) {
// Lets activate it for this domain if it's not.
if ( $response_data->status_code && 's203' === $response_data->status_code ) {
$args['woo_sl_action'] = 'activate';
$response = $WOO_SL_API->API_call( $args );
}
return true;
} else if ( is_object( $response_data ) && 'error' === $response_data->status ) {
// Lets activate it for this domain if possible.
if ( $response_data->status_code && 'e204' === $response_data->status_code ) {
$args['woo_sl_action'] = 'activate';
$response = $WOO_SL_API->API_call( $args );
$response = json_decode( $response );
end( $response );
$response_data = current( $response );
if ( is_object( $response_data ) && 'success' === $response_data->status ) {
return true;
} else {
return false;
}
} else {
return false;
}
} else {
return false;
}
}
return $access;
}
add_filter( 'kadence_cloud_rest_request_access', 'custom_check_cloud_access', 10, 3 );
Restringir el acceso a determinadas colecciones de la biblioteca de modelos
Si desea restringir una determinada clave de acceso para que sólo acceda a una colección específica de bibliotecas de esquemas, puede hacerlo con el siguiente código:
/**
* Establecer el acceso a una colección específica de bibliotecas del centro de patrones.
/** * Establecer el acceso a una colección específica de bibliotecas del centro de patrones.
* @param array $args los argumentos de consulta para recuperar elementos.
* @param string $key la clave de acceso.
* @param array $request_extras los argumentos extra para la petición. @return array with updated query args.
* @return array with updated query args.
*/
function custom_kadence_cloud_query_args( $args, $key, $request_extras ) {
¡si ( ! isset( $args['tax_query'] ) ) {
$args['tax_query'] = array(
array(
'taxonomy' => 'kadence-cloud-collections',
'field' => 'slug',
'terms' => array( 'COLLECTION_SLUG')
),
);
}
return $args.
}
add_filter( 'kadence_cloud_template_query_args', 'custom_kadence_cloud_query_args', 10, 3 );
Venta de claves de acceso para varias colecciones
Si tiene varias colecciones de esquemas para vender, puede hacerlo estableciendo un prefijo de licencia diferente para cada colección:
/**
* Validates license with WooCommerce Software License.
*
* @param Boolean $access true or false based on access.
* @param String $key the access key.
* @param WP_REST_Request $request full details about the request.
* @return Boolean based on if access should be granted.
*/
function custom_check_cloud_access( $access, $key, $request ) {
// If true the key matches with settings in Kadence Pattern Hub. Let that pass for testing purposes.
if ( $access ) {
return $access;
}
// Make sure WooCommerce Software License exists.
global $WOO_SL_API;
if ( $WOO_SL_API ) {
if ( substr( $key, 0, strlen( 'col_one' ) ) === 'col_one' ) {
$product_id = 'PRODUCT_UNIQUE_ID';
} else {
$product_id = 'PRODUCT_UNIQUE_ID_TWO';
}
$site = preg_replace('(^https?://)', '', $request->get_param( 'site' ) );
$args = array(
'licence_key' => $key,
'domain' => $site,
'woo_sl_action' => 'status-check',
'product_unique_id' => $product_id,
);
$response = $WOO_SL_API->API_call( $args );
$response = json_decode( $response );
end( $response );
$response_data = current( $response );
if ( is_object( $response_data ) && 'success' === $response_data->status ) {
// Lets activate it for this domain if it's not.
if ( $response_data->status_code && 's203' === $response_data->status_code ) {
$args['woo_sl_action'] = 'activate';
$response = $WOO_SL_API->API_call( $args );
}
return true;
} else if ( is_object( $response_data ) && 'error' === $response_data->status ) {
// Lets activate it for this domain if possible.
if ( $response_data->status_code && 'e204' === $response_data->status_code ) {
$args['woo_sl_action'] = 'activate';
$response = $WOO_SL_API->API_call( $args );
$response = json_decode( $response );
end( $response );
$response_data = current( $response );
if ( is_object( $response_data ) && 'success' === $response_data->status ) {
return true;
} else {
return false;
}
} else {
return false;
}
} else {
return false;
}
}
return $access;
}
add_filter( 'kadence_cloud_rest_request_access', 'custom_check_cloud_access', 10, 3 );
Gestor de licencias para WooCommerce Configuración de filtros
Si está utilizando el plugin License Manager for WooCommerce, lo siguiente PHP El código le ayudará a verificar la validez de la licencia:
/**
* Valida la licencia con el gestor de licencias para woocommerce.
/** * Valida la licencia con el gestor de licencias para woocommerce.
* @param Boolean $access verdadero o falso en función del acceso.
* @param String $key la clave de acceso.
* @param WP_REST_Request $request todos los detalles sobre la petición. * @return Boolean basado en WP_REST_Request.
* @return Boolean basado en si el acceso debe ser concedido.
*/ function custom_check_cloud
function custom_check_cloud_access( $access, $key, $request ) {
// Si es verdadero, la clave coincide con la configuración de Kadence Cloud.
Si es true la clave coincide con la configuración en Kadence Cloud. if ( $access ) {
if ( $access ) { return $access; // Si es cierto, la clave coincide con la configuración de Kadence Cloud.
}
// Asegúrese de que el gestor de licencias para woocommerce existe.
if ( class_exists( 'LicenseManagerForWooCommerce\Repositories\Resources\License' ) ) {
$license = \LicenseManagerForWooCommerce\Repositories\Resources\License::instance()->findBy(
array( 'hash' => apply_filters( 'lmfwc_hash', $key ) )
);
¡if ( ! $license ) {
// No se ha encontrado ninguna licencia.
return false; } else { // No se ha encontrado ninguna licencia.
} else {
// Comprobar si ha caducado.
$expiresAt = $license->getExpiresAt(); $dateExpiresAt = new DateTime($expires)
$dateExpiresAt = new DateTime($expiresAt); $dateNow
$dateNow = new DateTime('now', new DateTimeZone('UTC'));
if ( $dateNow getTimesActivated() ) update(
$license->getId(),
array(
times_activated' => $timesActivatedNew
)
);
}
// Tenemos éxito devolvemos true.
We have success lets return true.
}
}
return $access; }
}
add_filter( 'kadence_cloud_rest_request_access', 'custom_check_cloud_access', 10, 3 );
resúmenes
combinando WooCommerce plug-in de licencia de software o License Manager para WooCommerce plug-in.Kadence Pattern Hub ofrece potentes funciones de gestión de claves de acceso. Estos plugins te ayudan a gestionar fácilmente las claves de acceso, establecer controles de permisos precisos y admiten la venta de varias colecciones, lo que facilita enormemente la venta y gestión de contenidos.
| Contacte con nosotros | |
|---|---|
| ¿No puede leer el tutorial? Póngase en contacto con nosotros para obtener una respuesta gratuita. Ayuda gratuita para sitios personales y de pequeñas empresas |
Servicio de atención al cliente WeChat
|
| ① Tel: 020-2206-9892 | |
| ② QQ咨询:1025174874 | |
| (iii) Correo electrónico: info@361sale.com | |
| ④ Horario de trabajo: de lunes a viernes, de 9:30 a 18:30, días festivos libres | |
Enlace a este artículo:https://www.361sale.com/es/49064El artículo está protegido por derechos de autor y debe ser reproducido con atribución.




















![Emoji[wozuimei]-Photonflux.com | Servicio profesional de reparación de WordPress, en todo el mundo, respuesta rápida](https://www.361sale.com/wp-content/themes/zibll/img/smilies/wozuimei.gif)
![Emoticono [baoquan] - Photon Wave Network | Servicios profesionales de reparación de WordPress, cobertura mundial, respuesta rápida](https://www.361sale.com/wp-content/themes/zibll/img/smilies/baoquan.gif)

Sin comentarios