Erfordert:
- Charitable 1.8.16+
- Charitable Multi-Währung 1.0.0+
Das Multi-Currency-Addon ermöglicht es Spendern, in ihrer eigenen Währung über jedes Charitable-Spendenformular zu spenden. Wählen Sie aus, welche Währungen Sie unterstützen, legen Sie fest, wie Wechselkurse bezogen werden (automatisch täglich aktualisiert oder manuell mit optionalem Aufschlag festgelegt) und verwenden Sie optional Geolocation, um die Währung eines Besuchers basierend auf seinem Land voreinzustellen. Berichte gliedern die Summen nach Währung, Zahlungsanbieter und Zeitraum auf.

Wann Sie es verwenden würden
- Sie akzeptieren Spenden von Unterstützern außerhalb Ihres Heimatlandes und möchten, dass Beträge in vertrauten Einheiten angezeigt werden, anstatt in einer globalen Währung.
- Sie möchten Wechselkurse, die sich täglich selbst aktualisieren, anstatt eine Tabellenkalkulation zu bearbeiten.
- Sie benötigen Berichte pro Währung, damit Sie sehen können, wie viel tatsächlich in EUR vs. USD vs. GBP eingegangen ist, getrennt von den Basiswährungsbeträgen.
- Sie möchten, dass Besucher Spendenbeträge in ihrer lokalen Währung sehen, ohne zuerst eine Dropdown-Liste auswählen zu müssen.
Finden
Die gesamte Hauptkonfiguration befindet sich an einem Ort:
WordPress Admin > Charitable > Einstellungen > Erweitert > Multi-Currency
Der Tab „Erweitert“ hat eine eigene Unternavigation (PDF-Belege, Geolocation, Multi-Currency, Migrationstools, Sonstiges). Öffnen Sie Multi Currency und Sie finden alles in einem Panel:
- Währungsumschalter aktivieren – Hauptschalter für die gesamte Funktion.
- Unterstützte Währungen – nach Regionen gruppierte Dual-Listen-Auswahl (Amerika, Europa, Asien-Pazifik, Sonstige) zum Auswählen, welche Währungen auf Spendenformularen verfügbar sind.
- Wechselkurse – die Kurstabelle pro Währung mit automatischer Aktualisierung, manueller Überschreibung, Dezimalstellen und Aufschlag.
- Nachricht für Währungsumschalter – der Text, der Spendern angezeigt wird, wenn sie die Währung wechseln.
- Bezeichnung für Währungsdropdown – die Bezeichnung über dem Dropdown-Menü im Spendenformular.
- Währungsakronym anzeigen – den 3-Buchstaben-Code (z. B.
USD) neben dem Symbol anzeigen. - Geolocation aktivieren – das Land des Besuchers automatisch erkennen und eine passende Währung voreinstellen.
- Einstellungen zur Plugin-Deaktivierung – was mit Multi-Currency-Daten geschehen soll, wenn Sie das Addon jemals deaktivieren (beibehalten, in Basiswährung umrechnen oder entfernen).
Es gibt zwei weitere Orte, die Sie kennen sollten:
- Währungslisten pro Zahlungsanbieter – unter Charitable > Einstellungen > Zahlungsanbieter > [Stripe / PayPal / Square / Offline], ein Abschnitt „Multi-Currency“ ermöglicht es Ihnen, einzugrenzen, welche der unterstützten Währungen der jeweilige Zahlungsanbieter akzeptiert.
- Berichte mit Währungsaufschlüsselung erscheinen unter Charitable > Berichte > Erweitert, sobald Sie Spenden in mehr als einer Währung haben.
Das Gesamtbild
Vier Teile arbeiten zusammen:
| Teil | Wo es sich befindet | Was es tut |
|---|---|---|
| Unterstützte Währungen | Einstellungen > Erweitert > Multi-Currency | Die Masterliste der Währungen, die Ihre Website anbietet. Die Basiswährung ist immer enthalten. |
| Wechselkurse | Einstellungen > Erweitert > Multi-Currency | Kurs pro Währung im Vergleich zur Basiswährung. Täglich per Cron aktualisiert oder manuell festgelegt. |
| Filter auf Zahlungsanbieter-Ebene | Einstellungen > Zahlungsanbieter > [Zahlungsanbieter] | Pro-Gateway-Opt-in für Währungen, die dieser Prozessor akzeptiert. |
| Der Währungswähler | Frontend-Spendenformular | Das Dropdown-Menü, das Spender zur Auswahl einer Währung verwenden. Wird automatisch gerendert, wenn mehr als eine Währung aktiviert ist. |
Ein Spender besucht eine Kampagne, sieht seine bevorzugte Währung vorausgewählt (oder wählt eine aus dem Dropdown-Menü aus), gibt einen Betrag ein, und das Formular konvertiert und übermittelt ihn in dieser Währung an das Gateway. Hinter den Kulissen speichert Charitable sowohl die Spendenwährung als auch den Gegenwert in der Basiswährung, damit die Berichte korrekt bleiben.
Schritt-für-Schritt-Einrichtung
Wenn Sie dies zum ersten Mal einrichten:
- Bestätigen Sie Ihre Basiswährung. Gehen Sie zu Charitable > Einstellungen > Allgemein und überprüfen Sie oben Währung. Dies ist die Währung, gegen die alle Wechselkurse berechnet werden; wählen Sie diejenige, in der die meisten Ihrer Berichte erstellt werden.
- Aktivieren Sie den Währungsumschalter. Gehen Sie zu Charitable > Einstellungen > Erweitert > Mehrere Währungen und stellen Sie Währungsumschalter aktivieren auf Ein. Dies ist der Hauptschalter für das Addon.
- Wählen Sie Ihre unterstützten Währungen aus. Verwenden Sie im Abschnitt Unterstützte Währungen den Dual-Listen-Selektor (Amerika, Europa, Asien-Pazifik, Andere Regionen), um Währungen aus dem rechten Bereich in den Bereich Ausgewählte Währungen auf der linken Seite zu verschieben. Ihre Basiswährung ist immer als „Basis“ enthalten und kann nicht entfernt werden.
- Bestätigen Sie die Wechselkurstabelle. Scrollen Sie nach unten zu Wechselkurse. Jede nicht-Basiswährung, die Sie ausgewählt haben, hat jetzt eine Zeile, die den aktuellen Kurs, die Dezimalzahl und die Marge anzeigt. Klicken Sie auf Wechselkurse aktualisieren, um die neuesten Kurse von der API abzurufen.
- (Optional) Legen Sie einen manuellen Kurs oder eine Marge fest. Aktivieren Sie die Spalte Manuell festlegen für eine Währung, um ihren Kurs gegen die automatische Aktualisierung zu sperren. Geben Sie einen Wert in die Spalte Marge ein (z. B.
2für eine Marge von 2 % auf den Live-Kurs), wenn Sie einen kleinen Puffer zur Deckung von Währungsumrechnungsgebühren wünschen. - (Optional) Passen Sie die Spender-Labels an. Legen Sie Nachricht für Währungsumschalter (die Nachricht, die angezeigt wird, wenn ein Spender die Währung wechselt) und Label für Währungsauswahl (das Label über dem Dropdown-Menü) fest. Aktivieren Sie Währungskürzel anzeigen, wenn Sie den 3-Buchstaben-Code neben dem Symbol auf dem Spendenformular anzeigen möchten.
- (Optional) Aktivieren Sie Geolocation. Stellen Sie Geolocation aktivieren auf Ein. Neue Besucher haben ihre Währung basierend auf dem Land, zu dem ihre IP aufgelöst wird (unter Verwendung der mitgelieferten MaxMind GeoLite2-Datenbank), vorausgewählt. Der Spender kann dies immer noch über das Dropdown-Menü ändern.
- Wählen Sie Ihr Deaktivierungsverhalten. Unter Plugin-Deaktivierungseinstellungen wählen Sie aus, was mit mehrwährungsfähigen Spenden-Daten geschehen soll, falls das Add-on jemals deaktiviert wird: Daten beibehalten (empfohlen; alles bleibt intakt), In Basiswährung umrechnen (schreibt Spenden in Fremdwährungen in gleichwertige Basiswährungsbeträge um) oder Alle Währungsdaten entfernen (löscht die Metadaten für mehrere Währungen, nicht rückgängig zu machen).
- Bei Bedarf pro Gateway einschränken. Gehen Sie zu Charitable > Einstellungen > Zahlungs-Gateways und öffnen Sie jedes verwendete Gateway. Scrollen Sie zum Abschnitt Mehrere Währungen – Sie sehen Kontrollkästchen für die Währungen, die Sie in Schritt 3 aktiviert haben. Deaktivieren Sie alle, die das Gateway nicht akzeptiert (oder akzeptieren kann). Währungen, die das Gateway nicht unterstützt, werden automatisch aus der Dropdown-Liste ausgeblendet, wenn dieses Gateway ausgewählt ist.
- Testen Sie das Spendenformular. Öffnen Sie eine Kampagnen-Spendenseite in einem Inkognito-Fenster. Der Währungsumschalter sollte über dem Betragsfeld erscheinen. Wechseln Sie die Währungen und bestätigen Sie, dass die Beträge mit dem richtigen Symbol und den richtigen Dezimalstellen neu formatiert werden.
Danach werden Spenden, die in Nicht-Basiswährungen eingereicht werden, in der Spendenliste mit ihrem ursprünglichen Währungsabzeichen angezeigt, und die Berichtssummen werden sowohl in der Spendenwährung als auch im Äquivalent der Basiswährung angezeigt.
Einstellungen-Referenz
Master-Schalter
| Einstellung | Was es tut |
|---|---|
| Währungsumschalter aktivieren | Hauptschalter für das gesamte Add-on. Aus bedeutet: kein Umschalter auf Spendenformularen, keine Aktualisierung von Wechselkursen, keine Berichterstattung pro Währung. |
Unterstützte Währungen
Ein regionen-gruppierter Dual-Listen-Selektor. Die rechte Seite gruppiert jede verfügbare Währung (über 150 Codes aus der ISO 4217-Liste) unter Amerika, Europa, Asien-Pazifik und Andere Regionen. Die linke Seite enthält Ihre Ausgewählten Währungen, wobei Ihre Basiswährung oben als „Basis“ angeheftet ist (sie kann nicht entfernt werden). Verwenden Sie die Pfeiltasten, um Währungen zwischen den Panels zu verschieben, oder das Suchfeld oben in jedem Panel, um nach Code oder Namen zu filtern.
Tabelle der Wechselkurse
Eine Zeile pro aktivierter Nicht-Basiswährung mit diesen Spalten:

