Uma tarefa comum ao fazer a auditoria de um site, principalmente para otimizações de SEO, é obter uma lista de todas as URLs públicas do site. Abaixo mostro várias opções de como fazer isto para sites criados com o WordPress. Para simplificar, estou utilizando páginas neste texto para me referir à todo conteúdo público de um site, incluindo posts e Custom Post Types (CPT).
Sitemap
Um sitemap é um arquivo público, geralmente no formato XML, que lista todas as páginas de um site. Ele normalmente é criado para os mecanismos de busca para facilitar a indexação do site. Por motivos de organização e limitação de 50.000 URLs, normalmente há um arquivo índice do sitemap que aponta para vários outros arquivos de sitemap. Se você acessar cada um desses arquivos listados, obterá a lista de todas as páginas públicas do site.
Sitemap nativo
Desde o WordPress 5.5 a plataforma possui um gerador automático de sitemap. Ele está disponível através da URL wp-sitemap.xml
.
Yoast SEO
O plugin Yoast SEO é uma das soluções mais populares de SEO para o WordPress. Ele gera um sitemap na URL sitemap_index.xml
.
REST API
O WordPress possui uma REST API que é bem poderosa. É possível utilizá-la para obter a lista de todas as páginas através dos endpoints de páginas (/wp-json/wp/v2/pages
), posts (/wp-json/wp/v2/posts
) ou outro Custom Post Type listado em /wp-json/wp/v2/
.
Por questões de otimização da API, é possível exibir no máximo 100 páginas por vez (com per_page=100
) e caso você precisar de mais páginas, será necessário usar paginação (exemplo: page=2
).
Plugin para listar páginas
Pesquisando por uma solução simples para listas todas as páginas de uma só vez, encontrei o plugin List all URLs. Ele adiciona uma opção dentro do menu Configurações do Painel Administrativo, onde é possível listar todas as URLs ou escolher listar apenas um tipo específico (somente páginas, posts ou CPT). Apesar da última atualização dele ter sido faz mais de 2 anos atrás, ele ainda funciona.
Estas são as soluções que conheço para listar todas as páginas de um site. Se você souber de alguma diferente, deixe um comentário.
Deixe um comentário