# Planejamento de Sitemaps - Portal Allminds

## 1. Objetivo

O Portal Allminds possuirá uma grande quantidade de URLs geradas a partir de diferentes estruturas, como profissionais, especialidades, cidades, estados, regiões, convênios, artigos e perguntas.

A estratégia de sitemap será baseada na separação dessas URLs por **grupo estrutural**.

O objetivo é facilitar:

- Descoberta das URLs pelos mecanismos de busca;
- Rastreamento de novas páginas;
- Atualização das URLs já conhecidas;
- Organização de grandes volumes de páginas;
- Identificação de problemas específicos por grupo de URL;
- Expansão futura da plataforma sem necessidade de reorganizar toda a estrutura de sitemap.

O ponto central será:

`https://portal.allminds.app/sitemap_index.xml`

---

# 2. Sitemap Index

## URL

`/sitemap_index.xml`

O `sitemap_index.xml` será responsável por listar todos os arquivos de sitemap do Portal.

Ele não deverá conter URLs de páginas diretamente.

Sua função será indicar aos crawlers onde estão os diferentes conjuntos de URLs.

### Estrutura

```text
/sitemap_index.xml

├── /sitemap-pages.xml
├── /sitemap-posts.xml
├── /sitemap-topicos.xml
├── /sitemap-perguntas.xml
├── /sitemap-temas.xml
├── /sitemap-especialidades.xml
├── /sitemap-especialidades-cidades.xml
├── /sitemap-convenios.xml
├── /sitemap-convenios-cidades.xml
├── /sitemap-cidades.xml
├── /sitemap-estados.xml
├── /sitemap-regioes.xml
└── /sitemap-profissional.xml
```

Essa divisão evita concentrar toda a arquitetura em um único XML e permite que cada grupo cresça de maneira independente.

Também facilita a análise de cobertura de indexação por tipo de página.

---

# 3. `sitemap-pages.xml`

Responsável pelas principais páginas estruturais do Portal.

### URLs incluídas

```text
/
/sobre/
/contato/
/faq/
/politicas-de-privacidade/
/politicas-de-cookies/
/termos-de-uso/
/transparencia/
/disclaimer/

/{profissional}/

/especialidades/
/regioes-de-atendimento/
/atendimento-por-convenio/

/{profissional}/online/
```

### Estratégia

Esse sitemap concentra páginas fixas, hubs e páginas principais do diretório.

São URLs com baixo volume e alta importância estrutural, utilizadas também como pontos de distribuição para outras áreas do portal.

---

# 4. `sitemap-posts.xml`

Responsável exclusivamente pelos conteúdos do Blog.

### Estruturas

```text
/blog/
/blog/{slug-do-post}/
```

### Estratégia

Separar os artigos permite que o conteúdo editorial seja rastreado e monitorado independentemente das demais áreas.

Novos artigos publicados deverão ser adicionados automaticamente ao sitemap.

---

# 5. `sitemap-topicos.xml`

Responsável pelas categorias editoriais do Blog.

### Estruturas

```text
/topicos/
/topicos/{categoria-do-blog}/
```

### Estratégia

As páginas de tópicos funcionam como agrupadores de artigos.

A separação entre artigos e categorias facilita identificar problemas de rastreamento ou indexação especificamente nas páginas de cluster.

---

# 6. `sitemap-perguntas.xml`

Responsável pela área principal de Perguntas e pelas perguntas individuais.

### Estruturas

```text
/perguntas/
/perguntas/{slug-da-pergunta}/
```

### Estratégia

Esse sitemap poderá crescer de forma significativa conforme novas perguntas forem publicadas.

Somente perguntas efetivamente publicadas deverão ser adicionadas.

Perguntas ainda em moderação não deverão aparecer no XML.

---

# 7. `sitemap-temas.xml`

Responsável pelos agrupamentos temáticos das perguntas.

### Estruturas

```text
/perguntas/temas/
/perguntas/temas/{categoria-da-pergunta}/
```

### Estratégia

Permite separar os hubs temáticos das perguntas individuais.

Isso facilita o acompanhamento específico das páginas responsáveis pela organização dos clusters de Perguntas e Respostas.