| Spalte | Was es tut |
|---|---|
| Währung | Der ISO-Code und der vollständige Name (z. B. Euro (€)). |
| Wechselkurs | Wie viele Einheiten dieser Währung entsprechen 1 Einheit der Basiswährung. Bearbeitbar, aber gesperrt, es sei denn, Manuell festlegen ist aktiviert. |
| Manuell festlegen | Sperrt die Zeile auf Ihren eingegebenen Wert. Die automatische Aktualisierung überspringt manuell festgelegte Zeilen. |
| Dezimalzahl | Wie viele Dezimalstellen in Spendenbeträgen und Quittungen angezeigt werden sollen. Die meisten Währungen verwenden 2; JPY verwendet 0; einige Krypto-freundliche Anwendungsfälle wünschen 3 oder 4. |
| Aufschlag | Prozentsatz, der auf den API-Kurs aufgeschlagen wird. Nützlich, um Umrechnungsgebühren auszugleichen. Auf 0 setzen, wenn Sie keinen Aufschlag wünschen. |
Über der Tabelle finden Sie eine Schaltfläche Wechselkurse abrufen, die einen sofortigen API-Aufruf auslöst (manuell festgelegte Zeilen werden übersprungen). Zeilen können per Drag & Drop neu angeordnet werden, um die Reihenfolge der Währungen im Dropdown-Menü des Spendenformulars festzulegen.
Spender-seitige Beschriftungen
| Einstellung | Was es tut |
|---|---|
| Nachricht für den Währungsumschalter | Die Nachricht, die Spendern angezeigt wird, wenn sie die Währung wechseln. Unterstützt die Platzhalter {base_currency}, {new_currency_rate} und {new_currency} (z. B. „Der aktuelle Wechselkurs beträgt 1,00 {base_currency} gleich {new_currency_rate} {new_currency}“). |
| Währungs-Dropdown-Label | Die Beschriftung über dem Dropdown-Menü im Spendenformular (z. B. „Wählen Sie Ihre Währung“). |
| Währungskürzel anzeigen | Wenn aktiviert, wird der 3-stellige Währungscode neben dem Symbol bei Spendenbeträgen angezeigt (z. B. „100 USD“ statt „100 $“). |
Geolokalisierung
Ein einzelner Schalter: Geolokalisierung aktivieren. Wenn aktiviert, wird die IP des Spenders anhand der gebündelten MaxMind GeoLite2 Country-Datenbank überprüft, um sein Land zu ermitteln, und das Formular wählt automatisch die passende Währung aus, wenn sie in Ihrer ausgewählten Liste enthalten ist. Wenn die Währung des erkannten Landes nicht ausgewählt ist, sieht der Spender Ihre Basiswährung.

