WooCommerce添加到购物车挂起

时间:2017-11-01 21:13:38

标签: php wordpress function woocommerce roles

我正在建立一个woocommerce网站,我需要一个产品可供客户(用户)购买,这些客户具有与产品品牌名称相同的自定义功能(品牌名称是产品属性)。通过这种方式,我可以决定哪个用户可以购买每个品牌的产品。

在线搜索我发现了一些我根据自己的需求调整的代码:

// Disable purchase based on users capabilities
function check_brand_purchase_capability( $purchasable, $product ) {

// Don't run on parents of variations,
// this will already check variations separately            
if ( $product->is_type( 'variable' ) ) {
    return $purchasable;
}

global $product;
$brand_name = strtolower ( $product->get_attribute( 'pa_brand' ) );

// Check if user has the capability corresponding to the brand name
if ( current_user_can( $brand_name ) ) {
    $purchasable = true;
} else {
    $purchasable = false;
}

// Double-check for variations: if parent is not purchasable, then variation is not
if ( $purchasable && $product->is_type( 'variation' ) ) {
        $purchasable = $product->parent->is_purchasable();
}

return $purchasable;
}
add_filter( 'woocommerce_variation_is_purchasable', 
'check_brand_purchase_capability', 10, 2 );
add_filter( 'woocommerce_is_purchasable', 'check_brand_purchase_capability', 
10, 2 );

使用此代码,无论用户是否具有正确的功能,我都会正确启用/禁用“添加到购物车”按钮。

问题是当按钮启用并且我点击“添加到购物车”时,按钮挂起并且没有任何反应。 有谁知道为什么会这样?谢谢你的帮助

0 个答案:

没有答案
相关问题