1. Inicio
  2. Base de Conocimientos
  3. WooCommerce Wholesale Prices Premium
  4. Envío
  5. Anular la configuración de envío solo para mayoristas para ciertos métodos de envío

Anular la configuración de envío solo para mayoristas para ciertos métodos de envío

En WooCommerce 2.6.0 se introdujeron las zonas de envío, lo que nos impulsó a lanzar una nueva versión de WooCommerce Wholesale Prices Premium con controles de mapeo de envío mejorados.

Una de esas mejoras está relacionada con una configuración llamada Métodos de envío solo para mayoristas, que oculta todos los métodos de envío mapeados a los clientes que no son mayoristas.

Esta es una característica importante para permitir a los administradores ocultar métodos de envío que son exclusivamente para uso de clientes mayoristas. Un ejemplo común de esto podría ser la Recogida Local, que podría ofrecerse solo a clientes mayoristas.

A partir de la versión 1.9.5, para usuarios avanzados, también hemos agregado un nuevo filtro que le permite elegir selectivamente anular esta configuración y exponer ciertos métodos de envío a clientes que no son mayoristas.

La idea aquí es que habilite la configuración porque ese es el comportamiento predeterminado, pero puede haber ciertos métodos de envío que realmente desee exponer a los clientes.

Puede usar este filtro para lograr eso colocando el siguiente código en su archivo functions.php en su tema.

Para que todos los métodos de envío no zonificados estén disponibles:

// Allow all non-zoned shipping methods to be available to regular users
function allowMappedNonZonedMethodsForRegularUsers( $allow, $shipping_method ) {

if ( ! $shipping_method->supports( 'shipping-zones' ) )
$allow = true;

return $allow;

}

add_filter( 'wwpp_force_allow_mapped_shipping_method_for_non_wholesale' , 'allowMappedNonZonedMethodsForRegularUsers', 10, 2 );

O para un método de envío específico no zonificado:

// Allow non-zoned shipping method "Advanced Free Shipping" only to be available to regular users
function allowAdvancedFreeShippingForNonWholesale( $allow, $shipping_method ) {

if ( ! $shipping_method->supports( 'shipping-zones' ) && $shipping_method->id == 'advanced_free_shipping' )
$allow = true;

return $allow;

}

add_filter( 'wwpp_force_allow_mapped_shipping_method_for_non_wholesale' , 'allowAdvancedFreeShippingForNonWholesale', 10, 2 );

¿Necesita permitir un método de envío diferente a "Envío gratuito avanzado"?

Simplemente use la clave ID de su método de envío, por ejemplo, el método de envío de UPS es 'ups', USPS es 'usps' y así sucesivamente.

Póngase en contacto con su desarrollador para averiguar cuál es el ID del método de envío que necesita.

¿Te ha resultado útil este artículo?

Artículos relacionados

¿Necesita soporte?

¿No encuentra la respuesta que busca?
Contactar con soporte
Completa tu Compra