web-dev-qa-db-fra.com

Dans WooCommerce, filtrez les méthodes de paiement disponibles par rôle d'utilisateur.

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.

2
Sergi

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/

7
Pribhav

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;
  }
6
Sonali