Files
claude-plugins/wordpress/skills/rank-math/SKILL.md
T

4.9 KiB

name, description, layer
name description layer
rank-math Gestão programática do Rank Math SEO (Free e PRO) via WP-CLI em servidores CWP. Cobre auditoria SEO, meta em massa, schema markup, redirects, sitemaps, Instant Indexing, Analytics PRO, hooks/filtros, taxonomias WooCommerce, News/Video Sitemap, validação e rollback. Usar quando "rank math", "seo cli", "schema markup", "redirects seo", "instant indexing", "indexnow", "seo bulk", "rankmath pro". wiki

/rank-math — Gestão Programática Rank Math SEO via WP-CLI

Operações SEO WordPress completas via WP-CLI no servidor CWP. Free + PRO.

Manual completo: Hub/06-Operacoes/Documentacao/Manuais/WP-CLI/Rank-Math-WP-CLI-Manual-Definitivo.md Quick Reference: Hub/06-Operacoes/Documentacao/Quick-Reference/QR-RankMath-WP-CLI.md Pesquisa Claude: Hub/06-Operacoes/Documentacao/Manuais/WP-CLI/Rank-Math-SEO-WP-CLI-Skils-Pesquisa-Claude.md Pesquisa Gemini: Hub/06-Operacoes/Documentacao/Manuais/WP-CLI/Rank-Math-SEO-WP-CLI-Skills-Pesquisa-Gemini.md NotebookLM: WordPress Config CLI Skill relacionada: /seo-post — optimizar posts individuais com pipeline completo


Contexto NotebookLM

ANTES de executar, consultar notebooks para contexto especializado:

Notebook ID Consultar quando
WordPress e Elementor 5be0d1a6 Sempre
Marketing Digital PT 4c595973 Para contexto SEO
mcp__notebooklm__notebook_query({
  notebook_id: "5be0d1a6-00f2-4cd9-b835-978cb7721601",
  query: "<adaptar ao contexto do pedido do utilizador>"
})

Uso

/rank-math audit SITE_PATH
/rank-math update-meta SITE_PATH
/rank-math sitemap SITE_PATH
/rank-math redirects SITE_PATH
/rank-math schema post ID SITE_PATH
/rank-math indexing SITE_PATH [URL|bulk]
/rank-math analytics SITE_PATH
/rank-math taxonomy SITE_PATH
/rank-math hooks SITE_PATH
/rank-math backup SITE_PATH
/rank-math provision SITE_PATH

Contexto CWP — sempre obrigatorio

# Formato base (PHP 8.3)
/opt/alt/php-fpm83/usr/bin/php /usr/local/bin/wp <comando> --allow-root --path=/home/USER/public_html

# Alias
wp83 <comando> --allow-root --path=/home/USER/public_html

Acesso via MCP SSH:

servidor: server.descomplicar.pt (176.9.3.158) | porta: 9443 | user: root

Prefixo de tabelas: Sites podem ter prefixo custom (ex: wpah_ em vez de wp_). Detectar primeiro:

PREFIX=$(wp db prefix --allow-root --path=$PATH)
# Usar $PREFIX em todas as queries SQL: ${PREFIX}posts, ${PREFIX}postmeta, etc.

Unico comando nativo Rank Math:

wp rankmath sitemap generate --allow-root --path=$PATH

Tudo o resto usa wp post meta, wp option patch, wp eval ou wp db query.

Options com defaults: Muitas sub-keys (title_separator, strip_category_base, homepage_title, knowledgegraph_type) podem nao existir na BD se nunca foram alteradas — o Rank Math usa valores por defeito internos. wp option pluck retorna exit code 1 neste caso. Nao e erro — significa valor default.


Decision tree — qual comando usar

Operacao Comando
Alterar meta de 1 post wp post meta update
Alterar sub-key em option serializada wp option patch update
Ler sub-key de option wp option pluck
Schema complexo wp eval com PHP
Redirects wp eval com \RankMath\Redirections\DB
Bulk simples shell loop com wp post list | while read
Bulk complexo wp eval-file com script PHP
SQL directo apenas auditorias (seguido de wp cache flush)
Regenerar sitemap wp rankmath sitemap generate
Instant Indexing wp eval com IndexNow API ou classes RM
Side-effects RM wp eval com update_option() (dispara hooks)

1. Auditoria SEO (/rank-math audit)

Passo 1 — diagnostico rapido

PATH=/home/USER/public_html
PREFIX=$(wp db prefix --allow-root --path=$PATH)

# Posts sem titulo SEO
wp db query "SELECT p.ID, p.post_title FROM ${PREFIX}posts p
LEFT JOIN ${PREFIX}postmeta pm ON p.ID=pm.post_id AND pm.meta_key='rank_math_title'
WHERE p.post_type='post' AND p.post_status='publish'
AND (pm.meta_value IS NULL OR pm.meta_value='');" --allow-root --path=$PATH

# Posts sem descricao SEO
wp db query "SELECT p.ID, p.post_title FROM ${PREFIX}posts p
LEFT JOIN ${PREFIX}postmeta pm ON p.ID=pm.post_id AND pm.meta_key='rank_math_description'
WHERE p.post_type='post' AND p.post_status='publish'
AND (pm.meta_value IS NULL OR pm.meta_value='');" --allow-root --path=$PATH

# Distribuicao de SEO scores
wp db query "SELECT
  CASE WHEN CAST(meta_value AS UNSIGNED) >= 80 THEN 'Bom (80-100)'
       WHEN CAST(meta_value AS UNSIGNED) >= 50 THEN 'OK (50-79)'
       ELSE 'Fraco (0-49)' END AS faixa,
  COUNT(*) AS total
FROM ${PREFIX}postmeta WHERE meta_key = 'rank_math_seo_score' GROUP BY faixa;" --allow-root --path=$PATH

# Top 404s (ultimos 30 dias)
wp db query "SELECT uri, SUM(times_acce