php - 在 WooCommerce 中隐藏客户用户角色的结帐帐单字段
问题描述
问题:如何添加仅基于用户角色(在本例中为客户)隐藏计费字段的代码。
使用以下代码,我们可以向登录用户隐藏购物车中的账单详细信息:
add_filter( 'woocommerce_checkout_fields', 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
if( is_user_logged_in() ){
exec($fields['billing']);
$fields['billing'] = array();
}
return $fields;
}
解决方案
使用适用于用户角色的 WordPresscurrent_user_can()
条件函数,例如:
add_filter( 'woocommerce_checkout_fields', 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
if( current_user_can('customer') ){
exec($fields['billing']);
$fields['billing'] = array();
}
return $fields;
}
代码位于您的活动子主题(或活动主题)的 function.php 文件中。它应该有效。
推荐阅读
- apache-nifi - NiFi 注册表无法运行
- flutter - 如何在 Flutter 的 Textfield 中启用 Tab(网页版)?
- sdn - 为什么我们在使用“可编程数据平面”时需要控制器?
- regex - 带有特殊字符的 MongoDB 查询
- ubuntu - 如何在 Ubuntu 上支持所有语言(字体)
- python - 如何在将“聚合”列分配给新列时对两列进行分组?
- vue.js - iframe 中的 Windows 事件
- r - 在数据框中每第四列插入 8 个空 (NA) 列
- java - 将相同的数据添加到多个折线图
- django - 无法删除对象 - ?csrfmiddlewaretoken= 出现在 urlbar (django) 中当前 URL 的末尾