php - 默认情况下在结帐页面上显示运输字段

标签 php wordpress woocommerce checkout billing

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

我希望始终选中此 ckeckbox,以默认显示帐单明细。

我试过设置:

$checkout = 1;

到目前为止运气不好。单选按钮由以下钩子(Hook)显示:

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

任何让我知道如何实现这一目标的帮助都会非常有帮助。

谢谢。

最佳答案

如果您查看 checkout/form-shipping.php 的代码 WooCommerce 模板,在 <h3>标签,checkbox代码所在位置,有woocommerce_ship_to_different_address_checked 钩子(Hook),你可以用它来实现。这是此代码模板的摘录,显示了它:

?>
<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">

所以你可以这样使用这个钩子(Hook),让这个复选框始终被选中并显示账单明细:

add_filter( 'woocommerce_ship_to_different_address_checked', '__return_true');

此代码位于您的事件子主题(或主题)的 function.php 文件中或任何插件文件中。

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

关于php - 默认情况下在结帐页面上显示运输字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39710591/

相关文章:

要覆盖的 CSS 定位元素(Wordpress 主题)

php - 关于国家/地区更改 Ajax 更新 Woocommerce 中运输的结账

javascript - 如何防止空输入?

PHP MYSQL if null 语句

javascript - Jquery 自动完成自定义 HTML 结果

php - PHP PDO 语句可以接受表名或列名作为参数吗?

javascript - Wp 媒体库元框无法读取未定义的属性 'state'

css - Wordpress 插件 - CSS 未加载

php - 获取 Woocommerce 订单接收页面中的订单 ID 作为简码

javascript - 在链接内为 <a> 着色