Woocommerce $ backorder_allowed, похоже, не работает - PullRequest
0 голосов
/ 03 октября 2019

Я пытаюсь разрешить обратные заказы только для определенных ролей пользователей в WooCommerce.

На основе " Отключить задержку заказа для определенной роли пользователя в Woocommerce " ответ, вот мой слегка измененный код с использованием фильтра woocommerce_product_backorders_allowed.:

add_filter( 'woocommerce_product_backorders_allowed', 'products_backorders_allowed', 10, 3 );
function products_backorders_allowed( $backorder_allowed, $product_id, $product ){
    $user       = wp_get_current_user();
    $user_roles = (array) $user->roles;
    if( in_array( 'customer', $user_roles ) && ! in_array( 'gold', $user_roles ) ){
        $backorder_allowed = false;
    }
    return $backorder_allowed;
}

Я отключил все плагины, кроме WooCommerce, и для отладки использую тему магазина по умолчанию. до сих пор не могу заставить его работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...