web-dev-qa-db-fra.com

Personnaliser la création de sites multisites avec des données utilisateur

Non, je n'ai jamais fait de plugin. Mais j'aimerais bien, ou trouver quelqu'un qui puisse travailler avec moi dessus. Ce que j'espère accomplir, c'est configurer des préréglages lors de la création de sites. J'ai besoin de mon multisite pour faire ceci:

  1. Lors de la création d'un site, demandez à l'utilisateur de créer des informations qui ne sont normalement pas demandées.
  2. Après avoir obtenu ces informations, créez le site avec un chemin prédéfini (en utilisant les informations fournies précédemment).
  3. Ensuite, lors de la première connexion, redirigez le propriétaire du site vers une page de configuration où il peut choisir un thème, une mise en page et d'autres options.

Je connais la fonction wpmu_create_blog , mais je ne sais pas où "l'inclure.php". De plus, je ne sais pas quelle fonction utiliser pour éditer la page de création de site ni comment utiliser ces informations dans la fonction wpmu_create_blog .

2
jmalais

Pour créer un plugin de base, ajoutez un répertoire dans wp-content/plugin, puis placez-y un fichier php avec l'en-tête requis , et c'est tout.

Maintenant, voici comment utiliser l'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();
}

La partie restante consiste donc à personnaliser votre formulaire d'inscription. Quel formulaire utilisez-vous pour enregistrer de nouveaux utilisateurs? Si vous utilisez le formulaire d’inscription front-end, vous pouvez ajouter des paramètres d’enregistrement personnalisés avec l’action signup_blogform.

1
Fabien Quatravaux