Dokumentation für Wohltätigkeitsorganisationen

Erfahren Sie, wie Sie mit klaren Schritt-für-Schritt-Anleitungen das Beste aus Charitable herausholen.

Spendenfelder-API

Die Donation Fields API bietet eine leistungsstarke und flexible Möglichkeit, Ihre Spendenfelder hinzuzufügen, zu entfernen und zu bearbeiten.

Was sind Spendenfelder?

Spendenfelder sind alle Informationen über eine Spende, die Ihnen zur Verfügung stehen. Hier sind zum Beispiel einige der standardmäßig verfügbaren Felder:

  • first_name – Erhalten Sie den Vornamen des Spenders.
  • last_name – Erhalten Sie den Nachnamen des Spenders.
  • amount_formatted – Erhalten Sie den Spendenbetrag, formatiert gemäß den Währungseinstellungen Ihrer Website (z. B. 50,00 $).
  • date – Das Datum, an dem die Spende getätigt wurde.
  • gateway_label – Die vom Spender verwendete Zahlungsmethode.

Wie erhalte ich den Wert für ein bestimmtes Spendenfeld?

Sie können den Wert eines beliebigen Spendenfeldes über das Charitable_Donation-Objekt der Spende abrufen.

Der erste Schritt ist, ein Charitable_Donation-Objekt zu erhalten:

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

Als Nächstes können Sie den Feldwert abrufen, indem Sie get() auf dem Objekt aufrufen, wie Sie in den folgenden Beispielen sehen können:

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

Um alles zusammenzufügen:

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

Wie füge ich meinem Spendenformular ein neues Feld hinzu?

Das Hinzufügen eines neuen Feldes ist ein zweistufiger Prozess.

Zuerst erstellen Sie ein neues Charitable_Donation_Field-Objekt, das die Parameter Ihres Feldes definiert: seine Bezeichnung, den Datentyp, wie es im Spendenformular (falls überhaupt) enthalten sein soll, ob es zur Spendenexportdatei hinzugefügt werden soll und mehr.

Als Nächstes fügen Sie dieses Feld zur Klasse Charitable_Donation_Field_Registry hinzu, die eine Möglichkeit bietet, Spendenfelder zu speichern und abzurufen.

Sehen wir uns an, wie das in einem Beispiel funktioniert:

