Spendenformulare können dank der internen API von Charitable auf verschiedene Weise angepasst werden. Eine der am häufigsten nachgefragten Funktionen ist das Hinzufügen eines oder mehrerer benutzerdefinierter Felder zum Charitable-Spendenformular. In diesem Beitrag zeigen wir Ihnen einige Beispiele für das Hinzufügen benutzerdefinierter Felder mit Code-Snippets.
Auch wenn Sie kein Entwickler sind, ist das Hinzufügen von Code-Snippets einfach. Sie haben die Möglichkeit, ein Code-Snippet-Plugin Ihrer Wahl zu installieren, aber da Charitable hervorragend mit WPCode funktioniert... gehen wir davon aus, dass Sie dieses für diesen Beitrag verwenden.
Hinweis: Wenn Sie Entwickler SIND, dann wissen Sie, dass Code-Snippets zur functions.php eines WordPress-Themes oder innerhalb eines eigenen Plugins hinzugefügt werden können... wenn Sie diesen Weg gehen, empfehlen wir Ihnen, unsere Anweisungen zu Best Practices für das Schreiben von Code mit Charitable zu befolgen. Sie sollten auch unsere Dokumentation zu Charitable_Donation_Field lesen.
WPCode verwenden
Der erste Schritt ist die Installation von WPCode selbst. Sie können die kostenlose Version genauso installieren und aktivieren, wie Sie es mit jedem anderen WordPress-Plugin tun können. Charitable verfügt jedoch über einen einfacheren integrierten Prozess. Bitte lesen Sie unsere Dokumentation zur Installation und zum Durchsuchen von Code-Snippets mit WPCode.
Denken Sie daran, dass Sie, sobald es (über den Charitable-Snippet-Bildschirm oder durch Kopieren und Einfügen des Codes) in WPCode hinzugefügt wurde, ihm einen beschreibenden Titel geben, sicherstellen müssen, dass der Code-Typ „PHP-Snippet“ ist und dass Sie die automatische Einfügung/Ausführung überall ausgewählt haben. Machen Sie das Snippet aktiv/aktiviert. Hier ist ein Beispiel:

Hinzufügen eines Kontrollkästchens
Das Code-Snippet für ein einzelnes Kontrollkästchen unterscheidet sich nicht wesentlich von einem Textfeld. Beachten Sie die Verwendung von „checkbox“ als „type“. Sie können diesen Code auch in unserer WPCode-Snippet-Bibliothek einsehen.
/**
* Collect a checkbox field in the donation form.
*
* This snippet only works in Charitable 1.5 or above.
*
* Related examples:
*
* @see Register a text field (detailed example) - https://github.com/Charitable/library/blob/master/donation-form/register-new-donation-field-1.5.php
* @see Register multiple fields - https://github.com/Charitable/library/blob/master/donation-form/register-multiple-donation-fields.php
* @see The old way to add fields - https://github.com/Charitable/library/blob/master/donation-form/legacy/add-checkbox-field-to-donation-form.php
*/
function wpchar_charitable_register_new_checkbox_field() {
if ( ! class_exists("Charitable_Donation_Field" ) ) {
return;
};
/**
* Define a new checkbox field.
*/
$field = new Charitable_Donation_Field( 'new_checkbox_field', array(
'label' => __( 'New Checkbox Field', 'charitable' ),
'data_type' => 'user',
'donation_form' => array(
'type' => 'checkbox',
'show_before' => 'phone',
'required' => false,
),
'admin_form' => true,
'show_in_meta' => true,
'show_in_export' => true,
'email_tag' => array(
'description' => __( 'The new checkbox field' , 'charitable' ),
),
) );
/**
* Register the checkbox field.
*/
charitable()->donation_fields()->register_field( $field );
}
add_action( 'init', 'wpchar_charitable_register_new_checkbox_field' );
Hier sind die wichtigsten Felder zum Anpassen:
- Label. Ändern Sie den Text „Mein benutzerdefiniertes Feld“ in den Anführungszeichen in den Text, den Spender sehen sollen, wenn sie dieses Feld im öffentlichen Spendenformular sehen.
- donation_form -> type. Dies ist der Typ des Spendenfelds (Text, Auswahl, Kontrollkästchen, Datumsauswahl usw.). Siehe unsere Dokumentation für eine vollständige Liste der unterstützten Spendenfeldtypen.
- donation_form -> required. Wenn Sie möchten, dass dieses Feld erforderlich ist, setzen Sie es auf true.
- email_tag. Wenn Sie den in dieses Feld eingegebenen Wert in Ihrer E-Mail mit einem E-Mail-Tag in Charitable aufnehmen möchten, fügen Sie hier eine Beschreibung hinzu, damit Sie ihn in den E-Mail-Einstellungen sehen können. Standardmäßig verwendet Charitable den Schlüsselwert als Tag (in diesem Fall ‚my_custom_field‘).
Sobald dieser Code (über den Charitable-Snippet-Bildschirm oder durch Kopieren und Einfügen des Codes) in WPCode eingefügt wurde, stellen Sie sicher, dass Sie ihm einen beschreibenden Titel geben, dass der Code-Typ „PHP-Snippet“ ist und dass Sie Auto-Insert/Überall ausführen ausgewählt haben. Machen Sie das Snippet aktiv/aktiviert.
Sobald dies aktiv ist, besuchen Sie ein Spendenformular (entweder automatisch von Charitable generiert oder über einen Shortcode) und Sie sollten Ihr Kontrollkästchen sehen. 🎉
Mehrere Kontrollkästchen
Das Hinzufügen mehrerer Kontrollkästchen erfordert das Hinzufügen von „options“ zum Snippet und die Änderung des Typs auf „multi-checkbox“.
Das folgende Skript fügt MEHRERE KONTROLLKÄSTCHEN hinzu (unter Verwendung von „multi-checkbox“ und kann auch in unserer WPCode-Snippet-Bibliothek gefunden werden und Sie können auch weitere reale Beispiele für die Verwendung von Kontrollkästchen sehen, die etwas mehr Logik hinzufügen, wie dieses Beispiel für das Hinzufügen eines Kontrollkästchens zum Abbestellen von Spendenquittungen.
/**
* Add three checkboxes (the same group) in the donation form.
*
* This snippet only works in Charitable 1.5 or above.
*
*/
function wpchar_charitable_register_new_checkboxes_field() {
if ( ! class_exists("Charitable_Donation_Field" ) ) {
return;
};
/**
* Define a new checkbox field.
*/
$field = new Charitable_Donation_Field( 'new_checkboxes_field', array(
'label' => __( 'New Checkboxes Field', 'charitable' ),
'data_type' => 'user',
'donation_form' => array(
'type' => 'multi-checkbox',
'show_before' => 'phone',
'required' => false,
'options' => array (
'option_1_value' => 'Option One',
'option_2_value' => 'Option Two',
'option_3_value' => 'Option Three',
),
),
'admin_form' => true,
'show_in_meta' => true,
'show_in_export' => true,
'email_tag' => array(
'description' => __( 'The new checkbox field' , 'charitable' ),
),
) );
/**
* Register the checkbox field.
*/
charitable()->donation_fields()->register_field( $field );
}
add_action( 'init', 'wpchar_charitable_register_new_checkboxes_field' );
Dies sollte in Ihrem Spendenformular wie folgt angezeigt werden:






Hinterlassen Sie eine Antwort