首页 文章

在结帐页面上默认显示送货字段

提问于
浏览
1

在我的WooCommerce结帐页面上,我只销售一种产品 . 结帐页面显示此产品,旁边有 ckeckbox ,以便在点击时显示送货详细信息 . 这是默认的 form-checkout.php WooCommerce模板 .

我希望始终选择此 ckeckbox ,以默认显示结算明细 .

我试过设置:

$checkout = 1;

到目前为止没有运气 . 单选按钮显示如下:

<?php do_action( 'woocommerce_checkout_before_customer_details'); ?>

任何帮助让我知道如何实现这一目标将非常有帮助 .

谢谢 .

1 回答

  • 2

    如果您查看 checkout/form-shipping.php WooCommerce模板的代码,在复选框代码所在的 <h3> 标记内,可以使用 woocommerce_ship_to_different_address_checked 钩子来实现该目的 . 以下是此代码模板的摘录,显示了以下内容:

    ?>
    <div class="woocommerce-shipping-fields">
        <?php if ( true === WC()->cart->needs_shipping_address() ) : ?>
    
            <h3 id="ship-to-different-address">
                <label for="ship-to-different-address-checkbox" class="checkbox"><?php _e( 'Ship to a different address?', 'woocommerce' ); ?></label>
                <input id="ship-to-different-address-checkbox" class="input-checkbox" <?php checked( apply_filters( 'woocommerce_ship_to_different_address_checked', 'shipping' === get_option( 'woocommerce_ship_to_destination' ) ? 1 : 0 ), 1 ); ?> type="checkbox" name="ship_to_different_address" value="1" />
            </h3>
    
            <div class="shipping_address">
    

    因此,您可以通过这种方式使用此挂钩,以便始终选中此复选框并显示结算明细:

    add_filter( 'woocommerce_ship_to_different_address_checked', '__return_true');
    

    此代码位于活动子主题(或主题)的function.php文件中,或者也可以放在任何插件文件中 .

    代码经过测试并且功能齐全 .

相关问题