---

# 8. `sitemap-especialidades.xml`

Responsável pelas páginas de especialidades sem segmentação geográfica.

### Estrutura

```text
/{profissional}/{especialidade}/
```

### Exemplos

```text
/psicologo/psicanalista/
/psicologo/analise-do-comportamento/
```

### Estratégia

Agrupa exclusivamente URLs originadas pela combinação:

`Profissional + Especialidade`

Isso evita misturar essas páginas com suas variações por localização.

---

# 9. `sitemap-especialidades-cidades.xml`

Responsável pelas páginas que associam especialidade e cidade.

### Estrutura

```text
/{profissional}/{especialidade}/{cidade}/{uf}/
```

### Exemplo

```text
/psicologo/psicanalista/dois-corregos/sp/
```

### Estratégia

Esse grupo possui potencial de gerar grande quantidade de URLs devido à combinação entre especialidades e localidades.

Mantê-lo separado facilita tanto o rastreamento quanto a identificação de problemas específicos nessa estrutura.

---

# 10. `sitemap-convenios.xml`

Responsável pelas páginas de convênio sem segmentação de cidade.

### Estrutura

```text
/{profissional}/{convenio}/
```

### Exemplos

```text
/psicologo/unimed/
/psiquiatra/unimed/
```

### Estratégia

Agrupa as URLs formadas exclusivamente pela combinação:

`Profissional + Convênio`

As variações geográficas serão mantidas em outro sitemap.

---

# 11. `sitemap-convenios-cidades.xml`

Responsável pelas páginas que combinam convênio e localização.

### Estrutura

```text
/{profissional}/{convenio}/{cidade}/{uf}/
```

### Exemplo

```text
/psicologo/unimed/dois-corregos/sp/
```

### Estratégia

Esse grupo poderá crescer rapidamente conforme novos convênios e cidades forem adicionados.

A separação permite controlar essa expansão sem interferir no sitemap de convênios gerais.

---

# 12. `sitemap-cidades.xml`

Responsável pelas páginas de profissionais por cidade.

### Estrutura

```text
/{profissional}/{cidade}/{uf}/
```

### Exemplos

```text
/psicologo/dois-corregos/sp/
/psiquiatra/londrina/pr/
```

### Estratégia

Agrupa todas as páginas geográficas em nível municipal que não possuem outra segmentação adicional.

---

# 13. `sitemap-estados.xml`

Responsável pelas páginas em nível estadual.

### Estrutura

```text
/{profissional}/{estado}/
```

### Exemplos

```text
/psicologos/sao-paulo/
/psicologos/parana/
```

### Estratégia

Mantém as páginas estaduais separadas das páginas municipais e regionais.

Isso permite analisar individualmente o rastreamento de cada nível geográfico.

---

# 14. `sitemap-regioes.xml`

Responsável pelas segmentações geográficas internas de uma cidade.

### Estrutura

```text
/{profissional}/{regiao}/{cidade}/{uf}/
```

### Exemplos

```text
/psicologo/zona-sul/sao-paulo/sp/
/psicologo/cabral/curitiba/pr/
```

### Estratégia

Esse sitemap concentra URLs de maior granularidade geográfica, como regiões, zonas e bairros.

Como essas páginas poderão aumentar principalmente em grandes cidades, devem permanecer separadas das páginas municipais.

---

# 15. `sitemap-profissional.xml`

Responsável exclusivamente pelos perfis individuais.

### Estrutura

```text
/{cond-profissional}/{nome-do-profissional}/{cidade}/{uf}/
```

### Exemplos

```text
/psicologa/cristina-linhares/dois-corregos/sp/
/psicologo/caio-freitas-junior/dois-corregos/sp/
```

### Estratégia

A quantidade de perfis tende a ser um dos maiores grupos do Portal.

Mantê-los em um sitemap próprio evita misturar entidades individuais com páginas agregadoras do diretório.

Também permite acompanhar especificamente a descoberta e indexação dos perfis.

---

# 16. Resumo dos grupos

