Est-il possible de filtrer les méthodes de paiement disponibles pour certains rôles d'utilisateur en utilisant simplement la configuration de WooCommerce? Sans rien ajouter à aucun fichier modèle, je veux dire. Ce que je veux réaliser est de donner la possibilité de payer avec une carte de crédit uniquement à certains utilisateurs.
Ce n'est pas possible avec la configuration par défaut de WooCommerce.
Vous devez installer le plugin ci-dessous.
https://codecanyon.net/item/woocommerce-role-based-payment-shipping-methods/18953727
ou par programme, vous pouvez vous référer au lien ci-dessous.
https://businessbloomer.com/disable-payment-gateway-specific-user-role-woocommerce/
Vous pouvez utiliser ce qui suit:
add_filter('woocommerce_available_payment_gateways', 'filter_gateways', 1);
function filter_gateways($gateways)
{
$current_user = wp_get_current_user();
$role = $current_user->roles;
global $woocommerce;
/* add your user role in condition and payment method which you need to unset*/
if ($role[0] == 'administrator') {
unset($gateways['cod']);
}
return $gateways;
}