如何移除WooCommerce结账区块中的「联系信息」板块?
如何移除WooCommerce结账区块中的「联系信息」板块?
嘿,我来帮你搞定这个需求!要让WooCommerce结账页直接从「账单详情」开始,完全去掉顶部的「联系信息」板块(包括那个必填的邮箱字段),这里有两种实用的方法,你可以根据自己的情况选:
方法一:用代码彻底移除(推荐)
这个方法能真正把联系信息板块和邮箱字段从结账流程里删掉,不会有残留问题。你可以把下面的代码添加到子主题的functions.php文件里,或者用「Code Snippets」这类代码插件来添加(更安全,避免主题更新后代码丢失):
// 移除结账页的联系信息板块及邮箱字段 add_action('init', 'remove_checkout_contact_section'); function remove_checkout_contact_section() { // 移除邮箱字段 if (isset(WC()->checkout()->checkout_fields['billing']['billing_email'])) { unset(WC()->checkout()->checkout_fields['billing']['billing_email']); } // 移除联系信息板块 add_filter('woocommerce_checkout_sections', 'remove_contact_info_section'); } function remove_contact_info_section($sections) { if (isset($sections['contact'])) { unset($sections['contact']); } return $sections; } // 确保邮箱字段不再是必填项(避免结账报错) add_filter('woocommerce_billing_fields', 'unset_email_required'); function unset_email_required($fields) { if(isset($fields['billing_email'])) { $fields['billing_email']['required'] = false; } return $fields; }
添加完代码后,刷新结账页就能看到效果啦,联系信息板块会直接消失,表单从「账单详情」开始展示。
方法二:用CSS临时隐藏(不推荐长期用)
如果你只是想快速视觉上隐藏这个板块,也可以用CSS,但要注意:这种方法只是把板块藏起来,后台的字段还是存在的,而且如果邮箱字段还是必填的话,可能会导致用户结账时因为看不到邮箱字段而报错。
把下面的CSS添加到主题的自定义CSS里(外观→自定义→额外CSS):
.woocommerce-checkout .woocommerce-checkout__customer-details .woocommerce-checkout-contact-fields { display: none !important; }
备注:内容来源于stack exchange,提问作者Aamir M Zobayer
相关产品推荐
相关产品推荐