| Sitemap | Grupo de URLs |
|---|---|
| `sitemap-pages.xml` | Páginas estruturais e hubs |
| `sitemap-posts.xml` | Artigos |
| `sitemap-topicos.xml` | Tópicos do Blog |
| `sitemap-perguntas.xml` | Perguntas |
| `sitemap-temas.xml` | Temas das perguntas |
| `sitemap-especialidades.xml` | Especialidades |
| `sitemap-especialidades-cidades.xml` | Especialidades + cidades |
| `sitemap-convenios.xml` | Convênios |
| `sitemap-convenios-cidades.xml` | Convênios + cidades |
| `sitemap-cidades.xml` | Cidades |
| `sitemap-estados.xml` | Estados |
| `sitemap-regioes.xml` | Regiões, zonas e bairros |
| `sitemap-profissional.xml` | Perfis profissionais |

---

# 17. Regras gerais de inclusão

Os sitemaps deverão conter somente URLs aptas para serem rastreadas e indexadas.

Não deverão ser incluídas URLs:

- Inexistentes;
- Despublicadas;
- Com redirecionamento;
- Duplicadas;
- Temporárias;
- Ainda não publicadas;
- Bloqueadas para indexação.

Cada página deverá aparecer somente no sitemap correspondente à sua estrutura.

---

# 18. Geração dinâmica

A geração dos sitemaps deverá acompanhar automaticamente a base de dados do Portal.

Exemplo:

Ao publicar um novo profissional:

```text
/psicologa/nome-do-profissional/cidade/uf/
```

a URL deverá ser adicionada ao:

```text
sitemap-profissional.xml
```

Ao criar uma nova combinação:

```text
/psicologo/psicanalista/campinas/sp/
```

ela deverá ser adicionada ao:

```text
sitemap-especialidades-cidades.xml
```

O mesmo princípio deve ser aplicado a artigos, perguntas, temas, cidades, regiões, especialidades e convênios.

---

# 19. Uso do `<lastmod>`

Os sitemaps deverão utilizar `<lastmod>` para informar aos crawlers **quando determinada URL sofreu sua última alteração relevante**.

Para o Portal Allminds, recomenda-se utilizar **data e horário**, e não apenas a data, porque diversas páginas serão dinâmicas e poderão sofrer mais de uma alteração no mesmo dia. O protocolo Sitemap aceita W3C Datetime e recomenda incluir o horário quando as alterações são frequentes, fornecendo aos crawlers uma informação mais precisa.

### Formato recomendado

```xml
<lastmod>2026-10-01T18:35:42-03:00</lastmod>
```

Exemplo:

```xml
<url>
    <loc>https://portal.allminds.app/{profissional}/{cidade}/{uf}/</loc>
    <lastmod>2026-10-01T18:35:42-03:00</lastmod>
</url>
```

O valor de `<lastmod>` deverá representar **a última modificação relevante da URL**, e nunca a data em que o sitemap foi gerado ou acessado.

## Regras de atualização

O `<lastmod>` deverá ser atualizado quando uma alteração modificar de forma relevante o conteúdo que o crawler encontrará na página.

### Prioridade alta — atualizar sempre

Eventos que deverão gerar uma nova data imediatamente:

- Publicação de uma nova página;
- Alteração relevante de título ou conteúdo;
- Publicação ou edição relevante de um artigo;
- Publicação de uma pergunta;
- Inclusão ou alteração relevante de uma resposta;
- Alteração relevante de um perfil profissional;
- Entrada ou saída de profissionais em uma página de listagem;
- Alteração de especialidade, convênio, cidade ou região que modifique as páginas em que o profissional é exibido.

Exemplo:

Um novo Psicólogo Psicanalista de Dois Córregos é publicado.

Além do perfil individual, poderão sofrer alteração:

```text
/psicologo/
/psicologo/psicanalista/
/psicologo/dois-corregos/sp/
/psicologo/psicanalista/dois-corregos/sp/
```

Cada página realmente modificada deverá receber seu próprio novo `<lastmod>`.

### Prioridade média — atualizar quando alterar o conteúdo renderizado

Alterações em relacionamentos deverão atualizar somente as URLs afetadas.

Exemplo:

Se um profissional passar a aceitar Unimed, poderão ser atualizadas:

```text
/psicologo/unimed/
/psicologo/unimed/dois-corregos/sp/
```

Não existe motivo para alterar o `<lastmod>` de páginas que não sofreram impacto.

### Não atualizar

Não deverão gerar uma nova data:

- Regeneração do sitemap;
- Limpeza de cache;
- Deploy sem mudança de conteúdo;
- Atualização de Analytics;
- Incremento de visualizações;
- Alterações administrativas invisíveis ao usuário/crawler;
- Mudanças exclusivamente técnicas que não alterem o conteúdo apresentado;
- Pequenas correções sem relevância material.

A confiabilidade do `<lastmod>` depende justamente de ele não ser atualizado artificialmente. O Google informa que utiliza esse sinal quando ele é consistente e representa alterações reais.

## Regra para páginas dinâmicas

Nas páginas geradas a partir de múltiplos registros, o `<lastmod>` deverá representar **a alteração relevante mais recente que impactou aquela URL**.

Conceitualmente:

```text
lastmod da URL =
timestamp da última alteração relevante nos dados renderizados
```

Isso se aplica principalmente a:

- Páginas de cidades;
- Estados;
- Regiões;
- Especialidades;
- Especialidades por cidade;
- Convênios;
- Convênios por cidade;
- Perfis profissionais;
- Temas e tópicos.

## `<lastmod>` no `sitemap_index.xml`

O próprio `sitemap_index.xml` deverá utilizar `<lastmod>` para cada sitemap listado.

Exemplo:

```xml
<sitemap>
    <loc>https://portal.allminds.app/sitemap-profissional.xml</loc>
    <lastmod>2026-10-01T18:35:42-03:00</lastmod>
</sitemap>
```

Nesse caso, o timestamp representa **a última modificação daquele arquivo de sitemap**, por exemplo:

- Inclusão de uma URL;
- Remoção de uma URL;
- Alteração do `<lastmod>` de alguma URL contida nele.

Se o sitemap for apenas regenerado sem alteração efetiva em seu conteúdo, o timestamp deverá permanecer inalterado. O protocolo Sitemap prevê esse uso justamente para permitir que crawlers identifiquem quais arquivos do índice sofreram alterações.

## Sobre `<priority>` e `<changefreq>`

Não será necessário utilizar:

```xml
<priority>
```

ou:

```xml
<changefreq>
```

A priorização descrita nesta documentação é uma **regra interna de atualização do `<lastmod>`**, não a utilização da tag `<priority>`.

Para a implementação, a estrutura recomendada permanece objetiva:

```xml
<url>
    <loc>https://portal.allminds.app/psicologo/dois-corregos/sp/</loc>
    <lastmod>2026-10-01T18:35:42-03:00</lastmod>
</url>
```

Dessa forma, o sitemap informa ao crawler **qual URL existe e exatamente quando ela sofreu sua última alteração relevante**, sem adicionar sinais desnecessários.

---

# 20. Escalabilidade

Caso algum sitemap ultrapasse a capacidade recomendada para um único arquivo, ele deverá ser dividido mantendo a mesma classificação.

Exemplo:

```text
sitemap-profissional-1.xml
sitemap-profissional-2.xml
sitemap-profissional-3.xml
```

Todos continuarão sendo relacionados no:

```text
/sitemap_index.xml
```

O mesmo pode ocorrer com qualquer grupo de alto volume.

**Capacidade recomendada:** 10 mil URLs por sitemap.

---

# 21. Diretriz final

A estratégia de sitemap do Portal Allminds será baseada em uma regra simples:

**Cada família estrutural de URLs terá seu próprio sitemap.**

Isso mantém o rastreamento organizado e permite que grandes conjuntos de páginas cresçam independentemente.

A estrutura também facilita a identificação de problemas específicos.

Por exemplo, será possível diferenciar rapidamente comportamentos relacionados a:

- Perfis;
- Cidades;
- Especialidades;
- Especialidades por cidade;
- Convênios;
- Convênios por cidade;
- Regiões;
- Perguntas;
- Artigos.

O `sitemap_index.xml` funcionará como ponto central dessa arquitetura, reunindo todos os grupos em uma única estrutura de descoberta para os crawlers.