Sélectionner une page

J’utilise pour un projet le plugin pour WordPress Easy Digital Downloads. C’est une solution complète d’e-commerce pour la vente de produits numériques (voir le site ici et la démo ici).

La passerelle de paiement PayPal est incluse par défaut et d’autres sont disponibles dans les extensions sur le site d’Easy Digital Downloads.

Pour ma part il me fallait une passerelle pour les Cartes Bancaires françaises, le virement bancaire avec les infos du compte, un paiement par chèque avec l’adresse postale où l’envoyer.
J’ai trouvé sur un site en anglais (voir ici) ce qu’il me faut, mais bien entendu, il faut adapter un peu pour faire ce que l’on veut.
Je vous donne le code en entier pour réaliser cela, le code est détaillé sur le site :

[pastacode manual= »%3C%3Fphp%0D%0A%2F*%0D%0APlugin%20Name%3A%20Easy%20Digital%20Downloads%20-%20Sample%20Gateway%0D%0APlugin%20URL%3A%20http%3A%2F%2Feasydigitaldownloads.com%2Fextension%2Fsample-gateway%0D%0ADescription%3A%20A%20sample%20gateway%20for%20Easy%20Digital%20Downloads%0D%0AVersion%3A%201.0%0D%0AAuthor%3A%20Pippin%20Williamson%0D%0AAuthor%20URI%3A%20https%3A%2F%2Fpippinsplugins.com%0D%0AContributors%3A%20mordauk%0D%0A*%2F%0D%0A%20%0D%0A%20%0D%0A%2F%2F%20registers%20the%20gateway%0D%0Afunction%20pw_edd_register_gateway(%24gateways)%20%7B%0D%0A%09%24gateways%5B’sample_gateway’%5D%20%3D%20array(‘admin_label’%20%3D%3E%20’Sample%20Gateway’%2C%20’checkout_label’%20%3D%3E%20__(‘Sample%20Gateway’%2C%20’pw_edd’))%3B%0D%0A%09return%20%24gateways%3B%0D%0A%7D%0D%0Aadd_filter(‘edd_payment_gateways’%2C%20’pw_edd_register_gateway’)%3B%0D%0A%20%0D%0Afunction%20pw_edd_sample_gateway_cc_form()%20%7B%0D%0A%09%2F%2F%20register%20the%20action%20to%20remove%20default%20CC%20form%0D%0A%09return%3B%0D%0A%7D%0D%0Aadd_action(‘edd_sample_gateway_cc_form’%2C%20’pw_edd_sample_gateway_cc_form’)%3B%0D%0A%20%0D%0A%2F%2F%20processes%20the%20payment%0D%0Afunction%20pw_edd_process_payment(%24purchase_data)%20%7B%0D%0A%20%0D%0A%09global%20%24edd_options%3B%0D%0A%20%0D%0A%09%2F**********************************%0D%0A%09*%20set%20transaction%20mode%0D%0A%09**********************************%2F%0D%0A%20%0D%0A%09if(edd_is_test_mode())%20%7B%0D%0A%09%09%2F%2F%20set%20test%20credentials%20here%0D%0A%09%7D%20else%20%7B%0D%0A%09%09%2F%2F%20set%20live%20credentials%20here%0D%0A%09%7D%0D%0A%20%0D%0A%09%2F**********************************%0D%0A%09*%20check%20for%20errors%20here%0D%0A%09**********************************%2F%0D%0A%20%0D%0A%09%2F*%0D%0A%09%2F%2F%20errors%20can%20be%20set%20like%20this%0D%0A%09if(!isset(%24_POST%5B’card_number’%5D))%20%7B%0D%0A%09%09%2F%2F%20error%20code%20followed%20by%20error%20message%0D%0A%09%09edd_set_error(’empty_card’%2C%20__(‘You%20must%20enter%20a%20card%20number’%2C%20’edd’))%3B%0D%0A%09%7D%0D%0A%09*%2F%0D%0A%20%0D%0A%09%2F%2F%20check%20for%20any%20stored%20errors%0D%0A%09%24errors%20%3D%20edd_get_errors()%3B%0D%0A%09if(!%24errors)%20%7B%0D%0A%20%0D%0A%09%09%24purchase_summary%20%3D%20edd_get_purchase_summary(%24purchase_data)%3B%0D%0A%20%0D%0A%09%09%2F**********************************%0D%0A%09%09*%20setup%20the%20payment%20details%0D%0A%09%09**********************************%2F%0D%0A%20%0D%0A%09%09%24payment%20%3D%20array(%20%0D%0A%09%09%09’price’%20%3D%3E%20%24purchase_data%5B’price’%5D%2C%20%0D%0A%09%09%09’date’%20%3D%3E%20%24purchase_data%5B’date’%5D%2C%20%0D%0A%09%09%09’user_email’%20%3D%3E%20%24purchase_data%5B’user_email’%5D%2C%0D%0A%09%09%09’purchase_key’%20%3D%3E%20%24purchase_data%5B’purchase_key’%5D%2C%0D%0A%09%09%09’currency’%20%3D%3E%20%24edd_options%5B’currency’%5D%2C%0D%0A%09%09%09’downloads’%20%3D%3E%20%24purchase_data%5B’downloads’%5D%2C%0D%0A%09%09%09’cart_details’%20%3D%3E%20%24purchase_data%5B’cart_details’%5D%2C%0D%0A%09%09%09’user_info’%20%3D%3E%20%24purchase_data%5B’user_info’%5D%2C%0D%0A%09%09%09’status’%20%3D%3E%20’pending’%0D%0A%09%09)%3B%0D%0A%20%0D%0A%09%09%2F%2F%20record%20the%20pending%20payment%0D%0A%09%09%24payment%20%3D%20edd_insert_payment(%24payment)%3B%0D%0A%20%0D%0A%09%09%24merchant_payment_confirmed%20%3D%20false%3B%0D%0A%20%0D%0A%09%09%2F**********************************%0D%0A%09%09*%20Process%20the%20credit%20card%20here.%0D%0A%09%09*%20If%20not%20using%20a%20credit%20card%0D%0A%09%09*%20then%20redirect%20to%20merchant%0D%0A%09%09*%20and%20verify%20payment%20with%20an%20IPN%0D%0A%09%09**********************************%2F%0D%0A%20%0D%0A%09%09%2F%2F%20if%20the%20merchant%20payment%20is%20complete%2C%20set%20a%20flag%0D%0A%09%09%24merchant_payment_confirmed%20%3D%20true%3B%09%09%0D%0A%20%0D%0A%09%09if(%24merchant_payment_confirmed)%20%7B%20%2F%2F%20this%20is%20used%20when%20processing%20credit%20cards%20on%20site%0D%0A%20%0D%0A%09%09%09%2F%2F%20once%20a%20transaction%20is%20successful%2C%20set%20the%20purchase%20to%20complete%0D%0A%09%09%09edd_update_payment_status(%24payment%2C%20’complete’)%3B%0D%0A%20%0D%0A%09%09%09%2F%2F%20go%20to%20the%20success%20page%09%09%09%0D%0A%09%09%09edd_send_to_success_page()%3B%0D%0A%20%0D%0A%09%09%7D%20else%20%7B%0D%0A%09%09%09%24fail%20%3D%20true%3B%20%2F%2F%20payment%20wasn’t%20recorded%0D%0A%09%09%7D%0D%0A%20%0D%0A%09%7D%20else%20%7B%0D%0A%09%09%24fail%20%3D%20true%3B%20%2F%2F%20errors%20were%20detected%0D%0A%09%7D%0D%0A%20%0D%0A%09if(%20%24fail%20!%3D%3D%20false%20)%20%7B%0D%0A%09%09%2F%2F%20if%20errors%20are%20present%2C%20send%20the%20user%20back%20to%20the%20purchase%20page%20so%20they%20can%20be%20corrected%0D%0A%09%09edd_send_back_to_checkout(‘%3Fpayment-mode%3D’%20.%20%24purchase_data%5B’post_data’%5D%5B’edd-gateway’%5D)%3B%0D%0A%09%7D%0D%0A%7D%0D%0Aadd_action(‘edd_gateway_sample_gateway’%2C%20’pw_edd_process_payment’)%3B%0D%0A%20%0D%0A%2F%2F%20adds%20the%20settings%20to%20the%20Payment%20Gateways%20section%0D%0Afunction%20pw_edd_add_settings(%24settings)%20%7B%0D%0A%20%0D%0A%09%24sample_gateway_settings%20%3D%20array(%0D%0A%09%09array(%0D%0A%09%09%09’id’%20%3D%3E%20’sample_gateway_settings’%2C%0D%0A%09%09%09’name’%20%3D%3E%20’%3Cstrong%3E’%20.%20__(‘Sample%20Gateway%20Settings’%2C%20’pw_edd’)%20.%20’%3C%2Fstrong%3E’%2C%0D%0A%09%09%09’desc’%20%3D%3E%20__(‘Configure%20the%20gateway%20settings’%2C%20’pw_edd’)%2C%0D%0A%09%09%09’type’%20%3D%3E%20’header’%0D%0A%09%09)%2C%0D%0A%09%09array(%0D%0A%09%09%09’id’%20%3D%3E%20’live_api_key’%2C%0D%0A%09%09%09’name’%20%3D%3E%20__(‘Live%20API%20Key’%2C%20’pw_edd’)%2C%0D%0A%09%09%09’desc’%20%3D%3E%20__(‘Enter%20your%20live%20API%20key%2C%20found%20in%20your%20gateway%20Account%20Settins’%2C%20’pw_edd’)%2C%0D%0A%09%09%09’type’%20%3D%3E%20’text’%2C%0D%0A%09%09%09’size’%20%3D%3E%20’regular’%0D%0A%09%09)%2C%0D%0A%09%09array(%0D%0A%09%09%09’id’%20%3D%3E%20’test_api_key’%2C%0D%0A%09%09%09’name’%20%3D%3E%20__(‘Test%20API%20Key’%2C%20’pw_edd’)%2C%0D%0A%09%09%09’desc’%20%3D%3E%20__(‘Enter%20your%20test%20API%20key%2C%20found%20in%20your%20Stripe%20Account%20Settins’%2C%20’pw_edd’)%2C%0D%0A%09%09%09’type’%20%3D%3E%20’text’%2C%0D%0A%09%09%09’size’%20%3D%3E%20’regular’%0D%0A%09%09)%0D%0A%09)%3B%0D%0A%20%0D%0A%09return%20array_merge(%24settings%2C%20%24sample_gateway_settings)%3B%09%0D%0A%7D%0D%0Aadd_filter(‘edd_settings_gateways’%2C%20’pw_edd_add_settings’)%3B » provider= »manual » lang= »php »/]

Pour ma part, j’ai aussi rajouté ses lignes pour l’internationalisation et ajouté le dossier /languages/ :

[pastacode manual= »add_action(%20’init’%2C%20’pw_edd_make_multilang’%20)%3B%0D%0Afunction%20pwc_edd_make_multilang()%20%7B%0D%0A%20%20%20%20load_plugin_textdomain(‘pw-edd’%2C%20false%2C%20dirname(%20plugin_basename(%20__FILE__%20)%20).’%2Flanguages’)%3B%0D%0A%7D » provider= »manual » lang= »php »/]

Vous trouverez le plugin en téléchargement ici !

Avez-vous trouvé cela utile ?

Florent Maillefaud

Easy Digital Downloads : Créer une passerelle personnalisée de paiement 1Webmaster à Sablons (Isère) / Création de sites internet WordPress.

Micro-entrepreneur depuis 2012, je vous propose la création ou la refonte de votre site internet sous WordPress et à votre image.

Que ce soit un site vitrine, un blog ou un site e-commerce pour votre entreprise ou association, laissez votre empreinte sur le web !

Share This