php - 在 Woocommerce 中取消设置有条件的计费字段
问题描述
如果结帐页面基于某个页面模板,我正在尝试删除一些必需的计费字段。
如果我删除 if 条件,下面代码中的所有内容都可以正常工作,但是即使未设置字段,它仍然会在提交时引发所需的字段错误。我还尝试了不同的条件,例如检查 $_GET 变量,但这也不起作用,但这是一个选项。
function custom_override_checkout_fields( $fields ) {
if ( is_page_template( 'page-simple.php') ) {
unset($fields['billing']['billing_company']);
unset($fields['billing']['billing_address_1']);
unset($fields['billing']['billing_address_2']);
unset($fields['billing']['billing_city']);
unset($fields['billing']['billing_postcode']);
unset($fields['billing']['billing_country']);
unset($fields['billing']['billing_state']);
unset($fields['order']['order_comments']);
return $fields;
} else {
return $fields;
}
}
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
我已经通过更改为二十六并禁用所有不必要的插件来排除插件或主题冲突。截至发稿时,我正在运行最新版本的 Woocommerce。我正在运行 One Page Checkout 插件为我提供单独的结帐页面,但将其排除为问题,因为当存在条件时,这也不适用于常规结帐。
如果我遗漏了一些有助于解决此问题的信息,请告诉我。
解决方案
推荐阅读
- javascript - 如何将重定向从 iframe 传递到父页面?[从 iFrame 中脱颖而出]
- tsql - 根据问题和日期显示不同的总数
- java - SpringBoot org.springframework.beans.factory.BeanCreationException:创建名为“requestMappingHandlerMapping”的bean时出错
- javascript - 获取嵌套对象长度
- excel - 通过检查单元格从一个工作簿复制到另一个工作簿
- authentication - 如何在 Bloc Login Flutter 中使用带有身份验证的 NavigationDrawer 路由
- java - Java构建相互依赖的事件链
- firebase - 为什么 Firebase REST API 响应针对不同的数据类型有不同的数组?
- mysql - 如何通过 where 子句替换左连接中的条件?
- jenkins - 如何在 shell 的 jenkins 阶段日志中不显示命令