Conseils pour écrire du code personnalisé pour Charitable

L'une des raisons pour lesquelles Charitable est l'un des meilleurs plugins WordPress pour gérer des campagnes et accepter des dons est sa flexibilité et sa capacité à permettre à d'autres de personnaliser divers aspects clés de l'expérience – y compris les e-mails, les détails de la campagne et le formulaire de don. Une partie de cette flexibilité réside dans les « hooks et filtres » que Charitable possède dans son code et qui sont disponibles pour les développeurs WordPress. Grâce à ceux-ci, un développeur peut personnaliser un site pour :

— Afficher un champ personnalisé sur le formulaire de don via l'API des champs de dons.
— Ajouter de nouvelles balises d'e-mail ou modifier celles existantes avec l'API des champs d'e-mail.
— Personnalisations des extensions telles que l'extension Ambassadeur et l'extension Reçus Annuels.

Le code d'un plugin WordPress peut être écrit de plusieurs manières et à différents endroits : certains codes peuvent être placés dans le fichier « functions.php » du thème WordPress actif, certains sont écrits dans un plugin (qui peut être activé et désactivé même si l'utilisateur conserve le même thème), et (ce qui devient de plus en plus populaire) le code peut être hébergé dans un plugin d'extraits de code.

Peu importe où le code se trouve, il existe des meilleures pratiques que les développeurs et les codeurs WordPress devraient utiliser pour s'assurer que le site Web sur lequel il s'exécute reste sécurisé et ne tombe pas en panne. Ce qui suit n'est pas un guide complet ni approfondi, mais des rappels généraux pour ceux qui écrivent du code OU acceptent du code de développeurs à insérer sur leur site Web – surtout si ce code repose sur un plugin tiers (comme Charitable). 

Fichier de plugin préféré

Si possible, essayez de placer le code personnalisé dans SON PROPRE plugin WordPress. Cela facilite le maintien du code en place si vous changez de thème WordPress et vous permet également d'activer/désactiver facilement le plugin contenant les personnalisations à des fins de débogage. Il existe de nombreux articles et tutoriels sur le Web sur la création d'un plugin WordPress simple comme celui-ci.

Ne supposez pas, vérifiez toujours

Il est important que tout code personnalisé NE SUPPOSE PAS QUE CHARITABLE EST ACTIVÉ ET EN COURS D'EXÉCUTION SUR VOTRE SITE WEB. Pourquoi ? Parce que s'il tente d'appeler une fonction dans le code principal de Charitable – et que le code n'est pas là – une erreur peut se produire… une erreur qui pourrait faire planter votre site Web ! Parfois, WordPress est capable de mettre votre site en « Mode de récupération » et d'envoyer un e-mail à l'administrateur du site pour l'informer de cette erreur, mais ce n'est pas toujours le cas. Par conséquent, TOUT code écrit pour Charitable – quel que soit son objectif ou où le code est situé – doit « vérifier » pour s'assurer que Charitable est activé et/ou que la fonction qu'ils tentent d'appeler existe.

Remarquez notre premier (mauvais !) exemple :

👎🏻 MAUVAIS EXEMPLE :

// Bad Example :-( Of Hooking Into Charitable

function charitable_add_donation_gateway_email_tag() {
    charitable()->donation_fields()->get_field( 'gateway_label' )->email_tag = true;
}
add_action( 'init', 'charitable_add_donation_gateway_email_tag' );

L'objectif de ce bloc de code est de faire de « l'étiquette de passerelle » quelque chose qui peut être ajouté comme balise dynamique dans les e-mails de Charitable. Le développeur ci-dessus « accroche » la fonction qui fait cela à l'« init » de WordPress, qui s'exécute chaque fois qu'une page est chargée sur le site Web – qu'elle soit dans l'administration ou sur le front-end. Notez que la fonction utilise « charitable() »... mais si cela n'existe pas, PHP générera une « erreur fatale » – et comme le code ci-dessus se charge à CHAQUE chargement de page, l'ensemble du site plantera très probablement sans possibilité de se connecter en tant qu'administrateur, etc.