Geolokalisierung überschreibt keine explizite Spenderwahl. Sobald ein Spender die Währung im Formular wechselt, bleibt diese Wahl für die Sitzung bestehen (filterbar; siehe Entwicklerreferenz unten).
Einstellungen zur Deaktivierung des Plugins
Wählen Sie, wie Multi-Währungsdaten behandelt werden, wenn das Add-on jemals deaktiviert wird:
| Option | Was es tut |
|---|---|
| Daten beibehalten (Empfohlen) | Alle Währungsdaten intakt lassen. Berichte zeigen Beträge nur in Basiswährung an, aber Spendenaufzeichnungen behalten ihre ursprüngliche Währung für später, falls Sie sie reaktivieren. |
| In Basiswährung umrechnen | Schreiben Sie Spendenbeträge in Fremdwährungen zum Zeitpunkt der Deaktivierung dauerhaft in ihre Basiswährungs-Äquivalente um. Nicht rückgängig zu machen. |
| Alle Währungsdaten entfernen | Löschen Sie jedes Multi-Währungs-Metadatenfeld. Spenden bleiben erhalten, verlieren aber ihre Informationen zur ursprünglichen Währung. Nicht rückgängig zu machen. |
Diese Einstellung wird nur bei der Deaktivierung des Add-ons ausgeführt. Das Umschalten hat während des normalen Betriebs keine Auswirkungen.
Währungsaufschlüsselungsbericht
Sobald Sie Spenden in mehreren Währungen haben, gibt es unter Charitable > Berichte > Erweitert einen neuen Berichtstyp Währungsaufschlüsselung. Er zeigt Summen pro Währung für einen Datumsbereich mit CSV-Download.
Währungsauswahl im Spendenformular

