DevForge

WordPress

CMS open source líder global, com ecossistema robusto de plugins, temas e comunidade ativa.

⚡ Instalação automatizada (LEMP + WP-CLI)

Ubuntu 22.04 / 24.04 LTS
curl -fsSL https://rafaelferreira2312.github.io/devforge/scripts/wordpress/install-wordpress.sh | bash
Windows PowerShell (Admin)
Set-ExecutionPolicy Bypass -Scope Process; iex "& { $(irm https://rafaelferreira2312.github.io/devforge/scripts/wordpress/install-wordpress.ps1) }"
macOS (Homebrew + Valet)
curl -fsSL https://rafaelferreira2312.github.io/devforge/scripts/wordpress/install-wordpress-mac.sh | bash

O script configura Nginx, PHP 8.3+, MariaDB 10.11+, Redis, WP-CLI e hardening básico de segurança.

Requisitos mínimos

  • CPU: 2 vCPUs (x86_64)
  • RAM: 4 GB (mínimo 2 GB, mas recomendado 4 GB+)
  • Armazenamento: SSD com 20 GB+
  • SO: Ubuntu 22.04/24.04 LTS, Debian 11/12, Windows Server 2019+ (WSL), macOS 12+

Hardware recomendado (Site Médio/Grande)

  • CPU: 4+ vCPUs (Intel Xeon / AMD EPYC ou Apple M1/M2)
  • RAM: 8 GB+ (essencial para multisite ou cache pesado)
  • Armazenamento: NVMe SSD 100 GB+
  • Rede: 1 Gbps, com suporte a HTTP/2 e IPv6

🛠️ Stack recomendada

Pacotes Essenciais (Linux)

  • Nginx (mainline) – Proxy reverso + FastCGI Cache
  • PHP 8.3+ FPM com OPcache, Redis, APCu
  • MariaDB 10.11+ ou MySQL 8.0+
  • Redis Server (cache de objetos)
  • WP-CLI (gerenciamento via terminal)

Docker (opcional)

docker run -d -p 8080:80 --name wp-dev wordpress:latest

Extensões VSCode Recomendadas

WPILife (WordPress Snippets)PHP IntelephenseEditorConfigGitLensMySQL (cweijan)Redis (cweijan)

Backup e Restauração Profissional

Scripts completos para backup de banco de dados, plugins, temas, uploads e configurações, com restauração automática segura.

Backup Completo

Inclui: Banco de dados, Plugins, Temas, Uploads (imagens), wp-config.php, .htaccess, logs e configurações do servidor.

curl -fsSL https://rafaelferreira2312.github.io/devforge/scripts/wordpress/wordpress-backup.sh | bash -s /var/www/wordpress wp_db wp_user sua_senha localhost

Restauração Automática

Restaure seu site completo a partir do backup .tar.gz. Inclui verificação de integridade via SHA256.

curl -fsSL https://rafaelferreira2312.github.io/devforge/scripts/wordpress/wordpress-restore.sh | bash -s /caminho/do/backup.tar.gz

Os backups incluem checksum SHA256 para verificação de integridade e retenção automática de 30 dias.

🔧 Troubleshooting (Casos Reais WordPress)

❌ Erro: "Erro ao estabelecer conexão com o banco de dados"

Causa: Credenciais erradas em wp-config.php ou MySQL parado.
Solução: Verifique com sudo systemctl status mysql e confira os dados no wp-config.php.

⚠️ Tela Branca da Morte (WSOD)

Causa: Exaustão de memória PHP, conflito de plugins ou erro no tema.
Solução: Aumente a memória no wp-config.php com define('WP_MEMORY_LIMIT', '256M');.

🐌 Site lento no admin (back-end)

Causa: Cache de objeto Redis desativado ou pool PHP-FPM mal dimensionado.
Solução: Instale o plugin Redis Object Cache e ative-o.

🔐 Erro 403 ao acessar wp-admin

Causa: Regras de bloqueio no .htaccess ou plugin de segurança.
Solução: Verifique o arquivo .htaccess ou renomeie a pasta do plugin de segurança via FTP.

Diagnóstico automático WordPress:

wp core version --allow-root && wp plugin list --status=active --allow-root && wp db check --allow-root && php -v && redis-cli ping

