Customize multisite site creation with user data

No, I’ve never made a plugin. But I would like to, or find someone who can work with me on it. What I’m hoping to accomplish is setup presets on site creation. I need my multisite to do this:

  1. When creating a site, require information from the user creating it
    that is not normally requested.
  2. Upon obtaining this information, create the site with a preset path (using the information previously provided)
  3. Then, when logging in for the first time, redirect the site owner to a setup page where they can choose a theme, a layout, and other options.

I know of the wpmu_create_blog function, but am unsure of where to “include.php” it. Also I don’t know what function to use for editing the site creation page or how to use this information in the wpmu_create_blog function.

Related posts

Leave a Reply

1 comment

  1. To create a basic plugin, add a directory in wp-content/plugin, then put a php file in it with the required header, and that’s it.

    Now, here is how to use the action :

    add_action( 'wpmu_new_blog', 'user16975_customize_blog', 10, 6);
    function user16975_customize_blog($blog_id, $user_id, $domain, $path, $site_id, $meta ){
        // do not forget to select the correct blog (we are in mutisite admin)
        switch_to_blog($blog_id);
    
        // You can retrieve the register information in $_POST var, depending on your registration form
    
        // change the blog name
        update_option('blogname', 'M&F Lastname');
    
        // change the blog address
        $newurl = esc_url( 'http://' . $domain . 'm&f-lastname' );
        update_option( 'siteurl', $newurl );
        update_option( 'home', $newurl );
    
        // rename the default article
        wp_update_post(array(
            'ID' => 1,
            'post_title' => 'Long live the newlyweds!',
            'post_name' => 'long-live-the-newlyweds'
        ));
    
        restore_current_blog();
    }
    

    So the remaining part is to customize your registration form. What form do you use to register new users ? If you are using the front-end registration form, you can add custom registration parameters with the signup_blogform action.