Dokumentation für Wohltätigkeitsorganisationen

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

Charitable Divi Integration

This guide is a technical reference for developers working with Charitable’s Divi integration. Divi integration was introduced in Charitable Pro 1.8.12.

Übersicht

The Charitable Divi integration provides four custom modules for the Divi Builder. The integration uses Divi’s legacy ET_Builder_Module API for maximum compatibility with both Divi 4 and Divi 5.

Architecture

The integration follows a similar pattern to Charitable’s Elementor and WPBakery integrations:

  • Main Integration Class: Singleton pattern, handles detection and module registration
  • Module Classes: Each module extends ET_Builder_Module
  • Shortcode-Based Rendering: Modules leverage existing Charitable shortcodes for output
  • Computed Fields: Used for Visual Builder live previews via AJAX

Divi 4 vs Divi 5 Compatibility

The integration is built on Divi’s legacy module API (ET_Builder_Module) rather than the newer Divi 5 ModuleRegistration system. This approach was chosen for:

  • Backward Compatibility: Works with both Divi 4 and Divi 5
  • Stability: Uses a well-documented, proven API
  • Simplicity: Leverages existing shortcode infrastructure

The integration has been tested with:

  • Divi Theme 4.x
  • Divi Theme 5.x
  • Divi Builder Plugin (standalone)
  • Extra Theme

Disabling the Integration

To completely disable the Divi integration, add this constant to wp-config.php:

define( ‘CHARITABLE_DISABLE_DIVI_INTEGRATION’, true );

This prevents the integration from loading entirely, which can be useful for:

  • Troubleshooting conflicts
  • Sites not using Divi
  • Custom implementations

Module Slugs

ModuleSlugShortcode Used
Kampagnecharitable_campaign[campaign id=”X”]
Kampagnencharitable_campaigns[campaigns …]
Spendenformularcharitable_donation_form[charitable_donation_form …]
Spenden-Buttoncharitable_donate_button[charitable_donate_button …]

Hooks and Filters

Aktionen

Module Registration

// Modules are registered on this Divi hook

add_action( ‘et_builder_ready’, [ $this, ‘register_modules’ ] );

Cache Clearing

// Campaign options cache is cleared when campaigns change

add_action( ‘save_post_campaign’, [ $this, ‘clear_campaign_options_cache’ ] );

add_action( ‘delete_post’, [ $this, ‘clear_campaign_options_cache’ ] );

add_action( ‘wp_trash_post’, [ $this, ‘clear_campaign_options_cache’ ] );

Filter

Module Categories

// Custom category registration

add_filter( ‘et_builder_categories’, [ $this, ‘register_module_category’ ] );

Caching

The integration caches campaign dropdown options to improve performance:

  • Transient Key: charitable_divi_campaign_options
  • Duration: 1 hour (HOUR_IN_SECONDS)
  • Auto-cleared: When campaigns are saved, deleted, or trashed

To manually clear the cache:

delete_transient( ‘charitable_divi_campaign_options’ );

Visual Builder Considerations

Preview Mode

The Donation Form module displays a placeholder in the Visual Builder instead of the actual form. This is intentional because:

  1. Forms require JavaScript that may conflict with the builder
  2. Form submissions in preview mode could cause issues
  3. Performance is improved with static placeholders

The actual form renders correctly on the frontend.

AJAX Data Attributes

The Campaigns shortcode normally outputs data-shortcode-atts for AJAX pagination. In the Visual Builder context, this is stripped to prevent display issues. The integration detects the VB context and adds a preview=”1″ attribute to the shortcode.

Computed Fields

Each module uses Divi’s computed fields system for live previews:

‘__campaign_preview’ => [

    ‘type’                => ‘computed’,

    ‘computed_callback’   => [ ‘Charitable_Divi_Campaign_Module’, ‘get_campaign_preview’ ],

    ‘computed_depends_on’ => [

        ‘campaign_id’,

    ],

],

When a user changes a setting in the Visual Builder, Divi calls the computed callback via AJAX to refresh the preview.

CSS Selectors

Module Container Classes

ModuleContainer Class
Kampagne.et_pb_charitable_campaign
Kampagnen.et_pb_charitable_campaigns
Spendenformular.et_pb_charitable_donation_form
Spenden-Button.et_pb_charitable_donate_button

Common Element Selectors

/* Campaign titles */

.et_pb_charitable_campaign .campaign-title,

.et_pb_charitable_campaigns .campaign-title { }

/* Progress bars */

.campaign-progress,

.progress-bar { }

/* Donate buttons */

.donate-button,

.charitable-button { }

/* Form fields */

.charitable-donation-form input[type=”text”],

.charitable-donation-form select { }

Debugging

Enable WordPress Debug Mode

// wp-config.php

define( ‘WP_DEBUG’, true );

define( ‘WP_DEBUG_LOG’, true );

Common Issues

Modules not appearing in builder:

  • Verify Divi theme/plugin is active: function_exists( ‘et_setup_theme’ )
  • Check that Charitable is fully loaded before Divi initializes
  • Look for PHP errors in wp-content/debug.log

Styling not applying:

  • Clear Divi’s static CSS cache: Divi → Theme Options → Builder → Advanced → Static CSS File Generation
  • Check CSS specificity; Divi uses high specificity selectors
  • The integration uses !important on advanced field CSS for this reason

Campaign dropdown empty:

  • Ensure campaigns exist with “Published” status
  • Check if the transient cache needs clearing
  • Verify post_type_exists( ‘campaign’ ) returns true

Preview not updating:

  • Check browser console for JavaScript errors
  • Verify AJAX requests are completing (Network tab)
  • Ensure computed_depends_on includes the field being changed

Detection Methods

The integration uses multiple methods to detect Divi:

// Check for Divi Builder plugin

class_exists( ‘ET_Builder_Plugin’ )

// Check for Divi functions

function_exists( ‘et_setup_theme’ )

function_exists( ‘et_builder_should_load_all_module_data’ )

// Check for Divi/Extra theme

in_array( get_template(), [ ‘Divi’, ‘Extra’ ] )

Visual Builder Detection

// Frontend Visual Builder

isset( $_GET[‘et_fb’] )

// Backend builder

isset( $_GET[‘et_pb_preview’] )

// AJAX context (for preview rendering)

defined( ‘DOING_AJAX’ ) && DOING_AJAX

Extending the Integration

Adding Custom Fields to a Module

To add fields to an existing module via a child theme or plugin, you would need to extend the module class:

class My_Custom_Campaign_Module extends Charitable_Divi_Campaign_Module {

    public function get_fields() {

        $fields = parent::get_fields();

        // Add custom field

        $fields[‘custom_field’] = [

            ‘label’           => ‘My Custom Field’,

            ‘type’            => ‘text’,

            ‘option_category’ => ‘basic_option’,

            ‘toggle_slug’     => ‘main_content’,

        ];

        return $fields;

    }

}

Note: This requires re-registering the module, which is an advanced customization.

Custom Module Category Icon

The Charitable category icon is set via CSS injection rather than Divi’s icon property (which doesn’t support custom SVGs for categories):

li.charitable.et_pb_folder::before {

    content: ” !important;

    background-image: url(‘path/to/icon.svg’) !important;

    background-size: contain !important;

}

Version History

VersionChanges
1.8.12Initial Divi integration release

Support

For issues specific to the Divi integration:

  1. Check this documentation for known solutions
  2. Enable WP_DEBUG and check for errors
  3. Test with a default Divi layout to rule out theme conflicts
  4. Contact Charitable support with debug information

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!

GiveWP Migrationen Neu

White Glove Migrationsservice für GiveWP

Erwägen Sie den Wechsel Ihrer Spendenplattform von GiveWP zu Charitable, möchten aber nicht riskieren, Ihre Daten zu verlieren oder eine komplexe technische Einrichtung selbst vorzunehmen? Der White Glove Migrationsservice von Charitable bietet:

👥 Makellose Spenderzuordnung: Übertragen Sie Ihre gesamte Unterstützerdatenbank sicher und ohne Datenverlust.

📊 Vollständige Finanzhistorie: Bewahren Sie sorgfältig jede historische Transaktion für eine kontinuierliche, genaue Berichterstattung auf.

🔄 Nahtlose wiederkehrende Spenden: Übertragen Sie aktive Dauerabonnements sicher, ohne Ihre Einnahmen zu unterbrechen oder Ihre Spender zu zwingen, ihre Informationen zu aktualisieren.

💳 Keine Gateway-Unterbrechungen: Nutzen Sie weiterhin Stripe, PayPal oder jeden anderen mit GiveWP kompatiblen Prozessor, den Sie bereits lieben.

🚀 Experten-Technik-Setup: Lehnen Sie sich zurück, während unser Team die schwere Arbeit übernimmt, Ihre Formulare zu installieren und zu konfigurieren – außerdem erhalten qualifizierte Benutzer ein ganzes Jahr lang kostenloses Charitable Pro.

Besuchen Sie diese Seite, um mehr zu erfahren.

Automatisierung Verbesserung

📢 Neue Funktion: Automation Connect 2.0 ist da! 🚀

Sie möchten Ihre Spenden-Daten mit Tools wie Mailchimp, Slack oder Google Sheets verbinden, aber keinen Entwickler einstellen oder benutzerdefinierten Code schreiben? Charitalbes neues Automatisierungs-Addon bietet:

⚡ 17 Event-Trigger: Lösen Sie sofort Webhooks für die erste Spende eines Spenders, wiederkehrende Zahlungen oder erreichte Kampagnenmeilensteine aus.

🎯 Intelligente bedingte Logik: Verwenden Sie leistungsstarke UND/ODER-Logik über 11 Felder hinweg, um Daten nur dann zu senden, wenn sie Ihren genauen Kriterien entsprechen, z. B. Newsletter-Opt-ins.

📊 Benutzerdefinierte Payload-Steuerung: Wählen Sie aus über 80 sauberen Datenfeldern für Spender-, Spenden- und Kampagnenmetadaten, damit Ihre Apps genau das erhalten, was sie benötigen.

🚀 Vorkonfigurierte Plattform-Vorlagen: Überspringen Sie die Einrichtung von Grund auf mit fertigen Vorlagen für Zapier, Make.com, n8n, HubSpot und Slack.

🛡️ Zuverlässige Entwickler-Tools: Steuern Sie Ihre Workflows mit signierten HMAC-SHA256-Payloads, vollständigen WordPress-Filtern und automatischen Wiederholungsprotokollen.

Automatisierung Verbesserung

🔌 Charitable trifft Zapier: Verbinden Sie sich mit über 7.000 Apps und automatisieren Sie Ihre Spendenaktionen

Müde vom manuellen Kopieren von Spendeninformationen in Buchhaltungsbögen oder vom Nachverfolgen neuer Spenderanmeldungen? Bringen Sie Ihre Verwaltungsaufgaben auf Autopilot. Charitable ist jetzt offiziell auf Zapier verfügbar und bietet Ihnen eine leistungsstarke No-Code-Möglichkeit, Ihre Spendenaktionen direkt mit dem Rest Ihrer bevorzugten Tools zu verbinden.

Jede Spende, jede Spenderanmeldung und jeder Kampagnenmeilenstein kann jetzt nahtlos einen automatisierten Workflow auslösen.

Was ist neu:

♾️ Verbinden Sie sich mit über 7.000 Apps: Verknüpfen Sie Ihre Charitable-Kampagnen mit alltäglichen Softwareanwendungen wie Google Sheets, QuickBooks, Slack, Mailchimp, HubSpot, Notion, Airtable und Tausenden mehr.

⚡ 12 leistungsstarke Trigger: Erstellen Sie tiefgreifende Workflows mit intelligenten Automatisierungs-Triggern, die den gesamten Spendenlebenszyklus abdecken – einschließlich Neue Spende, Neuer Spender, Abonnement gekündigt und Kampagnenziel erreicht.

📋 Vorkonfigurierte Aktionsvorlagen: Beginnen Sie in drei Minuten oder weniger mit unseren vorgefertigten Vorlagenkombinationen, wie z. B. dem automatischen Protokollieren neuer Spenden direkt in ein Google Sheet oder dem Auslösen benutzerdefinierter Spender-Willkommens-E-Mails über Gmail.

🚫 Kein Code erforderlich: Keine komplexen Webhooks oder benutzerdefinierten PHP-Skripte erforderlich. Wählen Sie einfach Ihren Trigger, wählen Sie Ihre App, ordnen Sie Ihre Felder zu und lassen Sie Zapier die Hauptarbeit erledigen.

Bereit, Stunden an Verwaltungszeit zu sparen? Holen Sie sich Charitable Pro mit dem Automation Connect Addon noch heute und starten Sie Ihren ersten Zap!

Verbesserung Zahlungen

🚀 Einführung von PayPal Commerce: Eine Verbindung, sechs Spendenmöglichkeiten

Spender erwarten moderne, flexible Zahlungsoptionen, wenn sie eine Sache unterstützen. Wenn sie ihre bevorzugte Methode nicht auf ihrem Spendenformular sehen, verschwinden sie oft ohne ein Wort. Mit PayPal Commerce bringen wir ein komplett modernisiertes Checkout-Erlebnis direkt in Ihre Kampagnen.

Genießen Sie eine einzige Integration, die Ihre Formulare verbessert, das Spenden nahtlos gestaltet und Ihnen hilft, jede einzelne Spende zu erfassen.

Was ist neu:

🔌 Ein-Klick-Verbindung: Überspringen Sie unübersichtliche API-Schlüssel und Entwicklerdokumentationen. Klicken Sie einfach auf „Mit PayPal verbinden“, melden Sie sich bei Ihrem Geschäftskonto an und Ihr modernes Formular ist in weniger als fünf Minuten live.

💳 Sechs Spendenmöglichkeiten: Bieten Sie Ihren Unterstützern sofortigen Zugriff auf PayPal-Guthaben, Venmo (US), „Später bezahlen“-Finanzierung, wichtige Kredit-/Debitkarten, Apple Pay (Safari) und Google Pay (Chrome) – alles über dasselbe Formular.

🔄 Flexible wiederkehrende Spenden: Unterstützt vollständig monatliche Spenden. Wählen Sie zwischen der PayPal-Abonnement-API (automatisch von PayPal verwaltet) oder Vault + Cron (sicher direkt auf Ihrer Website verwaltet).

💬 Freundliche Fehlerbehebung: Keine verwirrenden Browser-Warnungen mehr. Wenn eine Zahlung abgelehnt wird, sehen Spender klare, Inline-Nachrichten, die sie anleiten, wie sie das Problem beheben und ihre Spende abschließen können.

Bereit für PayPal, modernisiert? Aktualisieren Sie auf Charitable Pro 1.8.15+ (oder Charitable Lite 1.8.11+) und verbinden Sie Ihr Konto noch heute!

Kampagnen Neu

⏳ Kampagnen-Countdown: Steigern Sie die Dringlichkeit und erhöhen Sie die Spenden

Dringlichkeit ist eines der mächtigsten Werkzeuge im Fundraising! Lernen Sie den Kampagnen-Countdown kennen – einen Live-Echtzeit-Timer, der Prokrastination in sofortige Großzügigkeit umwandelt.

campaign_countdown_animation

Was ist neu:

⏱️ Live-Echtzeit-Dringlichkeit: Verfolgen Sie Tage, Stunden, Minuten und Sekunden bis zur Frist Ihrer Kampagne mit live aktualisierten visuellen Countdowns.

🎨 Auf Ihren Look zugeschnitten: Wählen Sie zwischen umrandeten Kacheln im Box-Stil oder einer sauberen, einzeiligen Inline-Anzeige. Passen Sie Ihr Design sofort mit Schriftart- und tiefen Farbkontrollen an.

🛠️ Platzieren Sie es überall: Fügen Sie den Countdown überall ein, wo Sie möchten, mit dem Kampagnen-Builder-Feld, einem dedizierten Gutenberg-Block oder einem einfachen Shortcode.

🚨 Intelligente Ablaufaktionen: Volle Kontrolle über den Endzustand – wählen Sie, ob der Timer automatisch durch eine benutzerdefinierte Nachricht ersetzt, auf Null eingefroren und mehr werden soll.