Wenn mehr als eine Währung aktiviert ist, rendert jedes Charitable-Spendenformular automatisch einen Währungsauswähler über dem Betragsfeld. Der Auswähler:
- Zeigt den Währungscode und das Symbol an (z. B.
EUR €). - Aktualisiert den angezeigten Spendenbetrag und alle vorgeschlagenen Betragsbuttons, wann immer der Spender ihn ändert.
- Speichert die Auswahl des Spenders für den Rest seiner Sitzung (über Cookie). Neue Spenden vom selben Browser werden standardmäßig auf die letzte Wahl gesetzt, bis der Cookie abläuft.
- Verbirgt Währungen, die das aktive Gateway nicht verarbeiten kann. Wenn ein Spender die Zahlungsmethode wechselt und seine ausgewählte Währung nicht unterstützt wird, fällt das Formular auf die Basiswährung zurück.
Die visuellen Spendenformulare von Charitable Pro rendern denselben Auswähler innerhalb des Formularlayouts. Keine zusätzliche Einrichtung erforderlich; das Add-on erkennt Pro und integriert sich automatisch.
Währungseinschränkungen pro Gateway
Jedes Zahlungs-Gateway in Charitable > Einstellungen > Zahlungs-Gateways hat seine eigene Multi-Währungs-Checkliste am unteren Rand der Gateway-Einstellungen-Seite:

