在WooCommerce 3中的特定运送方式下方添加一个复选框

Akb*_*rov 5 php wordpress woocommerce hook-woocommerce shipping-method

我正在尝试自定义WC Checkout页面。在结帐页面上,我设置了2种送货方式我的目标是在第一种运输方式下添加一个自定义字段。为此,我使用了下面提到的钩子。

woocommerce_after_shipping_rate
Run Code Online (Sandbox Code Playgroud)

但是我的问题是,它只是为每种可用的运输方式添加了相同的字段。如何管理特定运输方式的输入字段?

Loi*_*tec 7

使用作为Object$method实例的参数,WC_Shipping_Rate您可以使用get_id()method来定位任何运输方式 Id ,如下例所示:

add_action( 'woocommerce_after_shipping_rate', 'checkout_shipping_additional_field', 20, 2 );
function checkout_shipping_additional_field( $method, $index )
{
    if( $method->get_id() == 'flat_rate:12' ){
        echo '<br>
        <input type="checkbox" name="shipping_custom_1" id="shipping_custom_1" value="1" class="shipping_method shipping_custom_1">
        <label for="shipping_custom_1">Custom label</label>';
    }
}
Run Code Online (Sandbox Code Playgroud)

代码位于活动子主题(或活动主题)的 function.php 文件中。测试和工作。

在此处输入图片说明

在此处输入图片说明


类似的回答: