WordPress 3.0 segna l’unione di WordPress con WordPress MU, permettendo cosi di gestire un network di siti o blog che dir si voglia con WordPress. Attualmente con la versione 3.5 di WordPress non è più necessario utilizzare WordPress MU.
Vediamo allora come abilitare il multisito
Step 1: Abilitiamo il menu Network
Aggiungere la seguente linea al file wp-config.php:
define( 'WP_ALLOW_MULTISITE', true );
Step 2: Creiamo il Network
Eseguiamo il login nell’area amministrativa di WordPress e clicchiamo sulla voce Network nel menu Tools, o Strumenti se è in Italiano. WordPress mette a disposizione l’installazione sia con i sottodomini (sub-domain) che con le sottocartelle (sub-directory) per il tuo network. E’ possibile scegliere uno o l’altro ma non è facile cambiare la scelta in seguito, quindi scegliere con cura l’opzione desiderata. Inoltre, questo dipende anche dal vostro hosting, in quanto non tutti funzionano con i sottodomini, per cui è buona norma accertarsi con il proprio hoster prima di procedere.
- Sottodomini:
Un’installazione di WP con i sottodomini permette di avere i nuovi siti appunto come sottodomini. Per esempio, avremo sito1.dominio.it, sito2.dominio.it, sito3.dominio.it e cosi via, avendo installato WordPress su dominio.it. E’ necessario per questa installazione che il server supporti un alias wildcard e naturalmente i dns wildcards.
- Sottocartelle:
Per quanto riguarda un’installazione di WP con le sottocartelle, avremo i nuovi siti come sottocartelle. Per esempio, avremo dominio.it/sito1, dominio.it/sito2, dominio.it/sito3 etc, naturalmente avendo WordPress installato su dominio.it.
Step 3: Abilitare il Network
Ora creiamo la cartella blogs.dir all’interno di wp-content/ (quindi wp-content/blogs.dir/) per tutti i file media caricati dai siti del network. Assicurarsi che tale cartella abbia i permessi corretti, ovvero che sia scrivibile dal web-server.
Aggiornare il file wp-config.php:
Aggiungere le seguenti linee al file wp-config.php subito sopra /* That’s all, stop editing! Happy blogging. */ o nel caso italiano /* Niente altro, configurazione terminata! Buon blogging. */
1 define( 'MULTISITE', true ); 2 define( 'SUBDOMAIN_INSTALL', true ); //falso per installazione con le sottocartelle 3 $base = '/'; 4 define( 'DOMAIN_CURRENT_SITE', 'dominio.it' ); //sostituire dominio.it con il proprio 5 define( 'PATH_CURRENT_SITE', '/' ); 6 define( 'SITE_ID_CURRENT_SITE', 1 ); 7 define( 'BLOG_ID_CURRENT_SITE', 1 );
Aggiorniamo o creiamo il file .htaccess nella root di WordPress e aggiungiamo le seguenti regole a seconda della vostra installazione:
- Apache e installazione con le sottocartelle:
01 RewriteEngine On 02 RewriteBase / 03 RewriteRule ^index.php$ - [L] 04 # uploaded files 05 RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L] 06 # add a trailing slash to /wp-admin 07 RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L] 08 RewriteCond %{REQUEST_FILENAME} -f [OR] 09 RewriteCond %{REQUEST_FILENAME} -d 10 RewriteRule ^ - [L] 11 RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] 12 RewriteRule ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L] 13 RewriteRule . index.php [L]
- Apache e installazione con i sottodomini:
1 RewriteEngine On 2 RewriteBase / 3 RewriteRule ^index.php$ - [L] 4 # uploaded files 5 RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L] 6 RewriteCond %{REQUEST_FILENAME} -f [OR] 7 RewriteCond %{REQUEST_FILENAME} -d 8 RewriteRule ^ - [L] 9 RewriteRule . index.php [L]
Sostituire tutte le regole di riscrittura che riguardano WordPress sul file .htaccess con una delle precedenti (a seconda della tua installazione) nel caso il file fosse già presente.
Ad ogni modo visitando il menu “Strumenti -> Network” vi vengono illustrati i passaggi descritti sopra.
Step 4: Tornare all’area amministrativa di WordPress
Sarà necessario rifare il login per gestire il multisito. Potrai gestire il tuo network tramite il menù appositamente creato.
Step 5: Configurazione sottodomini (facoltativa)
Pensavi di aver terminato? Si, se hai scelto la configurazione con le sottocortelle. No, se hai scelto una configurazione per sottodomini. Per utilizzare i sottodomini, c’è bisogno si una piccola configurazione aggiuntiva.
Basta accedere al pannello Cpanel o altro e cliccare l’icona Gestione sottodomini. Nel modulo in questione andremo ad inserire un asterisco * nel campo Subdomain, dove potrai notare anche il dominio principale del sito che non andrà modificato, quindi imposteremo il percorso del nostro sito principale, generalmente public_html/ se si trova nella root.
Step 6: Risoluzione di un eventuale problema
Se una volta attivato il tutto ti ritrovi con un errore del genere:
Fatal error: Call to undefined function bp_blogs_subdomain_base()
la soluzione è quella di inserire il seguente codice:
include(getcwd() . '/wp-content/plugins/buddypress/bp-blogs/bp-blogs-template.php');
nel file functions.php del tuo tema.