Deaktivieren Sie jede Währung, die das Gateway nicht akzeptiert (oder akzeptieren kann). Das Spendenformular blendet automatisch jede Währung aus, die das aktive Gateway nicht unterstützt – wenn ein Spender also von Stripe zu PayPal wechselt und die von ihm gewählte Währung nicht auf der Liste von PayPal steht, greift das Formular auf die Basiswährung zurück.
Aktualisierung der Wechselkurse
Die Kurse werden einmal täglich über WP-Cron aktualisiert (charitable_multi_currency_daily_exchange_rate_update). Auf einer gut funktionierenden Website müssen Sie dies nicht ändern. Die primäre Quelle ist eine WPCharitable-Quelle mit einem Fallback von ExchangeRate-API unter api.exchangerate-api.com/v4/latest/ (wird ebenfalls automatisch verwendet, wenn die primäre Quelle nicht erreichbar ist).
Wenn beide fehlschlagen (Netzwerkproblem, beide Dienste ausgefallen), bleiben die zuletzt bekannten guten Kurse erhalten, anstatt auf 1:1 zurückzusetzen. Die Registerkarte „Einstellungen“ zeigt den Zeitstempel der letzten erfolgreichen Aktualisierung an, damit Sie eine veraltete Kurstabelle erkennen können.
Um eine manuelle Aktualisierung zu erzwingen, verwenden Sie die Schaltfläche Wechselkurse aktualisieren auf der Einstellungsseite oder rufen Sie den Helfer aus PHP auf:
charitable_multi_currency_refresh_exchange_rates();
Geolokalisierungsdetails
Die Geolokalisierung verwendet die mitgelieferte MaxMind GeoLite2 Country-Datenbank. Sie läuft lokal – es wird keine externe Anfrage gestellt, wenn ein Besucher ein Spendenformular lädt, und IP-Adressen werden nicht dauerhaft gespeichert.
Die Zuordnung von Land zu Währung ist festgelegt (z. B. alle EU-Mitgliedsländer werden EUR zugeordnet, auch wenn eine lokale Unterwährung existiert, wie Rumäniens RON). Wenn die Währung des erkannten Landes nicht in Ihrer unterstützten Liste enthalten ist, wird die Fallback-Währung verwendet.
Die Geolokalisierung hat keine Auswirkung auf Besucher mit localhost oder privaten IPs (die Datenbank kann diese nicht auflösen), daher sehen Sie bei der lokalen Entwicklung die Fallback-Währung.
Berichte und Spendenliste
Sobald Multi-Währung aktiviert ist, ändern sich zwei Dinge im Adminbereich:
- Die Spendenliste zeigt die ursprüngliche Währung neben dem Betrag an (z. B.
€100,00 EUR). Das Äquivalent in Basiswährung erscheint als Tooltip beim Überfahren mit der Maus. - Die Spenden-Details enthalten eine Zeile „Äquivalent in Basiswährung“, die zeigt, wie viel die Spende in Ihrer Basiswährung zum Zeitpunkt der Spende zum geltenden Kurs wert war. Der Wert in Basiswährung wird zum Zeitpunkt der Spende festgelegt; spätere Kursänderungen ändern historische Summen nicht rückwirkend.

Der neue Bericht Währungsaufschlüsselung unter Berichte > Erweitert ermöglicht es Ihnen, nach Währung, Datumsbereich und Gateway zu filtern. Ein CSV-Download ist auf demselben Bildschirm verfügbar:

