问题:如何添加仅基于用户角色(在本例中为客户)隐藏计费字段的代码。
使用以下代码,我们可以对已登录用户隐藏购物车中的帐单详细信息:
var submessages = mongoose.Schema({
date: String,
type: String,
title: String,
text: String
});
var subitems = new mongoose.Schema({
title: String,
messages: [submessages]
});
var menuItems = new mongoose.Schema({
title : String,
subitem: [subitems]
}, {collection: 'menu_items'});
module.exports = mongoose.model("menu_items", menuItems);
答案 0 :(得分:1)
使用可与用户角色配合使用的WordPress current_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文件中。应该可以。
答案 1 :(得分:0)
出于某种原因,在我的情况下,这仍然显示 billing_first_name_field
。还有标题。以下代码工作正常:
add_filter( 'woocommerce_checkout_fields', 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
if( current_user_can('customer') ){
exec($fields['billing']);
unset($fields['billing']); //this was changed
}
return $fields;
}