📘 Aula (Parte 2): Configurações Multisite e customizações no wp-config.php
No post anterior, explicamos a estrutura básica do arquivo wp-config.php. Agora vamos nos aprofundar nas configurações exclusivas para Multisite e nas customizações reais que usamos no portanova.com.br.
Importante: As constantes mostradas aqui só devem ser usadas em uma rede Multisite. Em um site WordPress normal (single site) elas não existem ou devem ser omitidas.
🌐 Configurações do Multisite
Para transformar um WordPress comum em uma rede de sites (Multisite), você precisa adicionar as seguintes constantes no arquivo wp-config.php (na seção de configurações customizadas):
// ===============================================
// ATIVAR O MODO MULTISITE
// ===============================================
define('WP_ALLOW_MULTISITE', true); // Permite a criação da rede
// Após instalar a rede, o WordPress gera estas constantes automaticamente:
define('MULTISITE', true); // Declara que a rede está ativa
define('SUBDOMAIN_INSTALL', false); // false = usa subdiretórios (ex: site.com/notebook/); true = subdomínios (ex: notebook.site.com)
define('DOMAIN_CURRENT_SITE', 'www.portanova.com.br'); // Domínio principal da rede
define('PATH_CURRENT_SITE', '/'); // Caminho da raiz da rede
define('SITE_ID_CURRENT_SITE', 1); // ID do site principal na rede
define('BLOG_ID_CURRENT_SITE', 1); // ID do blog principal (sinônimo de SITE_ID)
🧠 Explicação de cada constante
WP_ALLOW_MULTISITE→ Necessária antes da instalação. Sem ela, o WordPress não exibe as opções de rede. Depois que a rede é criada, você pode mantê-la ou removê-la (mas é seguro manter).MULTISITE→ Indica que o WordPress está rodando em modo rede. É gerada automaticamente após a instalação.SUBDOMAIN_INSTALL→ Define a estrutura de URLs.false= subdiretórios (ex:portanova.com.br/notebook/).true= subdomínios (ex:notebook.portanova.com.br).DOMAIN_CURRENT_SITE→ Domínio principal da rede (com ou semwww). Todos os sub-sites herdam esse domínio.PATH_CURRENT_SITE→ Caminho raiz da rede. Geralmente'/'.SITE_ID_CURRENT_SITEeBLOG_ID_CURRENT_SITE→ Identificadores do site principal (geralmente1).
📌 Nota para sites normais (single site): Em uma instalação comum do WordPress, nenhuma dessas constantes deve estar presente. Se você adicionar WP_ALLOW_MULTISITE ou MULTISITE em um site single, poderá causar erros ou comportamentos inesperados.
⚙️ Configurações customizadas reais do portanova.com.br
Abaixo estão as configurações adicionais que usamos no nosso Multisite, incluindo ajustes de desempenho, segurança e compatibilidade com plugins.
🔧 Debug (ambiente de desenvolvimento)
define('WP_DEBUG', true); // Ativa exibição de erros
define('WP_DEBUG_LOG', true); // Salva erros em /wp-content/debug.log
define('WP_DEBUG_DISPLAY', false); // Não mostra erros na tela
@ini_set('display_errors', 0); // Força ocultação de erros
🔧 Cron (tarefas agendadas)
define('DISABLE_WP_CRON', true); // Desativa o cron nativo (usamos cron do servidor)
🔧 Segurança e performance
define('WPCOM_API_KEY', '983e0f6c595e'); // Chave da API Akismet
define('WP_MEMORY_LIMIT', '512M'); // Aumenta a memória do PHP
define('WPSC_READABLE_WARNING', false); // Remove aviso do WP Super Cache
🔧 Query Monitor (desativado no Elementor)
if ( isset( $_GET['action'] ) && $_GET['action'] === 'elementor' ) {
define('QM_DISABLED', true); // Desliga o Query Monitor ao editar com Elementor
}
🔧 Outras constantes usadas (opcionais)
// define('WP_ALLOW_MULTISITE', true); // já está na seção Multisite
// define('MULTISITE', true); // já está na seção Multisite
// define('WP_MEMORY_LIMIT', '256M'); // valor menor, se necessário
🧪 Como fica a seção customizada no wp-config.php
No arquivo real do portanova.com.br, essas configurações aparecem organizadas entre os comentários /* Add any custom values... */ e /* That's all, stop editing... */.
/* Add any custom values between this line and the "stop editing" line. */
// 1. ATIVAÇÃO DO MULTISITE (PRÉ-INSTALAÇÃO)
define('WP_ALLOW_MULTISITE', true);
// 2. CONFIGURAÇÕES DA REDE (GERADAS PELO WORDPRESS)
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'www.portanova.com.br');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
// 3. CRON E CACHE
define('DISABLE_WP_CRON', true);
define('WPSC_READABLE_WARNING', false);
// 4. AKISMET
define('WPCOM_API_KEY', '983e0f6c595e');
// 5. MEMÓRIA
define('WP_MEMORY_LIMIT', '512M');
// 6. DEBUG (ATIVO APENAS EM DESENVOLVIMENTO)
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);
// 7. QUERY MONITOR (DESATIVADO NO ELEMENTOR)
if ( isset( $_GET['action'] ) && $_GET['action'] === 'elementor' ) {
define( 'QM_DISABLED', true );
}
/* That's all, stop editing! Happy publishing. */
✅ Resumo para o caderno de estudos
- Site normal (single site): Nenhuma constante de Multisite presente.
- Multisite: Obrigatório definir
WP_ALLOW_MULTISITEe depois incluir as constantes geradas (MULTISITE,SUBDOMAIN_INSTALL, etc.). - Configurações customizadas: Use a seção entre os comentários indicados para adicionar constantes sem bagunçar o resto do arquivo.
- Cuidado: Nunca remova as constantes geradas automaticamente após a instalação da rede, pois isso quebra o Multisite.
Com esta aula, você já consegue diferenciar um arquivo wp-config.php de um site normal de um Multisite e também sabe customizar seu próprio arquivo de forma segura.
Próximo passo: (opcional) podemos criar uma terceira parte explicando como migrar um site normal para Multisite ou como adicionar outras constantes úteis (como WP_SITEURL, WP_HOME, COOKIE_DOMAIN etc.).