Encore une fois, il est de bonne pratique de ne jamais supposer qu'une fonction existe si cette fonction fait partie d'un plugin ou d'un thème (en d'autres termes, si elle ne fait pas partie du cœur de WordPress). Supposer que la classe « charitable() » existe, c'est supposer que le plugin Charitable sera TOUJOURS là – mais si le plugin est désactivé (par un humain ou par un autre plugin) ou si le plugin est mis à jour... la fonction ne sera pas trouvée, et une erreur (potentiellement « fatale ») sera rencontrée. Voici la même fonction mais avec un ajout simple :

👍🏻 BON EXEMPLE :

// Good Example :-) Of Hooking Into Charitable
// Checking To See If The Class Exists!

function charitable_add_donation_gateway_email_tag() {
    if ( class_exists('charitable') ) : // check for class
       charitable()->donation_fields()->get_field( 'gateway_label' )->email_tag = true;
    endif;
}
add_action( 'init', 'mysite_charitable_add_donation_gateway_email_tag' );

Remarquez l'instruction « if » qui vérifie si la classe « charitable » existe – c'est une façon en PHP de vérifier en toute sécurité si la classe existe (dans ce cas, elle n'existera que si Charitable est activement exécuté sur le site Web). Si elle n'existe pas, le code ne s'exécute pas et tout le monde est en sécurité. Il est courant pour les développeurs PHP de faire des vérifications comme class_exists et function_exists pour s'assurer rapidement que le code qu'ils sont sur le point d'exécuter ne rencontrera pas d'erreurs graves parce que quelque chose qu'ils supposent exister n'existe pas.

Utiliser des noms uniques pour les fonctions

Comme indiqué dans les exemples ci-dessus, ne donnez jamais à vos fonctions des noms génériques comme « update_email » car si un autre plugin utilise le même nom (plugins actuels ou futurs que vous pourriez installer), votre site Web pourrait rencontrer des problèmes. Lors de la création d'une fonction, commencez toujours par « mon_site_web_charitable_ » (comme dans l'exemple ci-dessus, en remplaçant « mon_site_web » par une chaîne de caractères de longueur raisonnable de votre nom de site Web) pour vous assurer que vous avez probablement créé un nom personnalisé qui n'est pas répété (vous pouvez également utiliser la même logique « cela existe-t-il déjà » dans l'étape ci-dessus si vous voulez faire un effort supplémentaire).

Activer le débogage et les journaux de débogage de WordPress

