feat(wordpress): adiciona plugin wordpress (agents, skills, knowledge e metadados do projeto)
This commit is contained in:
@@ -0,0 +1,185 @@
|
||||
---
|
||||
name: wp-cli
|
||||
description: Gestão WordPress via WP-CLI no servidor CWP. Cobre core, plugins, temas, base de dados, utilizadores, migração, search-replace e automação com suporte multi-PHP.
|
||||
layer: wiki
|
||||
---
|
||||
|
||||
# /wp-cli - Gestão WordPress via WP-CLI no CWP
|
||||
|
||||
Operações WordPress via linha de comandos no servidor CWP (server.descomplicar.pt). Cobre core, plugins, temas, base de dados, utilizadores, migração e automação.
|
||||
|
||||
**Servidor:** server.descomplicar.pt (176.9.3.158) | porta SSH: 9443
|
||||
**Fonte:** `Hub/06-Operacoes/Documentacao/Manuais/WP-CLI no CWP.md`
|
||||
**NotebookLM:** [WordPress Config CLI](https://notebooklm.google.com/notebook/fb2f26bd-8cb0-4d4c-bafc-4f1ebb51c51d)
|
||||
|
||||
---
|
||||
|
||||
## Contexto CWP — Regras Obrigatórias
|
||||
|
||||
```bash
|
||||
# 1. Usar sempre --allow-root (CWP executa como root)
|
||||
# 2. Especificar sempre --path= (não fazer cd)
|
||||
# 3. Usar o PHP correcto para cada utilizador
|
||||
|
||||
# Formato base
|
||||
/opt/alt/php-fpm83/usr/bin/php /usr/local/bin/wp COMANDO --allow-root --path=/home/USER/public_html
|
||||
|
||||
# Aliases ~/.bashrc (se configurados)
|
||||
alias wp74='/opt/alt/php-fpm74/usr/bin/php /usr/local/bin/wp --allow-root'
|
||||
alias wp82='/opt/alt/php-fpm82/usr/bin/php /usr/local/bin/wp --allow-root'
|
||||
alias wp83='/opt/alt/php-fpm83/usr/bin/php /usr/local/bin/wp --allow-root'
|
||||
```
|
||||
|
||||
### Versões PHP disponíveis
|
||||
|
||||
| Alias | PHP | Path |
|
||||
|-------|-----|------|
|
||||
| `wp74` | 7.4 | `/opt/alt/php-fpm74/usr/bin/php` |
|
||||
| `wp80` | 8.0 | `/opt/alt/php-fpm80/usr/bin/php` |
|
||||
| `wp81` | 8.1 | `/opt/alt/php-fpm81/usr/bin/php` |
|
||||
| `wp82` | 8.2 | `/opt/alt/php-fpm82/usr/bin/php` |
|
||||
| `wp83` | 8.3 | `/opt/alt/php-fpm83/usr/bin/php` |
|
||||
|
||||
### Detectar PHP activo de um utilizador
|
||||
|
||||
```bash
|
||||
# Ver pool PHP-FPM do utilizador
|
||||
ps aux | grep "php-fpm: pool USER" | grep -v grep | head -1
|
||||
|
||||
# Ou usar wp-auto.sh (auto-detect)
|
||||
/root/wp-auto.sh --path=/home/USER/public_html plugin list
|
||||
```
|
||||
|
||||
O script `wp-auto.sh` está em `scripts/wp-auto.sh` desta skill.
|
||||
|
||||
---
|
||||
|
||||
## Core WordPress
|
||||
|
||||
```bash
|
||||
PATH=/home/USER/public_html
|
||||
|
||||
# Verificar versão
|
||||
wp core version --allow-root --path=$PATH
|
||||
|
||||
# Actualizar WordPress
|
||||
wp core update --allow-root --path=$PATH
|
||||
|
||||
# Verificar integridade dos ficheiros
|
||||
wp core verify-checksums --allow-root --path=$PATH
|
||||
|
||||
# Instalar versão específica
|
||||
wp core download --version=6.4.3 --force --allow-root --path=$PATH
|
||||
|
||||
# Informações ambiente
|
||||
wp --info --allow-root --path=$PATH
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Plugins
|
||||
|
||||
```bash
|
||||
# Listar todos os plugins
|
||||
wp plugin list --allow-root --path=$PATH
|
||||
|
||||
# Listar plugins desactualizados
|
||||
wp plugin list --update=available --format=table --allow-root --path=$PATH
|
||||
|
||||
# Actualizar todos os plugins
|
||||
wp plugin update --all --allow-root --path=$PATH
|
||||
|
||||
# Instalar e activar
|
||||
wp plugin install akismet --activate --allow-root --path=$PATH
|
||||
|
||||
# Activar / desactivar
|
||||
wp plugin activate NOME --allow-root --path=$PATH
|
||||
wp plugin deactivate NOME --allow-root --path=$PATH
|
||||
|
||||
# Remover plugin
|
||||
wp plugin delete NOME --allow-root --path=$PATH
|
||||
|
||||
# Verificar integridade
|
||||
wp plugin verify-checksums --all --allow-root --path=$PATH
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Temas
|
||||
|
||||
```bash
|
||||
# Listar temas
|
||||
wp theme list --allow-root --path=$PATH
|
||||
|
||||
# Instalar e activar
|
||||
wp theme install hello-elementor --activate --allow-root --path=$PATH
|
||||
|
||||
# Actualizar todos os temas
|
||||
wp theme update --all --allow-root --path=$PATH
|
||||
|
||||
# Activar tema
|
||||
wp theme activate NOME --allow-root --path=$PATH
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Base de Dados
|
||||
|
||||
```bash
|
||||
# Exportar (backup)
|
||||
wp db export /home/USER/backup_$(date +%Y%m%d_%H%M).sql --allow-root --path=$PATH
|
||||
|
||||
# Importar (restaurar)
|
||||
wp db import backup.sql --allow-root --path=$PATH
|
||||
|
||||
# Optimizar tabelas
|
||||
wp db optimize --allow-root --path=$PATH
|
||||
|
||||
# Reparar tabelas corrompidas
|
||||
wp db repair --allow-root --path=$PATH
|
||||
|
||||
# Query directa
|
||||
wp db query "SELECT option_name, option_value FROM wp_options WHERE option_name='siteurl';" --allow-root --path=$PATH
|
||||
|
||||
# Tamanho tabelas
|
||||
wp db query "SELECT table_name, ROUND((data_length+index_length)/1024/1024,2) AS MB FROM information_schema.tables WHERE table_schema=DATABASE() ORDER BY MB DESC LIMIT 20;" --allow-root --path=$PATH
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Migração de Site (Search-Replace)
|
||||
|
||||
```bash
|
||||
# Preview (dry-run) — SEMPRE primeiro
|
||||
wp search-replace 'https://old.com' 'https://new.com' --dry-run --allow-root --path=$PATH
|
||||
|
||||
# Executar após confirmar
|
||||
wp search-replace 'https://old.com' 'https://new.com' --allow-root --path=$PATH
|
||||
|
||||
# Com relatório
|
||||
wp search-replace 'old.com' 'new.com' --report --allow-root --path=$PATH
|
||||
|
||||
# Após migração: limpar cache e regenerar rewrite rules
|
||||
wp cache flush --allow-root --path=$PATH
|
||||
wp rewrite flush --allow-root --path=$PATH
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Utilizadores
|
||||
|
||||
```bash
|
||||
# Listar utilizadores
|
||||
wp user list --allow-root --path=$PATH
|
||||
|
||||
# Criar administrador
|
||||
wp user create admin admin@site.pt --role=administrator --user_pass=SENHA --allow-root --path=$PATH
|
||||
|
||||
# Redefinir password
|
||||
wp user update USERNAME --user_pass=NOVA_SENHA --allow-root --path=$PATH
|
||||
|
||||
# Adicionar papel a utilizador existente
|
||||
wp user set-role USERNAME administrator --allow-root --path=$PATH
|
||||
|
||||
# Remover utilizador (transferindo conteúdo)
|
||||
wp user delete USERNAME
|
||||
Reference in New Issue
Block a user