Documentation Charitable

Apprenez à tirer le meilleur parti de Charitable grâce à des instructions claires, étape par étape.

API des champs de don

L'API des champs de don offre un moyen puissant et flexible d'ajouter, de supprimer et de modifier vos champs de don.

Que sont les champs de don ?

Les champs de don sont toutes les informations sur un don que vous pouvez utiliser. Par exemple, voici certains des champs disponibles par défaut :

  • first_name – Obtenir le prénom du donateur.
  • last_name – Obtenir le nom de famille du donateur.
  • amount_formatted – Obtenir le montant du don, formaté selon les paramètres de devise de votre site (par exemple, 50,00 $).
  • date – La date à laquelle le don a été effectué.
  • gateway_label – Le mode de paiement utilisé par le donateur.

Comment obtenir la valeur d'un champ de don particulier ?

Vous pouvez obtenir la valeur de n'importe quel champ de don via l'objet Charitable_Donation du don.

La première étape consiste à obtenir un objet Charitable_Donation :

$donation_id = 123; // Replace with your Donation's ID.
$donation    = charitable_get_donation( $donation_id );

Ensuite, vous pouvez obtenir la valeur du champ en appelant get() sur l'objet, comme vous pouvez le voir dans les exemples ci-dessous :

$first_name = $donation->get( 'first_name' );
$date       = $donation->get( 'date' );
$gateway    = $donation->get( 'gateway_label' );

Pour tout mettre ensemble :

$donation_id = 123;
$donation    = charitable_get_donation( $donation_id );
$first_name  = $donation->get( 'first_name' );

Comment ajouter un nouveau champ à mon formulaire de don ?

L'ajout d'un nouveau champ est un processus en deux étapes.

Premièrement, vous créerez un nouvel objet Charitable_Donation_Field qui définira les paramètres de votre champ : son libellé, le type de valeur qu'il stocke, comment il doit être inclus dans le formulaire de don (le cas échéant), s'il doit être ajouté au fichier d'exportation des dons, et plus encore.

Ensuite, vous ajouterez ce champ à la classe Charitable_Donation_Field_Registry, qui fournit un moyen de stocker et de récupérer les champs de don.

Voyons comment cela fonctionne dans un exemple :

/**
 * Create a callback function on the `init` hook, where we
 * can register our donation field.
 */
add_action( 'init', function() {

    /* Create the `Charitable_Donation_Field` object. */
    $field = new Charitable_Donation_Field(
        'my_custom_field',
        array(
            'label'          => __( 'My Custom Field' ),
            'data_type'      => 'meta', 
            'donation_form'  => array(
                'type'       => 'text',
                'required'   => false,
                'show_after' => 'phone',
            ), 
            'admin_form'     => true,
            'show_in_meta'   => true,
            'show_in_export' => true,
            'email_tag'      => array(
                'description' => __( 'The custom field value' ),
            ),
        )
    );

    /* Get the `Charitable_Donation_Field_Registry` instance. */
    $fields = charitable()->donation_fields();

    /* Add the new field. */
    $fields->register_field( $field );
} );

Dans l'exemple ci-dessus, nous avons créé un nouveau champ avec la clé my_custom_field. Voici ce que signifient ses paramètres définis :

  • Son libellé est « Mon champ personnalisé ». C'est ce qui sera utilisé dans le formulaire de don, dans la zone des détails des dons de l'administrateur et dans l'exportation des dons comme en-tête de colonne.
  • Son type de données est meta. Cela signifie qu'il sera stocké en tant que champ méta spécifique à ce don.
  • Il est configuré pour être affiché dans le formulaire de don, juste après le champ phone. C'est un champ facultatif.
  • Il sera également ajouté au formulaire de don de l'administrateur.
  • Lors de la visualisation des détails du don, vous pourrez voir ce que le donateur a saisi pour ce champ dans la section « Détails du don ».
  • Lorsque vous téléchargez un export des dons, une nouvelle colonne « Mon champ personnalisé » sera ajoutée, indiquant ce que les donateurs ont saisi pour ce champ.
  • Une nouvelle balise d'e-mail a été créée pour ce champ, vous pouvez donc facilement l'inclure dans les e-mails spécifiques aux dons, tels que le reçu de don (pour les donateurs) ou la notification de don (pour les administrateurs).