/**
 * 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 );
} );

Im obigen Beispiel haben wir ein neues Feld mit dem Schlüssel my_custom_field erstellt. Hier sind seine definierten Parameter:

  • Seine Bezeichnung ist „Mein benutzerdefiniertes Feld“. Dies wird im Spendenformular, im Bereich der Spenden-Admin-Details und im Spendenexport als Spaltenüberschrift verwendet.
  • Sein Datentyp ist meta. Das bedeutet, dass es als Metafeld speziell für diese Spende gespeichert wird.
  • Es ist so eingerichtet, dass es im Spendenformular direkt nach dem phone-Feld angezeigt wird. Es ist ein optionales Feld.
  • Es wird auch dem Admin-Spendenformular hinzugefügt.
  • Wenn Sie die Details einer Spende anzeigen, können Sie im Abschnitt „Spenden-Details“ sehen, was der Spender für dieses Feld eingegeben hat.
  • Wenn Sie einen Spendenexport herunterladen, wird eine neue Spalte „Mein benutzerdefiniertes Feld“ hinzugefügt, die anzeigt, was Spender für dieses Feld eingegeben haben.
  • Für dieses Feld wurde ein neuer E-Mail-Tag erstellt, sodass Sie ihn einfach in spendenspezifische E-Mails aufnehmen können, wie z. B. die Spendenquittung (für Spender) oder die Spendenbenachrichtigung (für Administratoren).

Dies ist ein relativ einfaches Beispiel, aber es leistet viel. Klicken Sie hier für eine detailliertere Aufschlüsselung aller verfügbaren Parameter bei der Erstellung von Charitable_Donation_Field Objekten.

Wie ändere ich ein vorhandenes Spendenfeld?

Um ein vorhandenes Spendenfeld zu ändern, rufen Sie zuerst das Feld aus der Charitable_Donation_Field_Registry ab und aktualisieren dann den Feldwert.

Um den Feldwert zu aktualisieren, können wir set() für das Feld aufrufen oder den magischen Setter verwenden.

/**
 * 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';
} );

Weitere Informationen zur Aktualisierung von Feldargumenten finden Sie in der detaillierten Referenz für diese Klassenmethoden:

Wie füge ich ein Feld zu dem Spendenformular einer bestimmten Kampagne hinzu?

Wenn ein neues oder vorhandenes Feld nur für bestimmte Kampagnen angezeigt werden soll, können Sie dies tun, indem Sie eine neue Funktion hinzufügen, die steuert, ob das Feld im Spendenformular angezeigt wird.

Wenn Sie ein neues Feld hinzufügen, müssen Sie zuerst das Spendenfeld erstellen. Befolgen Sie also zuerst diese Schritte.

Jetzt können Sie das registrierte Feld von allen Spendenformularen ausblenden, außer von dem, auf dem es angezeigt werden soll:

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 );

Was passiert hier?

  • Wir möchten, dass das Feld my_custom_field nur für die Kampagne mit dem Slug „special-campaign“ angezeigt wird.
  • Das Feld wird standardmäßig in allen Kampagnen angezeigt. Daher prüft unser Code, ob die Kampagne nicht den Slug „special-campaign“ hat, und entfernt es dann.

Sie können die Bedingung ändern, unter der das Feld angezeigt wird. Sie können das Feld beispielsweise so ändern, dass es nur für Kampagnen einer bestimmten Kategorie oder für Kampagnen mit einer bestimmten übergeordneten Kampagne angezeigt wird (d. h. Spendenaktionen für eine Ihrer Peer-to-Peer-Spendenaktionen).

Wie ändere ich ein Spendenfeld für eine bestimmte Kampagne?

Der oben verwendete Ansatz, um ein Feld für eine bestimmte Kampagne anzuzeigen, kann angepasst werden, um ein Spendenfeld für eine bestimmte Kampagne zu ändern.

Wenn Sie beispielsweise für eine bestimmte Kampagne nur Spenden von Spendern aus einem bestimmten Land akzeptieren möchten, können Sie dies mit dem folgenden Code erreichen:

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 );

Dieser Code bewirkt, dass für die Kampagne mit dem Slug „south-africa-only“ nur Südafrika als gültige Länderoption angezeigt wird.

Wie lasse ich ein Spendenfeld basierend auf Benutzereingaben anzeigen?

Die beiden vorherigen Beispiele zeigten, wie Spendenfelder basierend auf der Kampagne des Spendenformulars hinzugefügt/geändert werden. Aber was ist, wenn Sie ein Feld basierend auf Benutzereingaben anzeigen oder ausblenden möchten?

Die Handhabung erfordert einen anderen Ansatz mit Javascript. Wenn Sie ein erfahrener Entwickler sind, können Sie dies über eine neue Javascript-Datei hinzufügen. Im folgenden Beispiel verwenden wir jedoch die Funktion wp_add_inline_script, um unser benutzerdefiniertes Javascript hinzuzufügen, ohne ein neues Skript erstellen, registrieren und einreihen zu müssen.

Im folgenden Beispiel zeigen wir unser benutzerdefiniertes Feld my_custom_field nur an, wenn der Spender aus den Vereinigten Staaten stammt:

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');
        });
    " );
} );

Vollständige Liste der Standard-Spendenfelder

Die folgenden Felder werden von Charitable und seinen Erweiterungen hinzugefügt:

SchlüsselBeschreibung
donation_idDie Spenden-ID
vornameDer Vorname des Spenders.
nachnameDer Nachname des Spenders.
spenderDer vollständige Name des Spenders.
E-MailDie E-Mail-Adresse des Spenders.
spender_adresseDie vollständige Adresse des Spenders, formatiert.
AdresseDas erste Adressfeld des Spenders.
adresse_2Das zweite Adressfeld des Spenders.
StadtDie Stadt des Spenders.
BundeslandDer Bundesstaat des Spenders.
PostleitzahlDie Postleitzahl des Spenders.
LandDas Land des Spenders.
TelefonDie Telefonnummer des Spenders.
kampagnenDie Kampagne, die die Spende erhalten hat.
kampagnen_kategorien_listeDie Kategorien, in denen sich die Kampagne befindet.
betrag_formatiertDer Spendenbetrag, formatiert gemäß Ihren Währungseinstellungen.
DatumDas Datum der Spende.
zeitDie Uhrzeit, zu der die Spende getätigt wurde.
StatusDer Spendenstatus. Gibt den Rohwert von post_status zurück.
StatusbezeichnungDer Spendenstatus als besser lesbare Bezeichnung.
SpendenzahlungstorDas für die Spende verwendete Zahlungs-Gateway.
ZahlungstorbezeichnungDas Zahlungs-Gateway als lesbare Zeichenfolge.
SpendenschlüsselDer eindeutige Spenden-Schlüssel.
Zahlungstransaktions-IDDie Transaktions-ID für die Spende im verwendeten Zahlungs-Gateway (z. B. PayPal, Stripe).
TestmodusOb die Spende im Testmodus erfolgte.
SpendenzusammenfassungEine lesbare Zusammenfassung der Spende, die die Kampagne, die die Spende erhält & den gespendeten Betrag auflistet.
KontaktzustimmungOb der Spender seine Zustimmung zur Kontaktaufnahme gegeben hat.
Gebühren übernehmenOb der Spender die Gebühren übernommen hat.
Hinzugefügt von Gebührenentlastung.
GebührenbetragDer vom Spender gezahlte Betrag für die Bearbeitungsgebühren.
Hinzugefügt von Gebührenentlastung.
Gebührenbetrag formatiertDer vom Spender gezahlte Betrag für die Bearbeitungsgebühren, formatiert gemäß Ihren Währungseinstellungen.
Hinzugefügt von Gebührenentlastung.
Gesamtspende mit GebührenDer Gesamtspendenbetrag einschließlich der Bearbeitungsgebühren.
Hinzugefügt von Gebührenentlastung.
Gesamtspende mit Gebühren formatiertDer Gesamtspendenbetrag einschließlich der Bearbeitungsgebühren, formatiert gemäß Ihren Währungseinstellungen.
Hinzugefügt von Gebührenentlastung.
Zustimmung zur NachverfolgungOb der Spender die Erlaubnis erteilt hat, seine Newsletter-Aktivitäten (Öffnungen, Klicks) zu verfolgen. Dies gilt nur, wenn Sie Campaign Monitor verwenden.
Hinzugefügt von Newsletter Connect.
Anonyme SpendeOb der Spender sich entschieden hat, anonym zu bleiben.
Hinzugefügt von Anonyme Spenden.
Kommentar des SpendersDer vom Spender hinterlassene Kommentar.
Hinzugefügt von Spenderkommentare.
Geschenk-HilfeOb der Spender die Geschenkeinnahmen beansprucht hat.
Hinzugefügt von Geschenkeinnahmen.
Geschenk-Hilfe-ErklärungDie Erklärung, der der Spender zugestimmt hat, als er die Geschenkeinnahmen beansprucht hat.
Hinzugefügt von Geschenkeinnahmen.
TitelDer Titel des Spenders (Herr, Frau, Frl., usw.).
Hinzugefügt von Geschenkeinnahmen.
Adresse Zeile 3Die dritte Zeile in der Adresse des Spenders.
Hinzugefügt von Geschenkeinnahmen.

Haben Sie noch Fragen? Wir helfen Ihnen gerne weiter!

Zuletzt geändert:

Was ist neu bei Charitable

Die neuesten Updates anzeigen
🔔 Abonnieren Sie, um unsere neuesten Updates zu erhalten
📧 E-Mails abonnieren

E-Mail-Abonnement

Abonnieren Sie unseren Newsletter

Wir werden Sie nicht spammen. Wir senden nur eine E-Mail, wenn wir glauben, dass sie Ihnen wirklich hilft. Abmeldung jederzeit möglich!

Botschafter Neu

🖨️ Wir stellen vor: Flyer und Poster: Sammeln Sie Geld abseits des Bildschirms!

Viele Spendenaktionen von Person zu Person finden abseits eines Bildschirms statt: an der Ziellinie eines 5-km-Laufs, an einer Schultafel, in einer Büchereiküche. Charitable Ambassadors 3.4.7 fügt 2 druckbare Elemente hinzu: einen Spenden-Flyer mit der eigenen Geschichte und dem QR-Code jedes Spendenwerbers und ein Rekrutierungsplakat, das neue Spendenwerber anmeldet. Beide lassen sich wie eine normale Webseite öffnen und direkt aus dem Browser ausdrucken. Warum das wichtig ist:

  • 🏁 Ein Flyer für jeden Spendenwerber: Jeder Flyer enthält das eigene Foto, die eigene Geschichte und das eigene Ziel des Spendenwerbers, mit einem QR-Code, der dessen Seite öffnet und nicht Ihre Hauptkampagne.
  • 📌 Ein Plakat, das rekrutiert: Es zeigt „Jetzt rekrutieren“ über Ihrem Kampagnennamen mit einem großen QR-Code, der Ihr Anmeldeformular öffnet, sodass jemand mit dem Spenden sammeln beginnen kann, ohne auf einen Link von Ihnen zu warten.
  • 🪄 Kein Design-Tool erforderlich: Beide Druckvorlagen werden als normale Webseite gerendert und aus dem Browser gedruckt, ohne PDF-Plugin und ohne Designer.
  • 📄 2 Flyer-Layouts: „Hand out“ enthält die vollständige Geschichte für Spenden an Freunde und Familie, und „Post up“ enthält einen kurzen Aufhänger mit 5 abnehmbaren Reitkarten für eine Pinnwand.
  • 🛡️ Ausgeschaltet, bis Sie es einschalten: Flyer bleiben nach dem Update deaktiviert, bis Sie sie unter Charitable » Ambassadors » Other » Fliers aktivieren, und nur der Eigentümer oder ein Administrator kann einen öffnen.

Lesen Sie hier unsere Ankündigung.

Verbesserung Zahlungen

💸 Einführung von gestaffelten Sätzen für Gebührenerleichterungen: Passen Sie die Anfrage an die Spende an!

Gebührenerleichterungen stellt Ihren Spendern beim Bezahlvorgang eine kurze Frage: Möchten Sie die Bearbeitungsgebühr für diese Spende übernehmen? Bisher wurde für jede Spende über ein Gateway ein einziger Satz verwendet, sodass für eine Spende von 10 $ und eine Spende von 500 $ derselbe Prozentsatz berechnet wurde. Gebührenerleichterungen 1.3.0 ermöglicht es Ihnen, beliebig viele Spendenbänder festzulegen, die jeweils ihren eigenen Satz haben. Warum das wichtig ist:

  • 🪙 Schonender bei kleinen Spenden: Eine feste Transaktionsgebühr macht einen weitaus größeren Anteil einer 10 $-Spende aus als einer 500 $-Spende. Bänder ermöglichen es Ihnen daher, am unteren Ende weniger zu verlangen.
  • 🎚️ So viele Bänder wie nötig: Jedes Band hat seinen eigenen Prozentsatz und seinen eigenen festen Betrag, und das oberste Band läuft ohne Obergrenze weiter.
  • 🛑 Eine optionale Obergrenze: Ein Feld für die maximale Gebühr verhindert, dass von einem Spender mehr als ein von Ihnen gewählter Betrag verlangt wird, egal wie hoch die Spende ist.
  • 🔌 Pro Zahlungs-Gateway einstellbar: Stripe kann mit vier Bändern laufen, während Windcave und Payfast mit einem einzigen Satz arbeiten, da Bänder zu einem Gateway und nicht zu Ihrer gesamten Website gehören.
  • 🛡️ Nichts ändert sich, bis Sie es sagen: Ihre aktuellen Sätze bleiben genau so, wie sie sind, bis Sie unter Charitable » Einstellungen » Erweitert » Gebührenerleichterungen die Option „Gestaffelte Sätze verwenden“ aktivieren.

Lesen Sie hier unsere Ankündigung.

Spenden Verbesserung

📊 Ihr Pro Dashboard kann jetzt vergleichen, exportieren und bewerten!

Die meisten Fundraising-Dashboards zeigen Ihnen nur, wie viel Sie eingenommen haben. Charitable Pro 1.8.19 baut das Dashboard und die Berichtsübersicht um die schwierigeren Fragen herum neu auf: ob etwas kaputt ist, ob diese Periode die letzte geschlagen hat und welche einzelne Änderung heute den größten Unterschied machen würde. Warum das wichtig ist:

  • 📈 Jede Zahl hat einen Trend: Wählen Sie eine Periode aus und die Kacheln und das Diagramm bewegen sich zusammen, wobei jede Summe im Vergleich zur Vorperiode angezeigt wird.
  • 🗓️ Lesbare Diagramme: Kurze Zeiträume gruppieren Spenden tageweise, während längere Zeiträume nach Woche oder Monat gruppieren, sodass ein volles Jahr als Kurve und nicht als flache Linie gelesen wird.
  • 🔀 Vergleichen Sie beliebige 2 Perioden: Nicht nur aufeinanderfolgende, sodass Sie fragen können, wie dieser Dezember im Vergleich zum letzten Dezember abgeschnitten hat. Das ist wichtig, da Fundraising saisonabhängig ist.
  • 📤 Fassen Sie die gesamte Zusammenfassung zusammen: Senden Sie die vollständige Übersicht als CSV oder PDF, bereit für ein Board-Paket oder einen Spenderbericht.
  • 🎯 Bewerten Sie Ihr Setup kostenlos: Lassen Sie Ihr Fundraising-Setup bewerten, damit die eine Änderung, die sich als Nächstes lohnt, diejenige ist, die Sie sehen können.

Lesen Sie hier unsere Ankündigung.

Funktion Neu

🎟️ Wir stellen vor: Charitable Events: Verkaufen Sie Tickets für Ihre Kampagnen!

Die meisten gemeinnützigen Organisationen verkaufen Event-Tickets in einem Tool und sammeln Spenden in einem anderen, was zu zwei Berichtsdatensätzen und einer manuellen Abgleichung am Jahresende führt. Charitable Events vereint beides, indem es Tickets über dieselben Spendenformulare und Zahlungs-Gateways verkauft, die Sie bereits in Charitable nutzen. Warum das wichtig ist:

  • 🎟️ Jedes Ticket ist eine Spende: Ticketverkäufe laufen über das Gateway, das Sie bereits nutzen, und zählen zum Kampagnenziel, wobei alles unter Charitable » Events verwaltet wird.
  • 📱 QR-Check-in von jedem Telefon: Jeder Teilnehmer erhält seinen eigenen QR-Code auf der Quittung, und Freiwillige scannen ihn am Eingang über einen Check-in-Link, der kein WordPress-Konto benötigt.
  • 🧾 Quittungen bereit für die Steuererklärung: Weisen Sie jedem Ticket-Typ einen fairen Marktwert zu, und Charitable gibt den korrekten steuerlich absetzbaren Betrag auf jeder Spenderquittung an.
  • 📋 Teilnehmerdetails beim Checkout: Fragen Sie jeden Gast nach einer Essenswahl, Hemdgröße oder speziellen Bedürfnissen, wobei für jedes Ticket ein separater Teilnehmerdatensatz erstellt wird.
  • 🗓️ Blöcke und Kalender inklusive: Drei Editor-Blöcke sowie die Unterstützung für Sugar Calendar und The Events Calendar platzieren Ihre Events dort, wo Unterstützer bereits nachsehen.

Lesen Sie hier unsere Ankündigung.

KI Neu

🚀 Entfesseln Sie die KI-Power in Charitable!

Ihr KI-Assistent kann jetzt Ihre Charitable-Spendenkampagnen direkt erstellen, bearbeiten und verwalten – einfach durch Fragen. Mit Charitable Pro, das Schreibunterstützung für die WordPress Abilities API hinzufügt, können Tools wie ChatGPT, Claude und Cursor sicher vollständige administrative Aktionen über MCP durchführen. Warum das wichtig ist:

  • 🤖 Kampagnenerstellung in einfacher Sprache: Fordern Sie Ihren Assistenten mit einem Ziel wie „Richten Sie eine Spendenaktion für das Tierheim mit einem Ziel von 5.000 US-Dollar ein“ auf, und er erstellt einen echten Kampagnenentwurf mit vorgeschlagenen Spendenstufen.
  • 🎨 Sofortige Anpassungen des Spendenformulars: Fügen Sie benutzerdefinierte Felder hinzu, ändern Sie Schaltflächenfarben oder ordnen Sie Elemente neu an, ohne sich mit den Formulareinstellungen befassen zu müssen.
  • 📝 Protokollierung von Offline-Geschenken: Informieren Sie Ihren Assistenten über Bargeld- oder Scheckgeschenke, und er gleicht E-Mail-Adressen von Spendern ab und zeichnet Transaktionen in Ihrer Historie auf.
  • 🛡️ Sicherheit und Kontrolle standardmäßig: Schreibzugriff bleibt streng deaktiviert, bis er unter Charitable » Tools » AI MCP aktiviert wird, wodurch schreibgeschützte Berichte standardmäßig sicher bleiben.
  • 📜 Vollständige Audit-Protokollierung: Jede Änderung, die von einem KI-Assistenten vorgenommen wird, wird unter Charitable » Tools » Logs verfolgt, sodass Sie immer wissen, wer (oder was) Ihre Website aktualisiert hat.

Lesen Sie hier unsere Ankündigung.