Este comando verifica: versão do WordPress, plugins ativos, integridade do banco, versão do PHP e conexão com Redis.

⚠️ IMPORTANTE - Como executar os scripts corretamente

Os scripts abaixo funcionam em Windows, Linux e macOS. Siga as instruções específicas do seu sistema:

WINDOWS (PowerShell)
# ERRO COMUM: "arquivo não assinado" ou "execução de scripts desabilitada" # SOLUÇÃO 1: Executar com bypass (recomendado) powershell -ExecutionPolicy Bypass -File "C:\caminho\script.ps1" # SOLUÇÃO 2: Baixar e executar direto (pode ter erro de codificação) powershell -ExecutionPolicy Bypass -Command "iex (irm https://.../script.ps1)" # SOLUÇÃO 3: Habilitar execução permanentemente (como Administrador) Set-ExecutionPolicy RemoteSigned -Scope CurrentUser # Se houver erros de acentuação (caracteres estranhos): O script ainda funciona, apenas a saída visual pode ficar distorcida
LINUX / WSL (Bash)
# ERRO COMUM: "permission denied" ou "comando não encontrado" # SOLUÇÃO 1: Dar permissão de execução (obrigatório) chmod +x script.sh # SOLUÇÃO 2: Executar o script ./script.sh # SOLUÇÃO 3: Executar via curl (baixar e executar direto) curl -fsSL https://.../script.sh | bash # SOLUÇÃO 4: Se der erro de permissão, use sudo (cuidado!) sudo chmod +x script.sh && sudo ./script.sh # Se houver erros de permissão: Execute 'ls -la script.sh' para verificar permissões atuais
macOS (Terminal / Zsh)
# ERRO COMUM: "permission denied" ou "operation not permitted" # SOLUÇÃO 1: Dar permissão de execução chmod +x script.sh # SOLUÇÃO 2: Executar o script ./script.sh # SOLUÇÃO 3: Se der erro de "quarentena" (arquivo baixado da internet) xattr -d com.apple.quarantine script.sh # SOLUÇÃO 4: Executar via curl curl -fsSL https://.../script.sh | bash # Se erro persistir: Vá em Preferências do Sistema → Segurança e Privacidade → Permitir execução

Dicas importantes:
Windows: Se aparecerem caracteres estranhos (ex: "�" ou "ção"), ignore - o script funciona normalmente. Para evitar, baixe o script localmente e execute.
Linux/macOS: Sempre use chmod +x antes de executar scripts baixados.
WSL (Windows): Siga as instruções do Linux, mas certifique-se de que o script está dentro do sistema de arquivos do Linux (não no /mnt/c/).

📜 Scripts prontos

Scripts testados no Ubuntu 22.04/24.04, Debian 12, macOS 13+ e Windows 10/11 com WSL2.

⚙️ Comandos WP-CLI essenciais

wp core update – atualiza o núcleo WordPress
wp plugin update --all – atualiza todos os plugins
wp theme update --all – atualiza todos os temas
wp user list – lista todos os usuários
wp db export backup.sql – exporta o banco de dados
wp search-replace 'antigo.com' 'novo.com' – troca URL no banco

🔒 Hardening de Segurança

Proteger wp-config.php com chmod 600
Desabilitar edição de plugins/temas via admin
Bloquear acesso ao xmlrpc.php
Adicionar SALT keys no wp-config.php
Forçar SSL/TLS (certificado Let's Encrypt)
Limitar tentativas de login
curl -fsSL https://rafaelferreira2312.github.io/devforge/scripts/wordpress/wordpress-hardening.sh | bash

❓ Perguntas frequentes

Como aumentar a memória máxima do WordPress?

Adicione ao wp-config.php: define('WP_MEMORY_LIMIT', '512M');. Ajuste também memory_limit no php.ini do seu servidor.

O script de instalação substitui meu site atual?

Não! O script cria uma nova instância na pasta /var/www/wordpress com banco de dados isolado.

WordPress multisite: quais requisitos adicionais?

RAM ≥4 GB, suporte a wildcard SSL/TLS e ajustar o wp-config.php com define('WP_ALLOW_MULTISITE', true);.

Como agendar backups automáticos?

Adicione ao crontab: 0 2 * * * /caminho/para/wordpress-backup.sh para backup diário às 2h da manhã.