我刚刚创建了一个ID为custom_shipping
的自定义Woocommerce送货方式。该选项现在出现在Woocommerce上 - >设置 - >送货管理页面。
我想根据用户的凭据动态设置送货方式。默认方法是flat_rate
。
问题:
如何为满足要求的用户在整个会话期间将送货方式设置为custom_shipping
?
尝试:
$chosen_methods = $woocommerce->session->set('chosen_shipping_methods', array('purolator_shipping');
这会设置会话变量" selected_shipping_methods'正确地在我的cart
页面上,但在转到checkout
后,会话将返回使用flat_rate
送货方式。
必须有一个钩子或过滤器,我可以插入它来改变购物车会话创建时的运输方法。 (当用户第一次向购物车添加内容时)。
我希望在加载其他任何内容之前设置新的送货方式,以便装运方法在购物车和结帐摘要中看起来正确。
指导赞赏。
答案 0 :(得分:0)
// WC()->session->set('chosen_shipping_methods', array( 'your_shipping_rate_id_here' ) );
示例:
WC()->session->set('chosen_shipping_methods', array( 'flat_rate:1' ) );