WooCommerce Checkout url hook - 根据产品类别更改条件

时间:2016-08-08 08:16:40

标签: php wordpress woocommerce checkout categories

想知道是否有人可以帮我自定义此代码。我想在此代码中更改应用条件:

eval

对于属于WooCommerce中某个类别的产品,是否可以使用自定义结帐网址?

由于

1 个答案:

答案 0 :(得分:3)

是的,有可能做出一些改变:

add_filter( 'woocommerce_get_checkout_url', 'krokedil_change_checkout_url', 30 );
function krokedil_change_checkout_url( $checkout_url ) {

    // Define your SPECIAL CATEGORY here AND your CUSTOM URL
    $my_cat = 'Cat name'; // or for multiple categories
    // $my_cat = array('Cat name1', 'Cat name2'); 
    $my_url = 'http://my_custom_url.com/checkout/'; // custom URL

    $bool_cat = false;
    if ( sizeof( WC()->cart->cart_contents) > 0 ) {
        foreach ( WC()->cart->get_cart() as $cart_item ) {
            $item = $cart_item['data'];

            // =>  Updated a mistake in this line
            if(!empty($item) && !$bool_cat && has_term( $my_cat, 'product_cat', $item->id ) ){
                $bool_cat = true;
            }
        }
        if ( $bool_cat ) { 
            $checkout_url = $my_url;
        } 
        // This is optional
        else {
            $checkout_url = WC()->cart->get_checkout_url();
        }
    }
    return $checkout_url;
}

此代码位于您的插件文件或活动子主题或主题的function.php文件中

参考文献: