Ir para o conteúdo

Uso sem painel ​

As funções de Pro, incluindo varreduras, redirecionamentos e registros de 404, pertencem ao mecanismo e não exigem Filament. O painel é uma interface de gerenciamento; estes comandos oferecem o acesso sem essa interface.

Referência de comandos ​

Instalação e diagnóstico ​

ComandoFunção
seo-pro:installPublica config/seo-pro.php e as migrações de Pro, executa-as e mostra os próximos passos; aceita --no-migrate e --force
seo:doctorVerifica URL da aplicação, tabelas do núcleo e de Pro, alvos, sitemap, filas por tarefa, funções opcionais e estado operacional; indica correções e aceita --json para monitoramento

seo-pro:install é o caminho documentado de instalação. As migrações de Pro precisam ser publicadas e nunca são carregadas automaticamente pelo pacote. O instalador transforma um simples composer require em um esquema utilizável e pode ser executado novamente. Use --force apenas se quiser sobrescrever arquivos publicados.

seo:doctor não faz chamadas de rede nem mostra segredos: a verificação de IA só informa se a variável de chave está definida. Ele valida configuração e histórico recente, sem comprovar que um cron ou worker externo esteja executando. Retorna código diferente de zero apenas para falhas críticas, como uma tabela obrigatória ausente; avisos em desenvolvimento local não causam falha. --json fornece um id estável por verificação. Execute após instalar e em CI.

Varreduras ​

ComandoFunção
seo-pro:scanEnfileira a varredura de todos os alvos; --sync executa no processo atual. As opções de verificação em CI --fail-on-error, --fail-on-warning, --report= e --format=json|md|html exigem --sync
seo-pro:scan-statusResumo da última execução e ocorrências abertas, da maior para a menor gravidade; --limit=20, --severity=critical|warning|notice
seo-pro:scan-recoverMarca como falhas as execuções abandonadas por um worker encerrado
seo-pro:scan-pruneExclui execuções concluídas e suas ocorrências após o prazo de retenção

Desativado por padrão. Ative seo-pro.broken_links.enabled e aplique as migrações das duas tabelas, publicadas por seo-pro:install. O rastreamento é dividido em trabalhos de fila com limites definidos; use um worker dedicado. Consulte os ajustes na configuração de produção.

ComandoFunção
seo-pro:broken-links-scanEnfileira um rastreamento limitado e retomável; --scope=internal_only|internal_and_external e --url=* para URLs iniciais adicionais
seo-pro:broken-links-statusResumo do último rastreamento, ocorrências abertas e inspeções tipadas; aceita --fail-on-error, --fail-on-warning, --report= e --format= para CI
seo-pro:broken-links-cancelCancela um rastreamento em execução ou na fila; {run?} usa o ativo mais recente por padrão
seo-pro:broken-links-recoverMarca como falhos rastreamentos abandonados por um worker, com concessão de execução expirada
seo-pro:broken-links-pruneAplica a retenção a execuções antigas e ocorrências resolvidas

Redirecionamentos e 404 ​

ComandoFunção
seo-pro:redirect-create {source} {target}Cria uma regra; opções --code=301, --regex, --no-preserve-query e --note=
seo-pro:404-listLista 404 por frequência; --status=new|ignored|redirected|all, --limit=20
seo-pro:redirects-flush-hitsGrava no banco os contadores de redirecionamento acumulados em cache quando redirects.hits.flush_immediately=false
seo-pro:404-pruneRemove registros antigos de 404 e aplica o limite de linhas

Lista de verificação da página ​

ComandoFunção
seo-pro:checklist {model} {id}Lista pass/warn/fail com análise de palavras-chave para um modelo; --json, --strict, --locale=. Consulte a lista de verificação

A mesma análise está disponível em SeoPro::checklistFor($model). Ela orienta a edição de palavras-chave, comprimento, imagens e links internos e é separada da pontuação SEO.

Search Console, somente leitura ​

ComandoFunção
seo-pro:search-consolePáginas com ocorrências abertas e tráfego de busca, começando pelas oportunidades problemáticas; --view=attention é o padrão
seo-pro:search-console --view=pagesPrincipais páginas por impressões, cliques, CTR e posição
seo-pro:search-console --view=queriesPrincipais consultas; --days=, --limit=, --json

As métricas também estão disponíveis em SeoPro::searchConsole(). Consulte Search Console. A integração é desativada por padrão e estritamente de leitura.

Assistência de IA ​

ComandoFunção
seo-pro:ai-suggest {model} {id}Sugestões de título e descrição em JSON; --field=title|description|all. Consulte assistência de IA
seo-pro:ai-suggest --issue={id}Explicação de uma correção em linguagem simples, como JSON

Resolver um 404 em uma etapa ​

--from-404={path} equivale à ação de criar redirecionamento do monitor: cria a regra e marca o registro correspondente como redirecionado, vinculando-o à regra nova.

bash
php artisan seo-pro:404-list

#  ID | Path        | Hits | Status | ...
#  1  | /old-pricing | 41  | new

php artisan seo-pro:redirect-create /old-pricing /pricing --from-404=/old-pricing

# Redirect #1 created: /old-pricing → /pricing (301).
# 404 log #1 (/old-pricing) marked redirected.

O comando usa os mesmos validadores do formulário Filament. Expressões regulares inválidas, valores grandes demais e destinos externos fora da lista permitida são rejeitados antes de qualquer gravação.

php
use Illuminate\Support\Facades\Schedule;

// Only needed when seo-pro.redirects.hits.flush_immediately=false.
Schedule::command('seo-pro:redirects-flush-hits')->everyFiveMinutes();

// Keep the 404 log within retention and the row cap.
Schedule::command('seo-pro:404-prune')->daily();

// Scan cadence: weekly suits most sites; go daily when content
// changes fast. Scans are queued jobs - pair with a queue worker.
Schedule::command('seo-pro:scan')->weekly();

// Housekeeping for the scan pipeline.
Schedule::command('seo-pro:scan-recover')->hourly();
Schedule::command('seo-pro:scan-prune')->daily();

// Broken-link crawler (only when enabled). Run a dedicated worker for
// its queue so a long crawl never starves user-facing jobs.
Schedule::command('seo-pro:broken-links-scan')->weekly();
Schedule::command('seo-pro:broken-links-recover')->hourly();
Schedule::command('seo-pro:broken-links-prune')->daily();

A configuração de produção recomenda a frequência de cada comando recorrente e descreve filas, workers, reintentos, recuperação e retenção. Também documenta a telemetria estruturada das execuções concluídas: páginas recuperadas, links verificados, URLs bloqueadas, duração e atraso da fila.

O que exige a interface Filament? ​

O mecanismo completo — processamento de varreduras, ocorrências, correspondência de redirecionamentos, registros de 404, limpeza e recuperação — é o mesmo com ou sem Filament. O painel acrescenta visualizações: progresso e estatísticas por gravidade, filtros e detalhes por página, botões para ignorar e reabrir ocorrências, formulários de redirecionamentos e tabela de 404 com sua ação de correção. Ignorar e reabrir ocorrências ainda não têm um comando específico. Use o painel ou SEOScanIssue::markIgnored() / reopen() no tinker ou no seu código.

rankbeam/laravel-seo é distribuído sob a licença MIT.