Drupal Commerce: Comment obtenir les paramètres du module de paiement?

8

Comment récupérer par programmation la configuration du module de paiement spécifique?

j'ai essayé

$settings = rules_config_load('commerce_payment_MODULE_NAME');

Il renvoie des informations très basiques (nom, ID, etc.) et un tableau de "paramètres" vide.

Impossible également de l'obtenir directement à partir de DB.

Il est stocké dans un tableau sérialisé qui ne peut pas être entièrement traité avec la unserialize()fonction.

volocuga
la source

Réponses:

16

J'utilise ceci:

$payment = commerce_payment_method_instance_load('foo|commerce_payment_foo');

fooest l'identifiant de chaîne du mode de paiement.

Le tableau résultant contient l' 'settings'index, avec les données enregistrées dans le formulaire de paramètres.


En d'autres termes, foo|commerce_payment_fooc'est l'ID d'instance qui consiste method_id|rule_name.

Le method_idpeut être trouvé en exécutant commerce_payment_methods()et rule_namepeut être trouvé dans l'URL lors de la modification de l'action de paiement (à /admin/commerce/config/payment-methods).

Gedvan Dias
la source
cela est vraiment utile pour moi, existe-t-il un moyen de valider le formulaire de paramètres?
svetlio
Où puis-je obtenir l'identifiant de chaîne de méthode de paiement «foo» et «commerce_payment_foo»?
Randell