You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WooCommerce结账页添加字段无效,是否与Boutique Designer Shop主题有关?

WooCommerce结账页添加公司名字段无效的排查方案

主题导致的可能性极高

很多免费主题会自定义WooCommerce的结账模板,直接覆盖了默认钩子(比如你用的woocommerce_before_order_notes),导致代码和插件的触发逻辑失效。可以按以下步骤验证和解决:

  • 先验证是否是主题问题
    临时切换到WooCommerce官方默认主题Storefront,重新测试你的代码或插件功能。如果切换后字段能正常显示,那100%是当前「Boutique Designer Shop」主题的问题。

  • 确认是主题问题后的解决办法

    1. 修改主题结账模板(需用子主题)
      找到主题目录下的woocommerce/checkout/form-checkout.php或相关结账模板文件,在账单信息区域手动插入公司名字段代码:

      <p class="form-row form-row-wide">
          <label for="billing_company"><?php _e( '公司名称', 'woocommerce' ); ?> <?php if ( wc_get_option( 'woocommerce_checkout_company_field_required' ) ) : ?><span class="required">*</span><?php endif; ?></label>
          <input type="text" class="input-text" name="billing_company" id="billing_company" value="<?php echo esc_attr( $checkout->get_value( 'billing_company' ) ); ?>" />
      </p>
      

      注意:必须先创建并启用主题的子主题,再修改模板,避免主题更新后丢失修改内容。

    2. 尝试替换其他钩子
      部分主题只是禁用了特定钩子,试试其他结账相关钩子,比如woocommerce_checkout_after_customer_details,用标准的WooCommerce字段函数添加:

      add_action('woocommerce_checkout_after_customer_details', 'add_custom_company_field' );
      function add_custom_company_field() {      
          woocommerce_form_field( 'billing_company', array(
              'type'          => 'text',
              'class'         => array('form-row-wide'),
              'label'         => __('公司名称'),
              'required'      => false, // 按需设置是否必填
          ), WC()->checkout->get_value( 'billing_company' ));
      }
      
    3. 检查主题设置
      有些主题会在自定义izer或主题选项里设置「隐藏结账额外字段」的开关,检查是否有相关选项被开启,关闭后再测试。

内容的提问来源于stack exchange,提问作者IrinaB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 19:57:04