Customize multisite site creation with user data

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.