Si nous essayons d'accéder à un site multisite non existant, par exemple, http://site1.example.com
ou http://example.com/site1/
, nous sommes redirigés vers http://example.com/wp-signup.php?new=site1
.
Comment bloquer cela et rediriger le navigateur vers une autre page?
Une alternative (peut-être meilleure) consiste à utiliser la constante constante dans wp-config.php
:
define( 'NOBLOGREDIRECT', 'http://example.com' );
Au tout début du fichier wp-signup.php
il y a ce code:
function do_signup_header() {
do_action( 'signup_header' );
}
add_action( 'wp_head', 'do_signup_header' );
Il suffit donc d’ajouter le hook d’action signup_header
pour interrompre toute exécution ultérieure et rediriger le navigateur vers une autre URL.
Ici, emballé comme un Must Use Plugin :
<?php
/*
Plugin Name: Multisite - Prevent Sign-up Page
Plugin Url: http://wordpress.stackexchange.com/q/85529/12615
Version: 1.0
Author: Rodolfo Buaiz
*/
add_action( 'signup_header', 'rbz_prevent_multisite_signup' );
function rbz_prevent_multisite_signup()
{
wp_redirect( site_url() );
die();
}
J'ai trouvé une solution dans cet article
J'ai eu la mauvaise valeur de réglage SUBDOMAIN_INSTALL
dans mon fichier de configuration.