O WordPress é uma das ferramentas mais utilizadas para gerenciar conteúdo de blogs e sites na internet. Totalmente customizável, com uma grande comunidade de suporte para criar temas e plugins, é com certeza uma as melhores opções existentes caso você queira ter um site na internet.

Porém por ser muito customizável e aberta, o WordPress pode ser uma ferramenta mais complicada de usar, tanto para instalar e configurar como também na sua manutenção que exige certo conhecimento de servidores e também da linguagem php. Um site WordPress mal configurado pode ser suscetível ao ataque de hackers e também causar uma sobrecarga no servidor de hospedagem.

Para quem administra mais de um site WordPress, existe a opção chamada “multisite” onde uma instalação pode gerenciar mais de um site. Isso é positivo pois economiza tempo e esforço de manutenção e também minimiza problemas de segurança.

Instalar e ativar o WordPress multisite pode ser um pouco complicado porque não existe tanta documentação disponível mas depois que você consegue, verá que não é tão difícil.

Imagine que você tem 2 sites WordPress, cada um rodando separadamente no servidor, configurações, pastas e arquivos diferentes. Então vamos usar um destes sites para se tornar o WordPress multisite e então migrar o conteúdo do outro site WordPress para ele, ficando então com os dois sites numa só instalação chamada de “multisite”. Este é o cenário que vou cobrir este tutorial.

1. Fazer backup das duas instalações WordPress.

Para fazer backup você pode usar o plugin do próprio WordPress para exportar o conteúdo do site.

Vá em Ferramentas -> Exportar, e escolha “Todo conteúdo”.

Faça isso tanto para a instalação que vai migrar quanto para a instalação que vai migrar para multisite. A ferramenta de exportar gera um arquivo XML.

Atenção: Você vai usar o arquivo XML do site migrado para importar o conteúdo para o novo wordpress multisite.

2. Copie os arquivos do tema e plugins.

Copie os arquivos do tema e também plugins, eles ficam nas pastas:


wp-content/plugins
wp-content/themes

Por agora só temos que copiar os arquivos, ativaremos o tema e plugins depois.

3. Ative o WordPress Multisite.

Na instalação do WordPress que será multisite edite o arquivo wp-config.php

Adicione a linha:

define('WP_ALLOW_MULTISITE', true);

Salve.

4. Ative a Rede Multisite dentro do WordPress:

Você terá que escolher entre usar subdomínios ou pastas para acessar os sites gerenciados. Aqui não existe opção para usar um domínio diferente mas mesmo assim vai funcionar conforme as instruções que você fará posteriormente.

Use a opção Sub-domains. Por exemplo: site2.meudominio.com

Não se preocupe, depois ativaremos o domínio correto.

Dê um nome à sua rede, configure o email correto.

Clique em Install.

5. Adicione Configurações no Wp-Config e .htaccess:

Abra a interface de administração do WordPress, você verá novas opções, dentro de ferramentas, clique em “Network setup”.

Você terá que editar dois arquivos:

O arquivo wp-config.php para adicionar as linhas mostradas dentro da sua configuração.

O arquivo .htaccess para colocar novas regras de redirecionamento para o servidor apache. Atenção que você deve substituir as regras anteriores!

Importante: Existe um problema que ainda não resolvi completamente sobre os cookies. Encontrei em alguns foruns do WordPress que é necessário adicionar a linha abaixo ao seu wp-config.php. Apenas no caso de ter problema para logar em um dos sites depois de deslogar da rede.

define('SUBDOMAIN_INSTALL', false);

Leia também: Como proteger pastas com senha no Apache

6. Recarregue o portal de admin do WordPress para ver novas opções:

Agora que você editou os arquivos de forma correta, recarregue o site de admin do WordPress para ver novas opções de configuração.

No top você verá: My Sites: Network Admin e também os sites que estão configurados.

Agora você terá dois tipos de Dashboards, um da rede e um para cada site que administra. Desta forma você pode administrar coisas da sua rede e também coisas peculiares a cada site.

Uma breve explicação de cada menu novo da rede:

Dashboard: Here you can find the widget to add new users and new sites to your network.

Sites: Aqui você pode ver todos sites da sua rede e també ver os posts e páginas. Movendo o cursor sobre cada site você acessa as suas propriedades particulares.

Users: Aqui você administra os usuários da sua rede. Ao contrário de uma instalação simples temos na rede a função do super administrador que tem acesso a todos os sites. Para adicionar usuários que acessam apenas um determinado site isso deve ser feito dentro das funções do site e não da rede.

Themes: Aqui você pode instalar e administrar os temas disponíveis na sua rede.

Plugins: Aqui você pode ver todos os plugins, adicionar ou apagar, e também ativar para toda a rede.

Settings: Aqui você pode editar as funções básicas do seu site, por exemplo, o nome da rede e o email de admin.

7. Crie o novo site da sua rede WordPress.

Vá na opção Sites -> Add new.

Você terá que preencher o endereço URL “Site Address (URL)”. Coloque o nome do site como subdomínio.

Para quem vai usar uma url diferente de onde está o WordPress multisite, faremos o acerto depois. Por agora apenas entre o subdomínio com o nome do novo site.

Entre com o Título, idioma e o email do admin, que pode ser o seu mesmo.

Clique em Add Site para finalizar.

8. Importe o Conteúdo do Site Migrado.

Dentro do dashboard do site, vá em: Meus Sites -> Nome do Site -> Painel. Ferramentas -> Importar.

Lembra do arquivo XML que exportamos. Agora vamos precisar dele.

A ferramenta de importação vai migrar todo o conteúdo, inclusive imagens, para o novo site da rede multisite do WordPress.

9. Ative o Tema e Plugins.

Para ativar o tema você deve ir no dashboard da rede.

Para os plugins, se for um plugin de uso geral, pode ativar no dashboard da rede, senão pode ativa-lo apenas dentro do dashboard do site.

Estes procedimentos são relativamente conhecidos para quem já trabalha com WordPress.

10. Configure o Servidor Web Apache Para encaminhar para a pasta do WordPress Multisite.

O seu site antigo tinha uma configuração dentro do Apache para uma pasta individual de WordPress, agora teremos que alterar para o Apache apontar para a pasta do WordPress multisite.

Obs: Verifique se a configuração do wordpress multisite no Apache está para aceitar subdominios:

Dentro do arquivo de configuração do wordpress multisite como a seguir:

/etc/apache2/sites-available/wordpress-multisite.com.conf

certifique-se que você tem a configuração como abaixo, onde seu-site.com é a URL do WordPress multisite:

O asterisco serve para que a pasta seja mapeada pelo apache para qualquer subdomínio. Isso fará com que o site que você adicionou no passo 7 seja acessível. Algo como http://novosite.url-multisite.com vai encaminhar para o site criado dentro do WordPress multisite.

ServerAlias *.seu-site.com www.seu-site.com seu-site.com

Edite o arquivo do seu site que deve estar dentro da pasta:

/etc/apache2/sites-available/site.com.conf


ServerAdmin webmaster@localhost
ServerName www.meusite.com
ServerAlias www.meusite.com meusite.com
RewriteEngine on
DocumentRoot /var/www/wordpress-multisite/httpdocs/

Options FollowSymLinks
AllowOverride None


Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all

Não esqueça de reiniciar o servidor Apache.

No Ubuntu você faz com esse comando:

sudo service apache2 restart

11. Alterar a URL para seu domínio customizado (opcional)

Agora que seu site esta funcionando, caso você tenha um domínio específico para ele tal como www.meusite.com, resta alterar a URL dele dentro do WordPress.

Vá em Network Admin -> Sites.

Edite o site que deseja alterar a URL. Em “Site Address (URL)” digite a URL que quiser.

Veja também: Como forçar SSL no WordPress