Pour tout ce qui dépasse un simple script, les développeurs WordPress aiment couramment documenter et enregistrer les avertissements et les erreurs PHP pour « attraper » les problèmes (surtout s'ils ne sont pas apparemment visibles sur le site Web). L'équipe de support de Charitable recommande les fonctions de base WP_DEBUG et WP_DEBUG_LOG, comme mentionné ici dans la documentation WordPress.

Utilisation d'un plugin d'extraits de code ?

Tout ce qui précède s'applique également au code inséré dans les plugins d'extraits de code. Si vous avez un problème avec Charitable et que vous savez que vous exécutez du code personnalisé dans un extrait de code, vous devriez pouvoir désactiver le plugin d'extrait de code pour voir si cela résout le problème ou vous aide à dépanner davantage.

Ne pas tester sur la production

Enfin, il est conseillé de tester le code personnalisé sur un environnement de staging ou de développement et non en direct sur votre site web. Si vous désactivez Charitable ici à titre de test, c’est une bonne façon « finale » de déterminer si votre site web pourrait rencontrer des problèmes importants. Cela maintient votre environnement de production en sécurité et toujours capable d’accepter des dons. 


N’oubliez pas que si vous n’êtes pas sûr du code que vous ajoutez à votre thème, à votre propre plugin ou à un plugin d’extraits de code – consultez un développeur. Si vous avez des questions générales, n’hésitez pas à contacter notre équipe de support qui sera heureuse de répondre aux questions concernant tout code que vous pourriez ajouter à votre site web pour étendre Charitable. Nous sommes là pour vous et pour vous aider à étendre votre site web afin de répondre à vos besoins !

Nous espérons que le partage de ces suggestions vous donnera la confiance nécessaire et garantira que vos personnalisations de Charitable continueront de fonctionner correctement pendant des années.

Recevez des conseils et des ressources gratuits directement dans votre boîte de réception, ainsi que 60 000 autres personnes

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 !

Vidéo en vedette :

Regardez plus de vidéos sur notre chaîne YouTube.

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 !

Amélioration Paiements

💰 Acceptez les dons récurrents avec Windcave et Charitable

Un donateur configure son don une seule fois sur la page de paiement sécurisée de Windcave, et Charitable facture chaque renouvellement par la suite selon le calendrier établi. Pourquoi c'est important :

🏦 Organisations basées en Nouvelle-Zélande ou en Australie : dons mensuels sur la passerelle avec laquelle votre banque vous a déjà configuré, sans second processeur à intégrer.
⛪ Églises acceptant les dîmes et offrandes régulières : les membres de la congrégation définissent leur propre calendrier une fois, ce qui est le moyen le plus simple de lancer des dons d'église récurrents sans plateforme distincte.
🌏 Groupes avec des donateurs dans plusieurs devises : Windcave en gère plus de 20, ainsi un sympathisant peut donner dans la devise qu'il détient réellement.
📅 Fonds de fonctionnement plutôt que des campagnes ponctuelles : activez le mode « Récurrent uniquement » et l'option ponctuelle disparaît, de sorte que chaque don à cette campagne est un abonnement.
🧾 Équipes sans développeur attitré : 3 jeux d'identifiants collés sur une page de paramètres, et aucun code nulle part.

Consultez notre annonce ici.

automatisation mettre à jour

⚡ Générateur d'automatisation visuelle : Glisser-déposer sans code !

Charitable Automation Connect 2.3.0 introduit le Générateur d'automatisation visuelle, une zone d'édition plein écran qui présente chaque automatisation sous forme de flux de cartes connectées : un déclencheur, des conditions facultatives et une liste d'actions exécutées dans l'ordre.

🧩 De nombreuses actions, un seul déclencheur : Taguez un donateur, envoyez un e-mail, ajoutez une note et déclenchez un webhook à partir d'un seul événement, disposés dans n'importe quel ordre.

✉️ Agissez à l'intérieur de Charitable : Les nouvelles actions Envoyer un e-mail, Taguez un donateur et Ajoutez une note de donateur s'exécutent sans service externe requis.

🔤 Étiquettes de fusion : Personnalisez les e-mails et les notes avec des champs dynamiques tels que {first_name}, {total} et {campaign_name}.

🔁 Appliquer aux donateurs existants : Exécutez Taguez un donateur et Ajoutez une note de donateur sur les donateurs que vous avez déjà.

🖥️ Zone d'édition ou Simple : Changez de vue à tout moment, et les automatisations créées avant la version 2.3.0 continueront de fonctionner sans modification.

En savoir plus ici.

Intégration mis à jour

📬 Présentation de Brevo pour Charitable : Transformez automatiquement les donateurs en abonnés

Le moment où un donateur fait un don est le moment où il est le plus engagé. Avec la nouvelle intégration Brevo pour Charitable, vous pouvez transformer automatiquement ces donateurs ponctuels en abonnés à long terme sans toucher à une seule feuille de calcul.

Collectez simplement le consentement du donateur directement sur votre formulaire de don et lancez votre série de bienvenue immédiatement.

Quoi de neuf :

🔄 Synchronisation automatisée des abonnés : Les nouveaux donateurs qui donnent leur accord sont ajoutés directement à votre liste de contacts Brevo dès que leur paiement est traité, sans aucune exportation manuelle ni importation de CSV.

🎯 Contrôle granulaire du consentement et de l'opt-in : Personnalisez le libellé de votre case à cocher, choisissez si elle est cochée par défaut ou non, ou activez le double opt-in de Brevo pour maintenir votre liste propre et conforme.

📋 Mappage de liste par campagne : Dirigez les sympathisants vers votre liste d'e-mails globale ou mappez des campagnes spécifiques à des listes Brevo ciblées pour adapter vos messages de suivi.

⚡ Configuration en 5 minutes : Connectez-vous instantanément en collant votre clé API Brevo dans les paramètres de Newsletter, mappez vos champs de contact et commencez à construire votre liste d'e-mails en mode pilote automatique.

Prêt à développer votre liste de diffusion ? Brevo est disponible dès maintenant à partir du plan Charitable Plus — connectez votre compte dès aujourd'hui !

dons récurrents mis à jour

💳 Mises à jour de carte : Corrigez les cartes expirées sans perdre vos abonnements !

Les cartes de crédit expirées ou mises à jour sont l’une des plus grandes fuites silencieuses dans les collectes de fonds récurrentes. Avec les mises à jour de carte dans l’extension Dons récurrents, les donateurs peuvent désormais actualiser leurs informations de paiement directement, en conservant leur abonnement, leur calendrier et leur historique de dons complètement intacts.

Aucun plan annulé, aucun historique perdu et zéro casse-tête administratif pour votre équipe.

Quoi de neuf :

⚡ Assistance en 30 secondes : les donateurs obtiennent un bouton « Mettre à jour la carte » dédié dans leur tableau de bord qui ouvre le portail client sécurisé et conforme PCI de Stripe pour mettre à jour instantanément les détails de la carte.

🔒 Accès sécurisé et limité : limité exclusivement aux mises à jour de carte par défaut, les donateurs ne peuvent pas annuler ou modifier accidentellement leurs plans depuis le portail, en gardant vos webhooks et vos données synchronisés.

🤝 Assistance administrative : vous aidez un donateur par téléphone ? Ouvrez son portail Stripe sécurisé en un clic depuis votre écran d’administration ou générez un lien de mise à jour à usage unique à lui envoyer par e-mail.

📋 Piste d’audit automatique : chaque mise à jour de méthode de paiement est enregistrée automatiquement avec un horodatage dans les journaux système et le profil du donateur individuel.

Prêt à protéger vos revenus récurrents ? Obtenez le forfait Plus ou Pro et mettez à jour Dons récurrents vers la version 2.3.0+ et activez « Mettre à jour la méthode de paiement » dans vos Paramètres dès aujourd’hui !

Intégration constructeur de pages

Les fans de Divi se réjouissent ! Module natif de barre de progression de campagne Divi 5 !

Avec notre nouveau module natif Divi 5, vous pouvez ancrer vos microsites avec des statistiques de collecte de fonds en temps réel directement sur la toile visuelle. Voici comment cela fonctionne et pourquoi il est intéressant de l'activer dès aujourd'hui.

Créez des mises à jour de campagne VISUELLES ET EN DIRECT. Vous pouvez également :

📊 Barre de progression de campagne : Insérez une barre de progression en direct dans n'importe quelle mise en page Divi 5 et affichez la progression de l'objectif en temps réel.

🎨 Contrôles de style approfondis : Personnalisez facilement la couleur de la barre et de la piste, la hauteur et le rayon pour qu'ils correspondent parfaitement à votre marque.

👁️ Prêt pour le Visual Builder : Configurez et prévisualisez tout directement sur la toile Divi en tant que module de première classe.

🔁 Rendu identique : Le même moteur exact alimente ce module, ce qui signifie une conception cohérente sans correctifs hérités.

✅ Lancements plus rapides : Ne quittez jamais l'interface Divi 5 pour configurer des shortcodes ou deviner à quoi ressembleront vos étiquettes d'objectif.

En savoir plus ici.