Skip to content

Tudo para WordPress, desenvolvimento web — e não só

🛠 Guia completo do WordPress multisite

🛠 Guia completo do WordPress multisite

Dez sites em WordPress, cada um com o seu próprio login, o seu próprio painel de administração, as suas próprias atualizações. Ao fim de um mês, a administração torna-se um trabalho a tempo inteiro.

O WordPress Multisite resolve este problema pela raiz: uma instalação, um login e quantos sites forem necessários. Este modo está integrado no núcleo do WordPress desde a versão 3.0 e não requer plugins de terceiros. Abaixo encontra uma configuração passo a passo do multisite, desde a ativação no wp-config.php até à gestão de uma rede pronta a funcionar.

💡 Visão geral rápida:

  • Preparar o WordPress: instale um site no seu próprio alojamento e obtenha acesso aos ficheiros via FTP ou através de um gestor de ficheiros. Os planos do WordPress.com não são adequados para multisite.
  • Ativar o multisite: adicione define('WP_ALLOW_MULTISITE', true); ao wp-config.php. Após atualizar o painel de administração, aparecerá a opção "Configuração da Rede".
  • Configurar a estrutura da rede: escolha subdomínios ou subdiretórios e preencha os parâmetros básicos. Esta decisão determina o formato dos URLs para todos os sites da rede.
  • Ativar a rede: copie o código fornecido pelo WordPress para o wp-config.php e para o .htaccess, guarde os ficheiros e volte a iniciar sessão no painel de administração. A rede é lançada.

Passo 1: Preparar a instalação do WordPress

O multisite pode ser ativado num site existente ou numa instalação limpa do WordPress; não há diferença fundamental. O principal requisito: o WordPress deve estar instalado no seu próprio alojamento (self-hosted). Os planos do WordPress.com não suportam multisite.

Se o site já estiver em funcionamento, desative temporariamente todos os plugins antes da configuração. Isto é uma garantia contra conflitos durante a fase de ativação da rede. Depois de o multisite estar a funcionar, pode ativar os plugins novamente; serão detetados corretamente.

Verifique se tem acesso aos ficheiros do site via FTP ou através do gestor de ficheiros do alojamento. Terá de editar manualmente o wp-config.php e o.htaccess; não há forma de contornar a necessidade de acesso ao sistema de ficheiros.

Passo 2: Ativar o multisite no wp-config.php

Abra o ficheiro wp-config.php na raiz da sua instalação do WordPress. Localize a linha:

1/* That's all, stop editing! Happy publishing. */

Imediatamente acima dela, adicione:

1/* Multisite */
2define( 'WP_ALL_MULTISITE', true );

Guarde o ficheiro. Esta única linha ativa a funcionalidade oculta de multisite no núcleo do WordPress. Nesta fase, a rede ainda não foi criada; apenas ativou a ferramenta para a configurar.

Atualize a página de administração (ou volte a iniciar sessão se o sistema o tiver desconectado). Aparecerá um novo item no menu Ferramentas: Configuração da Rede.

Passo 3: Configuração da rede, subdomínios ou subdiretórios

Vá a Ferramentas → Configuração da Rede. A página "Criar uma Rede de Sites WordPress" será aberta:

Página de configuração de rede multisite do WordPress

Aqui toma uma decisão arquitetural fundamental: a estrutura de endereços para os sites na rede:

  • Subdomínios: endereços como site1.yourdomain.com, site2.yourdomain.com. Parecem sites independentes e são melhores para SEO. Requerem um registo DNS wildcard no servidor.

  • Subdiretórios: endereços como yourdomain.com/site1, yourdomain.com/site2. Mais fáceis de configurar, sem necessidade de configuração adicional de DNS. Funciona em qualquer alojamento.

Se o site tiver mais de um mês, o WordPress não lhe permitirá escolher subdomínios para uma instalação existente, apenas subdiretórios. Isto não é uma limitação, mas uma proteção contra links quebrados (os URLs antigos de páginas permanentes entrariam em conflito com os endereços de novos sites na rede).

Preencha os campos: nome da rede e e-mail do administrador da rede. O e-mail do superadministrador não precisa de corresponder ao e-mail do administrador do site atual, mas as notificações sobre novos registos e problemas da rede serão enviadas para este endereço.

Clique em Instalar.

Passo 4: Ativar a rede, wp-config.php e.htaccess

Após clicar em "Instalar", o WordPress mostrará uma página com instruções e dois blocos de código:

Instruções de ativação da rede multisite

Antes de fazer alterações, crie uma cópia de segurança do wp-config.php e do.htaccess. Se cometer um erro de digitação em qualquer um dos ficheiros, o site ficará em baixo; uma cópia de segurança permite-lhe reverter em segundos.

Adicionar ao wp-config.php (logo após a linha define('WP_ALLOW_MULTISITE', true); que já adicionou no passo 2):

1define( 'MULTISITE', true );
2define( 'SUBDOMAIN_INSTALL', false );
3define( 'DOMAIN_CURRENT_SITE', 'yourdomain.com' );
4define( 'PATH_CURRENT_SITE', '/' );
5define( 'SITE_ID_CURRENT_SITE', 1 );
6define( 'BLOG_ID_CURRENT_SITE', 1 );

Obtenha o valor de SUBDOMAIN_INSTALL no ecrã de configuração: true para subdomínios, false para subdiretórios. DOMAIN_CURRENT_SITE é o seu domínio sem https:// e sem barra final.

Substitua o conteúdo do.htaccess. Se não existir um ficheiro.htaccess, crie-o na raiz do site, ao lado do wp-config.php. Se o ficheiro existir, substitua completamente o seu conteúdo pelo código do ecrã de configuração da rede. Exemplo para subdiretórios:

1RewriteEngine On
2RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
3RewriteBase /
4RewriteRule ^index\.php$ - [L]
5
6#Rewrite rule: trailing slash for wp-admin
7RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
8
9RewriteCond %{REQUEST_FILENAME} -f [OR]
10RewriteCond %{REQUEST_FILENAME} -d
11RewriteRule ^ - [L]
12RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
13RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
14RewriteRule . index.php [L]

Nota: o código no seu ecrã do WordPress pode diferir ligeiramente do exemplo acima. Copie exatamente o código que a sua instalação forneceu; foi gerado para a configuração específica do seu servidor.

Depois de guardar ambos os ficheiros, saia do painel de administração e volte a iniciar sessão. O WordPress relerá a configuração e ativará a rede.

Passo 5: Painel de administração da rede

Após voltar a iniciar sessão no painel de administração, aparece um novo item de menu: Os Meus Sites → Administrador da Rede:

Menu suspenso de administração da rede do WordPress

O painel de administração da rede é uma secção separada onde todos os sites da rede são geridos. Aqui pode aceder a:

  • Sites: listar, adicionar, editar e eliminar sites na rede.
  • Utilizadores: gerir utilizadores, atribuir administradores a sites individuais.
  • Temas: instalar e ativar temas para toda a rede. Um tema só fica disponível para os sites após a ativação na rede.
  • Plugins: ativação de plugins na rede (ligados a todos os sites de uma vez) ou permissão para ativar seletivamente.
  • Configurações: parâmetros globais: registo de sites e utilizadores, e-mails de boas-vindas, limites de upload.

Para voltar a administrar um site específico, selecione-o no menu suspenso Os Meus Sites e clique em Painel:

Lista de sites multisite no menu Os Meus Sites

O botão "Painel" leva-o para o painel de administração normal do site selecionado, o mesmo painel de uma instalação única do WordPress. A alternância entre sites é instantânea, sem necessidade de voltar a iniciar sessão.

Passo 6: Adicionar o primeiro site e administração

A rede está criada. Vamos adicionar o primeiro site filho.

No painel de administração da rede, vá a Sites → Adicionar Novo. Preencha os campos:

  • Endereço do Site: a parte do URL, ou o nome do subdomínio ou o nome do subdiretório (apenas letras latinas e hífens).
  • Título do Site: o nome de exibição que o proprietário do site vê no painel de administração.
  • E-mail do Administrador: o utilizador com este e-mail tornar-se-á o administrador do novo site. Se ainda não existir um utilizador com este e-mail na rede, o WordPress criará uma conta automaticamente.

Clique em Adicionar Site e está pronto. O WordPress criará um novo site com o tema predefinido, uma base de dados limpa e o administrador atribuído. O proprietário do site obtém o painel de administração padrão do WordPress sem acesso às configurações da rede. Se necessário, o superadministrador pode entrar no painel de qualquer site da rede a qualquer momento através do painel de administração.

Vários pontos importantes de administração:

  • As atualizações do núcleo, temas e plugins são aplicadas uma vez para toda a rede. A poupança de tempo em comparação com N instalações separadas cresce linearmente com cada novo site.
  • Um utilizador pode estar registado num site da rede ou em vários. As permissões em cada site são atribuídas separadamente.
  • Temas e plugins são instalados pelo superadministrador. Os sites individuais veem apenas o que o superadministrador permitiu ao nível da rede.
  • As cópias de segurança são feitas ao nível da instalação: uma base de dados, um sistema de ficheiros. A recuperação também é uma para todos.
  • Os limites de upload são definidos globalmente nas Configurações da Rede: tamanho máximo de ficheiro e tipos de ficheiro permitidos. Por predefinição, o multisite do WordPress limita os uploads a 1500 KB por site; este valor deve ser aumentado para necessidades específicas.
  • O mapeamento de domínios (o plugin WordPress MU Domain Mapping ou a funcionalidade integrada nas versões modernas) permite associar um domínio separado a qualquer site na rede. Um site com o endereço network.com/site5 pode abrir no seu próprio domínio site5.com, mantendo a gestão dentro do multisite.

