【发布时间】:2019-04-11 21:54:45
【问题描述】:
我有两种角色,普通客户和批发客户。批发客户应该可以延期交货,普通客户不允许延期交货。我不是 php 开发人员,我的代码还没有工作,请帮助我使其工作:
add_filter( 'woocommerce_product_backorders_allowed', 'woocommerce_product_backorders_allowed', 10, 3 );
function woocommerce_product_backorders_allowed( $backorder_allowed, $product_id, $product ){
$targeted_user_role = 'zakelijke_klant';
$user_data = get_userdata(get_current_user_id());
if ( in_array( $targeted_user_role, $user_data->roles ) ) {
$backorder_allowed = true;
}
return $backorder_allowed;
}
【问题讨论】:
-
代码肉眼看起来不错。您可以进行某种调试以查看此过滤器功能是否接收控制。一个非常简单的方法是使用
wp_mail和echo $product_id。它会告诉我们过滤器没有任何语法错误并且正在被调用。
标签: php wordpress woocommerce product user-roles