Tag: Buddypress

  • Linking Gravity Forms to BuddyPress Forums

    I was posed with problem: make BuddyPress forum topics from a Gravity Forms form submission. Turning Gravity Form submissions into posts isn’t a big party trick– that is built in. What doesn’t work, is the linkage to a particular forum as a new topic. So: I did some hacking (see the code below).

    • I made a gravity form
    • I have it posting to the post_type for topics
    • I put in a hidden value with the label of “forum_id” and the number for that forum id as the default value for the hidden value
    • I had an existing plugin that was mine. I added the code below to listen for Gravity Form events and then act on the submission.
    • WordPress will do the submission, save the post, then go to this function to act and create linkage between the form submission and a forum.
    // publish and associate the form
    
    function sboxr_application_submission( $entry, $form ) {
    	if (function_exists('bbp_update_forum')) {
    	    //getting post
        	$post = get_post( $entry['post_id'] );
    
    	    //changing post content
    	    foreach ($form['fields'] as $key => $values) {
        		if ($values['label'] == 'forum_id') {
        			$post->post_parent = $values['defaultValue'];
        			break;
        		}   
    	    }
    
    		$forum_meta = array(
    			'forum_id' => $post->post_parent,
    			'topic_id' => $post->ID,		
    			'comment_status' => 'open'
    		);
    		$post->comment_status = 'open';	
    		$post->post_status = 'publish';
    
    		bbp_update_forum(array('forum_id' => $post->post_parent));
    	    //updating post
    		wp_update_post($post);
    	
    		foreach ( $forum_meta as $meta_key => $meta_value ) {
    			update_post_meta( $post->ID, '_bbp_' . $meta_key, $meta_value );
    		}	
    	}
    }
    
    // Hook to make the gravity form submission to connect to forum post creation
    add_action( 'gform_after_submission_2', 'sboxr_application_submission', 10, 2 );
    

We’ll take good care of your website.

Copyright © 2025 – Web321 | All Right Reserved