Tipps
- Legen Sie eine Kursmarge fest, sobald Sie echte Spenden haben. Die Währungsumrechnung in der Produktion verursacht geringe Gebühren; eine Marge von 1–3 % auf den Live-Kurs deckt diese ab, ohne dem Spender eine sichtbare Differenz zu hinterlassen.
- Deaktivieren Sie keine Währung, für die historische Spenden vorliegen. Die Spendenaufzeichnungen verweisen immer noch auf den Währungscode. Das Entfernen aus den unterstützten Währungen stoppt nur neue Spenden in dieser Währung – es beeinträchtigt nicht die Berichterstattung über alte Spenden.
- Manuelle Kurse sind hartnäckig. Wenn Sie für eine Währung Manuell festlegen aktivieren, wird die automatische Aktualisierung diese Währung dauerhaft überspringen, bis Sie diese Option wieder deaktivieren. Nützlich für gekoppelte Währungen (USD-gekoppelte Stablecoins, AED usw.), bei denen die täglichen Schwankungen der API Rauschen darstellen.
- Testen Sie die Gateway-Kombinationen. Wenn Sie sowohl Stripe als auch PayPal akzeptieren, überprüfen Sie die Währungslisten auf Gateway-Ebene. PayPal unterstützt einen anderen Satz von Währungen als Stripe, und das Formular muss wissen, welche ausgeblendet werden sollen, wenn jedes Gateway verwendet wird.
- Geolokalisierung ist kein Fingerabdruck. Es ist eine einmalige Vorauswahl. Ein Spender in Toronto, der lieber in USD spenden möchte, öffnet einfach das Dropdown-Menü und wählt USD aus; seine Sitzung behält diese Wahl von da an bei.
Entwicklerreferenz
Filter
Die Filter mit dem höchsten Traffic, die am wahrscheinlichsten bei Anpassungsarbeiten auftreten:
| Filter | Standard | Zweck |
|---|---|---|
unterstützte Währungen für Charitable Multi-Währung | (Array) | Die Liste der unterstützten Währungen. Filtern Sie, um Codes hinzuzufügen, die das Add-on nicht mitliefert, oder entfernen Sie Codes, die Sie nicht anzeigen möchten. |
Wechselkurse für Charitable Multi-Währung | (Array) | Filtert Wechselkurse, bevor sie gespeichert werden. Wickeln Sie die automatische Aktualisierung in Ihre eigene Logik oder fügen Sie benutzerdefinierte Kurse ein. |
Symbol für Charitable Multi-Währung | (Zeichenkette) | Das Anzeigesymbol für eine Währung. Filtern Sie, um es zu überschreiben (z. B. US$ anstelle von $ für USD anzeigen). |
Betrag für Charitable Multi-Währung formatieren | (Zeichenkette) | Der vollständig formatierte Betragsstring. Überschreiben Sie dies für benutzerdefinierte Zahlenformatierungen, die über Dezimalstellen + Symbol hinausgehen. |
Anbieter von Wechselkursen für Charitable Multi-Währung | (Array) | Die Liste der Wechselkursanbieterklassen. Fügen Sie Ihre eigenen hinzu, um eine andere API zu verwenden. |
Spenderwahl für Charitable Multi-Währung beibehalten | wahr | Ob die Währungsauswahl des Spenders per Cookie für die Sitzung beibehalten wird. Geben Sie false zurück, um die Auswahl pro Seitenaufruf festzulegen. |
Deaktivieren von Charitable Multi-Währung-Cache, wenn Cookie gesetzt ist | false | Weist Seitencaches an, eine Antwort nicht zu cachen, wenn der Multi-Währungs-Cookie gesetzt ist. Geben Sie true zurück, wenn Sie Spendenformulare von einem vollständig gecachten Pfad aus bereitstellen und diese pro Spender neu rendern müssen. |
Formulare, die von Charitable Multi-Währung unterstützt werden | (Boolesch) | Ob ein bestimmtes Formular den Wählerauswahldialog anzeigen soll. Überschreiben Sie dies pro Formular. |
JS-Variablen für Charitable Multi-Währung-Formulare | (Array) | Die JS-Variablen-Bag, die an das Formular-Skript übergeben wird. Fügen Sie zusätzliche Konfigurationen ein, die von benutzerdefiniertem JS gelesen werden können. |
Währung für Charitable Spendenformular | (Zeichenkette) | Die Standardwährung für ein Spendenformular. Überschreiben Sie dies pro Formular oder pro Kampagne. |
Aktionen
| Aktion | Wann es ausgeführt wird |
|---|---|
Charitable Multi-Währung starten | Nachdem die Hauptklasse des Add-ons die Initialisierung abgeschlossen hat ($plugin_instance wird übergeben). |
Charitable Multi-Währung Pro initialisieren | Nachdem die Pro-Kompatibilität geladen wurde (wenn Charitable Pro aktiv ist). |
Charitable Multi-Währung-Kurse aktualisiert | Nach einem erfolgreichen Aktualisieren der Wechselkurse ($rates, $base_currency übergeben). |
Charitable Multi-Währung-Spende gespeichert | Nachdem eine Spende in einer Fremdwährung gespeichert wurde ($donation_id, $currency, $amount übergeben). |
Tägliche Wechselkursaktualisierung für Charitable Multi-Währung | Der WP-Cron-Hook, der die tägliche Kursaktualisierung auslöst. Haken Sie ein, um Nebeneffekte hinzuzufügen (Protokollierung, Slack-Benachrichtigungen). |
Charitable Multi-Währung aktivieren | Plugin-Aktivierung. |
Charitable Multi-Währung deaktivieren | Plugin-Deaktivierung. |
Hilfsfunktionen
| Funktion | Zweck |
|---|---|
available_currencies() für Charitable Multi-Währung abrufen | Gibt das vollständige Array der Währungen zurück, die das Add-on kennt (Code => [Name, Symbol]). |
unterstützte Währungen() für Charitable Multi-Währung abrufen | Gibt das Array der Währungscodes zurück, die die Website aktiviert hat. |
Betrag konvertieren( $amount, $from, $to ) für Charitable Multi-Währung | Konvertiert einen Betrag zwischen zwei Währungen unter Verwendung aktueller Kurse. |
Wechselkurs abrufen( $currency ) für Charitable Multi-Währung | Gibt den aktuellen Kurs für eine Währung zurück (gegenüber der Basiswährung). |
Betrag formatieren( $amount, $currency ) für Charitable Multi-Währung | Formatiert einen Betrag mit dem richtigen Symbol und den richtigen Dezimalstellen für die angegebene Währung. |
Cron-Zeitplan
Die tägliche Aktualisierung wird bei der Plugin-Aktivierung geplant und bei der Deaktivierung aufgehoben:
// Hook into the daily refresh:
add_action( 'charitable_multi_currency_daily_exchange_rate_update', function() {
// Your code runs after the rates table is refreshed.
} );
Wenn der Cron nicht ausgelöst wird (einige Hoster deaktivieren WP-Cron), können Sie ihn mit WP-CLI auslösen:
wp cron event run charitable_multi_currency_daily_exchange_rate_update
Beispiele für Anpassungen
Fügen Sie eine benutzerdefinierte Währung hinzu, die das Add-on nicht mitliefert:
add_filter( 'charitable_multi_currency_supported_currencies', function( $currencies ) {
$currencies['XYZ'] = array(
'name' => 'Example Coin',
'symbol' => 'X',
);
return $currencies;
} );
Lassen Sie die Spenden-Währungsauswahl sich zwischen Seitenaufrufen vergessen:
add_filter( 'charitable_multi_currency_persist_donor_choice', '__return_false' );
Deaktivieren Sie das Caching der gesamten Seite, wenn der Multi-Währungs-Cookie gesetzt ist:
add_filter( 'charitable_multi_currency_cache_disable_when_cookie_set', '__return_true' );
Überschreiben Sie den Kurs für eine bestimmte Währung (z. B. AED zu einem festen Kurs an USD koppeln):
add_filter( 'charitable_multi_currency_exchange_rates', function( $rates, $base_currency ) {
if ( 'USD' === $base_currency ) {
$rates['AED'] = array(
'exchange_rate' => 3.6725,
'set_manually' => 1,
'number_decimal' => 2,
'rate_markup' => 0,
);
}
return $rates;
}, 10, 2 );
Slack bei jeder täglichen Kursaktualisierung benachrichtigen:
add_action( 'charitable_multi_currency_rates_updated', function( $rates, $base_currency ) {
$count = count( $rates );
wp_remote_post( SLACK_WEBHOOK_URL, array(
'body' => json_encode( array(
'text' => "Exchange rates refreshed: {$count} currencies vs {$base_currency}.",
) ),
) );
}, 10, 2 );
Erzwingen Sie, dass eine Kampagne standardmäßig auf EUR gesetzt wird, unabhängig von der Geolocation:
add_filter( 'charitable_donation_form_currency', function( $currency, $form ) {
if ( $form && method_exists( $form, 'get_campaign_id' ) && $form->get_campaign_id() === 123 ) {
return 'EUR';
}
return $currency;
}, 10, 2 );
Verwandt
- Charitable Documentation Hub – Der Hauptindex der Dokumentation.
- Charitable Pro – Visuelle Spendenformulare funktionieren nahtlos mit dem Währungsauswahlfeld.