C'est un exemple relativement simple, mais il accomplit beaucoup. Cliquez ici pour une description plus détaillée de tous les paramètres disponibles lors de la création d'objets Charitable_Donation_Field.

Comment modifier un champ de don existant ?

Pour modifier un champ de don existant, vous récupérez d'abord le champ du Charitable_Donation_Field_Registry, puis vous mettez à jour la valeur du champ.

Pour mettre à jour la valeur du champ, nous pouvons appeler set() sur le champ, ou utiliser le setter magique.

/**
 * Create a callback function on the `init` hook, where we
 * can start changing the donation field.
 */
add_action( 'init', function() {

    /* Get the Donation Field Registry object. */
    $fields = charitable()->donation_fields();

    /* Get the field we want to change. */
    $field  = $fields->get_field( 'phone' );
    
    /**
     * Change #1: Make it a required field (uses set()).
     * Change #2: Change the label (uses magic setter).
     */
    $field->set( 'donation_form', 'required', true );
    $field->label = 'Phone Number';
} );

Pour plus d'informations sur la façon de mettre à jour les arguments de champ, consultez la référence détaillée de ces méthodes de classe :

Comment ajouter un champ à un formulaire de don spécifique à une campagne ?

Si vous souhaitez qu'un champ nouveau ou existant ne s'affiche que pour certaines campagnes, vous pouvez le faire en ajoutant une nouvelle fonction qui contrôle si le champ s'affiche dans le formulaire de don.

Si vous ajoutez un nouveau champ, vous devrez d'abord créer le champ de don, suivez donc d'abord ces étapes.

Vous pouvez maintenant *masquer* le champ que vous avez enregistré de tous les formulaires de don, sauf celui sur lequel vous souhaitez qu'il apparaisse :

add_filter( 'charitable_donation_form_user_fields', function( $fields, $form ) {

    /* If the field doesn't exist, stop right here. */
    if ( ! array_key_exists( 'my_custom_field', $fields ) ) {
        return $fields;
    }

    /* Match any campaign that DOESN'T have a slug of 'special-campaign' */
    if ( 'special-campaign' !== $form->get_campaign()->post_name ) {    
        unset( $fields['my_custom_field'] );
    }
    
    return $fields;
}, 10, 2 );

Que se passe-t-il ici ?

  • Nous voulons que le champ my_custom_field ne s'affiche que sur la campagne dont le slug est « special-campaign ».
  • Le champ s'affichera dans toutes les campagnes par défaut, notre code vérifie donc si la campagne n'a *pas* le slug « special-campaign » et le supprime ensuite.

Vous pouvez modifier la condition selon laquelle le champ est affiché. Par exemple, vous pouvez modifier le champ pour qu'il ne s'affiche que pour les campagnes d'une certaine catégorie, ou pour les campagnes qui ont une campagne parente spécifique (c'est-à-dire les collectes de fonds pour l'une de vos campagnes de collecte de fonds peer-to-peer).

Comment modifier un champ de don pour une campagne particulière ?

L'approche utilisée ci-dessus pour afficher un champ sur une campagne particulière peut être adaptée pour *modifier* un champ de don pour une campagne particulière.

Par exemple, si vous ne souhaitez accepter que les dons de donateurs d'un pays spécifique pour une certaine campagne, vous pouvez y parvenir avec le code suivant :

add_filter( 'charitable_donation_form_user_fields', function( $fields, $form ) {
    /* If a country field doesn't exist, stop right here. */
    if ( ! array_key_exists( 'country', $fields ) ) {
        return $fields;
    }

    if ( 'south-africa-only' === $form->get_campaign()->post_name ) {
        $fields['country']['options'] = array(
            'ZA' => 'South Africa',
        );
    }	

    return $fields;

}, 10, 2 );

Ce code fera en sorte que la campagne dont le slug est « south-africa-only » n'affiche que l'Afrique du Sud comme option de pays valide.

Comment faire en sorte qu'un champ de don s'affiche en fonction de la saisie de l'utilisateur ?

Les deux exemples précédents ont montré comment ajouter/modifier des champs de don en fonction de la campagne du formulaire de don. Mais que faire si vous souhaitez afficher ou masquer un champ en fonction de la saisie de l'utilisateur ?

