Cum să dezactivezi pagina de înscriere Multisite?
Dacă încercăm să accesăm un site Multisite inexistent, de exemplu http://site1.example.com
sau http://example.com/site1/
, suntem redirecționați către http://example.com/wp-signup.php?new=site1
.
Cum putem bloca acest lucru și redirecționa browserul către altă pagină?
[Actualizare]
O alternativă (poate mai bună) este să utilizați următoarea constantă în wp-config.php
:
define( 'NOBLOGREDIRECT', 'http://example.com' );
La începutul fișierului wp-signup.php
există acest cod:
function do_signup_header() {
do_action( 'signup_header' );
}
add_action( 'wp_head', 'do_signup_header' );
Așadar, este suficient să adăugați acțiunea (action hook) signup_header
pentru a întrerupe orice execuție ulterioară și a redirecționa browserul către alt URL.
Aici, împachetat ca un Must Use Plugin:
<?php
/*
Plugin Name: Multisite - Prevenire Pagină Înregistrare
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();
}

@kaiser, mereu mi-a displăcut acest comportament în rețelele închise ;)

hei, dragul nostru @kaiser, există o alternativă mai bună, după părerea mea. Am actualizat răspunsul cu ea. De asemenea, am publicat un articol legat.

Voiam doar să menționez că nu îmi place comportamentul de bază. Între timp am găsit DropIns-urile relevante, când am vorbit despre ele. +1 pentru ambele răspunsuri.

Am tot experimentat cu funcții pentru a preveni redirecționările și cu .htaccess pentru a recunoaște */wp-signup.php și a redirecționa către pagina de start a rețelei. define( 'NOBLOGREDIRECT', %URL% );
a rezolvat în sfârșit problema! +1 (de remarcat: rezultatul nu este neapărat vizibil pe localhost cu o redirecționare URL personalizată folosind fișierul hosts din Windows)

Tocmai am încercat să rulez asta ca un plugin MU și provoacă o eroare (headere deja trimise).

Am găsit o soluție în acest articol
Aveam valoarea greșită pentru setarea SUBDOMAIN_INSTALL
în fișierul meu de configurare.
