Add Select Field To Donation Form (copy)

/** * Add a select field to the donation form. * * Fields are added as a PHP array that define the field. * * This snippet only works in Charitable 1.5 or above. * */ function ed_charitable_register_new_select_field() { if…Continue reading

Make Donor Address Required

/** * Make all address fields required. * * As of Charitable 1.6 the approach below is the recommended way of achieving this. * If you are using an older version of Charitable, see the legacy version below: * *…Continue reading

Add Empty Option To Countries List

/** * In this example we add an empty “Select your country” * option at the start of the list of countries in the * donation form. */ add_action( ‘init’, function() { $fields = charitable()->donation_fields(); $field = $fields->get_field( ‘country’ );…Continue reading

Change Section Headers Per Campaign

/** * Change the section headers in the donation form. * * @param array $fields All the donation form fields. * @return array */ function ed_charitable_change_donation_form_section_headers_per_campaign( $fields, $form ) { if ( 123 === $form->get_campaign()->ID ) { // Section headers…Continue reading

Allow Zero Dollar Donations

/** * Allow people to “donate” $0. */ function ed_charitable_set_minimum_donation_amount() { return 0; } add_filter( ‘charitable_minimum_donation_amount’, ‘ed_charitable_set_minimum_donation_amount’ ); /** * You need to specifically enable $0 donations. */ add_filter( ‘charitable_permit_0_donation’, ‘__return_true’ );Continue reading

Change Custom Amount Field Label Per Campaign

/** * Filter the custom amount field description on a per campaign basis. * * @param string $label The default label. * @return string */ function ed_charitable_donation_form_set_custom_amount_field_text_per_campaign( $label ) { $campaign_id = charitable_get_current_campaign_id(); if ( 226 === $campaign_id ) {…Continue reading

Move User Fields In Donation Form

/** * In this example we move the user fields section (the “Your Details” bit) to * appear below the payment fields. */ function ed_charitable_move_user_fields_in_donation_form( $fields ) { if ( ! array_key_exists( ‘details_fields’, $fields ) ) { $fields[‘user_fields’][‘priority’] = 80;…Continue reading

Remove Terms Fields

/** * If you would like to enable the terms and conditions, privacy * policy and user contact consent fields in the registration form * but NOT the donation form, you can add the following bit of code. */ add_filter(…Continue reading

Set Fixed Donation Amount

/** * Automatically set the donation amount and recurring * period for donations. * * @param array $fields * @return array */ function ed_charitable_set_donation_amount( $fields ) { unset( $fields[‘donation_fields’] ); // The amount you would like to donate. $amount =…Continue reading