La gestion de cela nécessite une approche différente, utilisant Javascript. Si vous êtes un développeur expérimenté, vous pouvez l'ajouter via un nouveau fichier Javascript, mais dans l'exemple ci-dessous, nous utiliserons la fonction wp_add_inline_script pour ajouter notre Javascript personnalisé sans avoir besoin de créer, d'enregistrer et de mettre en file d'attente un nouveau script.

Dans l'exemple ci-dessous, nous n'affichons notre champ personnalisé, my_custom_field, que lorsque le donateur vient des États-Unis :

add_action( 'wp_enqueue_scripts', function() {
    wp_add_inline_script( 'charitable-script', "
        jQuery('body').on('charitable:form:loaded', (event, donationForm) => {
            var countryField = donationForm.get_input('country');
            function toggleCustomField() {
                donationForm.get_input('my_custom_field').parent().toggle('US' === countryField.val());
            }
            countryField.on('change', toggleCustomField).trigger('change');
        });
    " );
} );

Liste complète des champs de don par défaut

Les champs suivants sont ajoutés par Charitable et ses extensions :

CléDescription
id_donL'ID du don
prénomLe prénom du donateur.
nomLe nom de famille du donateur.
donateurLe nom complet du donateur.
emailL'adresse e-mail du donateur.
adresse_donateurL'adresse complète du donateur, formatée.
adresseLe premier champ d'adresse du donateur.
adresse_2Le deuxième champ d'adresse du donateur.
villeLa ville du donateur.
étatL'état du donateur.
code_postalLe code postal du donateur.
paysLe pays du donateur.
téléphoneLe numéro de téléphone du donateur.
campagnesLa campagne qui a reçu le don.
liste_catégories_campagnesLes catégories dans lesquelles la campagne se trouve.
montant_formatéLe montant du don, formaté selon vos paramètres de devise.
dateLa date du don.
heureL'heure à laquelle le don a été effectué.
statutLe statut du don. Renvoie la valeur brute de post_status.
libellé_statutLe statut du don sous forme d'étiquette plus lisible.
passerelle_donLa passerelle de paiement utilisée pour le don.
libellé_passerelleLa passerelle de paiement sous forme de chaîne de caractères conviviale.
clé_donLa clé de don unique.
id_transaction_passerelleL'identifiant de transaction pour le don dans la passerelle de paiement utilisée (par exemple, PayPal, Stripe).
mode_testSi le don a été effectué en mode test.
résumé_donUn résumé lisible du don, indiquant la campagne recevant le don et le montant donné.
consentement_contactSi le donateur a donné son consentement pour être contacté.
couvrir_fraisSi le donateur a couvert les frais.
Ajouté par Fee Relief.
montant_fraisLe montant des frais de traitement payés par le donateur.
Ajouté par Fee Relief.
montant_frais_formatéLe montant des frais de traitement payés par le donateur, formaté selon vos paramètres de devise.
Ajouté par Fee Relief.
don_total_avec_fraisLe montant total du don, frais de traitement inclus.
Ajouté par Réduction des frais.
don_total_avec_frais_formatéLe montant total du don, frais de traitement inclus, formaté selon vos paramètres de devise.
Ajouté par Réduction des frais.
consentement_suiviSi le donateur a donné la permission de suivre son activité dans la newsletter (ouvertures, clics). Ceci s'applique uniquement si vous utilisez Campaign Monitor.
Ajouté par Connexion Newsletter.
don_anonymeSi le donateur a choisi de rester anonyme.
Ajouté par Dons Anonymes.
commentaire_donateurLe commentaire laissé par le donateur.
Ajouté par Commentaires du Donateur.
giftaidSi le donateur a demandé l'application du Gift Aid.
Ajouté par Gift Aid.
déclaration_giftaidLa déclaration que le donateur a acceptée lorsqu'il a demandé l'application du Gift Aid.
Ajouté par Gift Aid.
titreLe titre du donateur (M., Mme, Mlle, etc.).
Ajouté par Gift Aid.
adresse_3La troisième ligne de l'adresse du donateur.
Ajouté par Gift Aid.

Vous avez encore des questions ? Nous sommes là pour vous aider !

Dernière modification :

Quoi de neuf dans Charitable

Voir les dernières mises à jour
🔔 Abonnez-vous pour recevoir nos dernières mises à jour
📧 Abonnez-vous aux e-mails

Abonnement par e-mail

Rejoignez notre newsletter

Nous ne vous enverrons pas de spam. Nous envoyons un e-mail uniquement lorsque nous pensons qu'il vous sera réellement utile. Désabonnez-vous à tout moment !

ambassadeurs Nouveau

🖨️ Présentation des prospectus et affiches : collectez des fonds loin de l'écran !

Une grande partie de la collecte de fonds de pair à pair se fait loin d'un écran : à la ligne d'arrivée d'un 5 km, sur un panneau d'affichage d'école, dans une cuisine de bureau. Charitable Ambassadors 3.4.7 ajoute 2 imprimables, un prospectus de collecte de fonds portant la propre histoire et le code QR de chaque collecteur de fonds, et une affiche de recrutement qui inscrit de nouveaux collecteurs de fonds. Les deux s'ouvrent comme une page Web normale et s'impriment directement depuis le navigateur. Pourquoi c'est important :

  • 🏁 Un prospectus pour chaque collecteur de fonds : Chacun porte la propre photo, histoire et objectif de ce collecteur de fonds, avec un code QR qui ouvre sa page plutôt que votre campagne principale.
  • 📌 Une affiche qui recrute : Elle affiche « Recrutement en cours » au-dessus du nom de votre campagne avec un grand code QR qui ouvre votre formulaire d'inscription, afin que quelqu'un puisse commencer à collecter des fonds sans attendre un lien de votre part.
  • 🪄 Aucun outil de conception nécessaire : Les deux imprimables s'affichent comme une page Web normale et s'impriment depuis le navigateur, sans plugin PDF et sans designer.
  • 📄 2 mises en page de prospectus : « À distribuer » contient l'histoire complète pour donner à vos amis et à votre famille, et « À afficher » contient un court message accrocheur avec 5 languettes détachables pour un panneau d'affichage.
  • 🛡️ Désactivé jusqu'à ce que vous l'activiez : Les prospectus restent désactivés après la mise à jour jusqu'à ce que vous les activiez sous Charitable » Ambassadeurs » Autre » Prospectus, et seul le propriétaire ou un administrateur peut en ouvrir un.

Consultez notre annonce ici.

Amélioration Paiements

💸 Introduction des tarifs échelonnés pour l'allègement des frais : Adaptez la demande au don !

L'allègement des frais pose une courte question à vos donateurs lors du paiement : souhaitez-vous couvrir les frais de traitement de ce don ? Jusqu'à présent, cette question utilisait un taux unique pour chaque don sur une passerelle, de sorte qu'un don de 10 $ et un don de 500 $ se voyaient demander le même pourcentage. L'allègement des frais 1.3.0 vous permet de définir autant de tranches de dons que vous le souhaitez, chacune portant son propre taux. Pourquoi c'est important :

  • 🪙 Plus doux pour les petits dons : Un coût de transaction fixe représente une part beaucoup plus importante d'un don de 10 $ que d'un don de 500 $, les tranches vous permettent donc de demander moins en bas.
  • 🎚️ Autant de tranches que nécessaire : Chaque tranche porte son propre pourcentage et son propre montant fixe, et la tranche supérieure s'exécute sans limite supérieure.
  • 🛑 Un plafond facultatif : Un champ de frais maximum empêche qu'un donateur ne se voie demander plus qu'un nombre que vous choisissez, quel que soit le montant du don.
  • 🔌 Défini par passerelle de paiement : Stripe peut fonctionner avec quatre tranches tandis que Windcave et Payfast restent sur un taux unique, car les tranches appartiennent à une passerelle et non à l'ensemble de votre site.
  • 🛡️ Rien ne change tant que vous ne le décidez pas : Vos taux actuels restent exactement les mêmes jusqu'à ce que vous activiez « Utiliser les tarifs échelonnés » sous Charitable » Paramètres » Avancé » Allègement des frais.

Consultez notre annonce ici.

Dons Amélioration

📊 Votre tableau de bord Pro peut désormais comparer, exporter et évaluer !

La plupart des tableaux de bord de collecte de fonds vous indiquent seulement combien vous avez collecté. Charitable Pro 1.8.19 reconstruit le tableau de bord et la Vue d'ensemble des rapports autour des questions les plus difficiles : si quelque chose ne fonctionne pas, si cette période a été meilleure que la précédente, et quel changement unique ferait la plus grande différence aujourd'hui. Pourquoi c'est important :

  • 📈 Chaque chiffre a une tendance : Choisissez une période et les vignettes ainsi que le graphique bougent ensemble, chaque total étant affiché par rapport à la période précédente.
  • 🗓️ Des graphiques lisibles : Les courtes périodes regroupent les dons jour par jour, tandis que les longues périodes regroupent par semaine ou par mois, de sorte qu'une année complète se lit comme une courbe au lieu d'une ligne plate.
  • 🔀 Comparez n'importe quelles 2 périodes : Pas seulement consécutives, vous pouvez donc demander comment ce mois de décembre s'est comparé au mois de décembre dernier. C'est important car la collecte de fonds est saisonnière.
  • 📤 Exportez le résumé complet : Envoyez la vue d'ensemble complète en CSV ou PDF, prête pour un dossier de conseil d'administration ou un rapport de bailleur de fonds.
  • 🎯 Évaluez votre configuration gratuitement : Faites évaluer votre configuration de collecte de fonds, de sorte que le seul changement à faire ensuite soit celui que vous pouvez voir.

Consultez notre annonce ici.

Fonctionnalité Nouveau

🎟️ Présentation des Événements Caritatifs : Vendez des Billets dans Vos Campagnes !

La plupart des organisations à but non lucratif vendent des billets d'événement dans un outil et collectent des dons dans un autre, ce qui laisse deux ensembles de rapports et une correspondance manuelle à la fin de l'année. Événements Caritatifs réunit les deux, en vendant des billets via les mêmes formulaires de don et passerelles de paiement que vous utilisez déjà dans Charitable. Pourquoi c'est important :

  • 🎟️ Chaque billet est un don : Les ventes de billets passent par la passerelle que vous utilisez déjà et comptent pour l'objectif de la campagne, le tout géré sous Charitable » Événements.
  • 📱 Enregistrement par QR code depuis n'importe quel téléphone : Chaque participant reçoit son propre code QR sur le reçu, et les bénévoles scannent à l'entrée via un lien d'enregistrement qui ne nécessite aucun compte WordPress.
  • 🧾 Reçus prêts pour la déclaration de revenus : Attribuez à chaque type de billet une juste valeur marchande, et Charitable indiquera le montant déductible d'impôt correct sur chaque reçu de donateur.
  • 📋 Détails des participants au moment du paiement : Demandez à chaque invité son choix de repas, sa taille de chemise ou ses besoins d'accès, avec un enregistrement distinct du participant créé pour chaque billet.
  • 🗓️ Blocs et calendriers inclus : Trois blocs d'éditeur ainsi que la prise en charge de Sugar Calendar et The Events Calendar placent vos événements là où les supporters les recherchent déjà.

Consultez notre annonce ici.

ia Nouveau

🚀 Libérez la puissance de l'IA dans Charitable !

Votre assistant IA peut désormais créer, modifier et gérer vos campagnes de collecte de fonds Charitable directement — il suffit de demander. Avec Charitable Pro ajoutant la prise en charge de l'écriture pour l'API WordPress Abilities, des outils comme ChatGPT, Claude et Cursor peuvent gérer des actions administratives complètes en toute sécurité via MCP. Pourquoi c'est important :

  • 🤖 Création de campagnes en langage clair : Demandez à votre assistant un objectif comme « Mettre en place une collecte de fonds pour le refuge avec un objectif de 5 000 $ », et il crée une ébauche de campagne complète avec des paliers de dons suggérés.
  • 🎨 Modifications instantanées du formulaire de don : Ajoutez des champs personnalisés, changez les couleurs des boutons ou réorganisez les éléments sans avoir à modifier les paramètres du formulaire.
  • 📝 Enregistrement des dons hors ligne : Informez votre assistant des dons en espèces ou par chèque, et il associera les e-mails des donateurs et enregistrera les transactions dans votre historique.
  • 🛡️ Sécurité et contrôle par défaut : L'accès en écriture reste désactivé jusqu'à ce qu'il soit activé dans Charitable » Outils » AI MCP, maintenant la sécurité des rapports en lecture seule par défaut.
  • 📜 Journalisation complète des audits : Chaque modification apportée par un assistant IA est suivie dans Charitable » Outils » Journaux, vous savez donc toujours qui (ou quoi) a mis à jour votre site.

Consultez notre annonce ici.