Ao eliminar um site da rede, o seu conteúdo (páginas, artigos, ficheiros multimédia) é eliminado permanentemente. O WordPress mostra um aviso, mas não cria uma cópia de segurança automática. Antes de eliminar qualquer site, exporte os seus dados utilizando a ferramenta de exportação padrão; demora um minuto, mas guarda o conteúdo para uma possível recuperação.

Note também que o wp-cron funciona de forma diferente no multisite: as tarefas agendadas são executadas quando qualquer site na rede é visitado, e não cada um separadamente. Se um dos sites na rede tiver pouco tráfego, as suas tarefas cron serão executadas na mesma quando alguém visitar um site ativo.

Secretária com código WordPress no ecrã

⁉️🤔 Perguntas frequentes

Posso converter um site existente com conteúdo para multisite?

Sim, é exatamente o cenário descrito nos passos acima. Desative os plugins, adicione WP_ALLOW_MULTISITE ao wp-config.php e percorra a configuração da rede. O conteúdo existente tornar-se-á o site principal da rede com o ID 1. Não há volta a dar: desativar o multisite e regressar ao modo normal é mais difícil do que ativá-lo. Faça uma cópia de segurança completa da base de dados e dos ficheiros antes de começar.

Subdomínios ou subdiretórios: qual é realmente melhor?

Os subdomínios parecem sites separados e não têm o problema de "e se um plugin criar uma página com o mesmo slug de um site filho". Mas os subdomínios requerem DNS wildcard e suporte do fornecedor de alojamento. Os subdiretórios são mais simples: funcionam de imediato, sem DNS. A desvantagem dos subdiretórios é o conflito de slugs. Se um plugin no site principal criar uma página /contact e tiver um site filho em yourdomain.com/contact, o site filho deixará de abrir. Comece com subdiretórios e, quando a rede crescer, migre para subdomínios alterando a configuração.

Quantos sites pode um único multisite suportar na prática?

Não há limitações técnicas; são conhecidas instalações com milhares de sites. O gargalo não é o WordPress, mas o servidor: cada site na rede é servido por um único processo PHP e uma única base de dados. Num VPS típico com 2 GB de RAM, 20 a 50 sites médios funcionam confortavelmente. À medida que a carga aumenta, adicione RAM, configure caching de objetos (Redis) e migre para um servidor de base de dados dedicado.

Posso dar temas e plugins diferentes a sites diferentes?

Sim, é exatamente assim que o multisite funciona. O superadministrador instala temas e plugins ao nível da rede, e o administrador de cada site ativa os que precisa da lista de opções permitidas. Pode configurar a ativação forçada de plugins para todos os sites da rede; isto é conveniente para ferramentas de segurança e cópias de segurança.

O que acontecerá ao SEO ao mudar para multisite?

Os endereços do conteúdo existente no site principal não se alteram; o SEO é preservado. Para novos sites na rede, os subdomínios são percebidos pelos motores de busca como domínios separados (com autoridade separada), enquanto os subdiretórios herdam a autoridade do domínio principal. A escolha entre eles depende se pretende aumentar a autoridade de um domínio ou desenvolver plataformas independentes.

O que escolher: um plano de ação pronto

O WordPress Multisite não é necessário para o proprietário de um único site. Torna-se justificado quando há mais de três sites e administrar cada um separadamente consome tempo que é melhor gasto em conteúdo. Tome a decisão de implementação não pelo número de sites, mas pelo custo total de os suportar: se o tempo combinado para atualizações, cópias de segurança e monitorização exceder duas a três horas por semana, o multisite compensa no primeiro mês de funcionamento.

  • Um a dois sites: mantenha instalações separadas. A sobrecarga do multisite (base de dados partilhada, sistema de ficheiros partilhado, impossibilidade de desativar o modo) não compensa.
  • Três a dez sites: avance com multisite em subdiretórios. Configuração simples, menos componentes móveis.
  • Dez ou mais, especialmente para clientes ou marcas diferentes: subdomínios com caching de objetos e monitorização regular.

Antes de lançar uma rede de produção, pratique numa instalação local; o MAMP ou o Local by Flywheel dar-lhe-ão um ambiente de teste em cerca de 15 minutos, onde pode percorrer todos os passos sem o risco de deitar abaixo um site ativo. Crie a regra: se estiver a alterar algo no wp-config.php ou no.htaccess, faça primeiro uma cópia de segurança, depois edite. Depois de configurar a rede, pode lançar novos sites em poucos minutos, sem repetir a rotina de instalação e configuração do zero.