__( 'Display a donation widget.', 'charitable' ), 'customize_selective_refresh' => true, ) ); } /** * Displays the widget on the frontend. * * @since 1.0.0 * * @param array $args Widget args. * @param array $instance Widget instance. * @return void */ public function widget( $args, $instance ) { if ( ! array_key_exists( 'campaign_id', $instance ) || '' === $instance['campaign_id'] ) { return; } charitable_template( 'widgets/donate.php', array_merge( $args, $instance ) ); } /** * Displays the widget form. * * @since 1.0.0 * * @param array $instance Widget instance. * @return void */ public function form( $instance ) { $defaults = array( 'title' => '', 'campaign_id' => '', ); $instance = wp_parse_args( (array) $instance, $defaults ); $title = $instance['title']; $campaign_id = $instance['campaign_id']; $campaigns = Charitable_Campaigns::query( array( 'posts_per_page' => -1 ) ); ?>