Change Campaign Slug Base

/** * By default, campaigns are located at yoursite.com/campaigns/campaign-name. * * If you want to change the /campaigns/ bit to something else, you * can modify the campaign post type definition using the example below. * * In this example,…Continue reading

Change Campaign Finished Notice

/** * Change the notice shown for campaigns when they are finished. * * This notice is only shown in certain themes (Reach, for example). */ add_filter( ‘charitable_campaign_finished_notice’, function( $message, Charitable_Campaign $campaign ) { /* If the campaign is ongoing,…Continue reading

Change Campaign Rewrite To Not Use With Front

/** * Customizes the definition of the campaign post type, setting the * with_front option to false. * * @param array $post_type_args * @return array */ function ed_set_campaign_post_type_to_not_use_front( $post_type_args ) { $post_type_args[‘rewrite’][‘with_front’] = false; return $post_type_args; } add_filter( ‘charitable_campaign_post_type’, ‘ed_set_campaign_post_type_to_not_use_front’…Continue reading

Use Page Template For Campaigns

/** * Instead of using the Post template for campaigns, use the Page template as a fallback. * * @param string $template * @return string $template */ function ed_campaigns_use_page_template( $template ) { global $wp_query; if ( is_main_query() && is_singular( ‘campaign’…Continue reading

Remove Stats Summary Block

/** * Remove the campaign summary block (funds raised, number of donors, etc). */ function en_remove_campaign_summary_block() { remove_action( ‘charitable_campaign_content_before’, ‘charitable_template_campaign_summary’, 6 ); // If you still want to show a Donate button, uncomment the line below. // add_action( ‘charitable_campaign_content_before’, ‘charitable_template_donate_button’,…Continue reading

Bulk Update Campaign End Dates

/** * Bulk-update the end date for all campaigns. */ add_action( ‘admin_init’, function() { // Retrieve all campaigns. $campaigns = Charitable_Campaigns::query( [ ‘posts_per_page’ => -1, ‘post_status’ => ‘any’, ‘fields’ => ‘ids’, ] ); foreach ( $campaigns->posts as $campaign_id ) {…Continue reading

Move Campaign Summary Below Content

/** * Move the campaign summary block (funds raised, number of donors, etc) to below the * extended description area. */ function en_move_campaign_summary_block() { remove_action( ‘charitable_campaign_content_before’, ‘charitable_template_campaign_summary’, 6 ); add_action( ‘charitable_campaign_content_after’, ‘charitable_template_campaign_summary’, 2 ); } add_action( ‘after_setup_theme’, ‘en_move_campaign_summary_block’, 11 );Continue reading

Add Post Parent Field

/** * Register a Post Parent field for campaigns. * * This will allow the campaign post parent to be edited in the * campaign management page in the WordPress dashboard. */ function ed_charitable_register_campaign_post_parent_field() { $campaigns = get_posts( array( ‘post_type’…Continue reading