Ao modernizar um site clássico do SharePoint, a barra de navegação superior e o menu de início rápido frequentemente desaparecem ou param de funcionar. Os usuários veem menus vazios, links ausentes ou uma estrutura de site quebrada após o processo de modernização. Isso acontece porque o provedor de navegação clássico não é substituído pelo provedor de navegação moderno durante a atualização. Este artigo explica por que a navegação quebra e fornece uma correção passo a passo para restaurá-la.
Principais Conclusões: Corrigindo a Navegação Após a Modernização do Site Clássico
- Central de administração do SharePoint > Central de administração clássica do SharePoint > Coleções de sites: Verifique o modo da coleção de sites antes de iniciar a modernização.
- Cmdlet Enable-CommSite do PnP PowerShell: Converte um site clássico modernizado em um site de comunicação, ativando o provedor de navegação moderno.
- Configurações do site do SharePoint > Elementos de navegação: Ative manualmente a navegação global e a navegação atual nas configurações modernas do site.
Por que a Modernização do Site Clássico Quebra a Navegação
Os sites clássicos do SharePoint usam um sistema de navegação baseado no provedor de Navegação Estrutural. Esse provedor armazena os nós de navegação no banco de dados de conteúdo do site e os renderiza por meio de código do lado do servidor. Ao modernizar um site clássico, o SharePoint remove a página mestra clássica e os layouts de página, mas não migra automaticamente os dados de navegação para o provedor de navegação moderno. O provedor de navegação moderno depende de metadados gerenciados (para navegação global) e navegação estrutural (para navegação atual), mas espera um formato de dados diferente.
O resultado é que o site aparece no modo de interface moderno, mas as web parts de navegação não recebem dados. A barra de navegação superior não mostra links, o menu de início rápido fica vazio e os links personalizados adicionados no site clássico desaparecem. Isso não é uma corrupção dos dados originais de navegação — os dados ainda existem no repositório de navegação clássico. O problema é que o processo de modernização não aciona a conversão desses dados para o formato esperado pela navegação moderna.
O Papel do Modo da Coleção de Sites
Uma coleção de sites clássica mantém seu modo de coleção de sites mesmo após a interface moderna ser ativada. O modo determina qual provedor de navegação está ativo. Se o modo da coleção de sites permanecer como “Experiência clássica”, o provedor de navegação moderno não é carregado. Você deve alterar o modo da coleção de sites para “Moderna” para ativar o provedor de navegação correto. Esta é a causa raiz da maioria das quebras de navegação após a modernização.
Passos para Restaurar a Navegação Após a Modernização
Siga estes passos em ordem. Não pule a etapa do PowerShell — a central de administração sozinha não pode alterar o modo da coleção de sites para sites modernizados.
- Verifique o modo atual da coleção de sites
Vá para Central de administração do SharePoint > Central de administração clássica do SharePoint > Coleções de sites. Selecione o site modernizado e observe a coluna Modo da coleção de sites. Se mostrar “Experiência clássica”, a navegação não funcionará na interface moderna. - Instale e conecte-se ao PnP PowerShell
Abra o Windows PowerShell como administrador. ExecuteInstall-Module PnP.PowerShell -Scope CurrentUserpara instalar o módulo PnP. Em seguida, conecte-se ao seu locatário comConnect-PnPOnline -Url https://seulocatario.sharepoint.com/sites/seusite -Interactive. Faça login com uma conta de administrador do SharePoint. - Converta o site para um site de comunicação
Execute o cmdletSet-PnPHomePage -SitePage Home.aspxpara definir uma página inicial moderna. Em seguida, executeEnable-CommSite -SiteUrl https://seulocatario.sharepoint.com/sites/seusite. Este cmdlet altera o modo da coleção de sites para “Moderna” e ativa o provedor de navegação do site de comunicação. Aguarde 5 minutos para a alteração ser propagada. - Ative os elementos de navegação nas configurações do site
Vá para Configurações do site > Elementos de navegação (ou Configurações > Navegação na interface moderna). Ative Habilitar navegação global e Habilitar navegação atual. Se essas opções estiverem ausentes, a conversão na etapa 3 não foi concluída — aguarde e atualize a página. - Adicione links à navegação moderna
Em Configurações do site > Navegação, clique em Adicionar link para recriar sua estrutura de navegação. Use as mesmas URLs de link do site clássico. Você também pode usar o PnP PowerShell para adicionar links em massa comAdd-PnPNavigationNode -Location TopNavigationBar -Title "Nome do Link" -Url "https://...".
Método Alternativo: Restaurar a Navegação Clássica Temporariamente
Se você precisar da navegação clássica de volta imediatamente enquanto planeja a migração, pode reverter o site para o modo clássico. Vá para Configurações do site > Recursos da coleção de sites e desative o recurso Experiência de interface moderna. Isso restaura a página mestra clássica e a navegação antiga. Esta é uma solução temporária — o site perderá recursos modernos como a biblioteca de páginas moderna.
Se a Navegação Ainda Tiver Problemas Após a Correção Principal
Barra de Navegação Superior Mostra Apenas “Início” Após a Conversão
Isso acontece quando a conversão do site foi bem-sucedida, mas nenhum nó de navegação foi migrado. O provedor de navegação moderno começa vazio. Use os passos do método 1 para adicionar links manualmente ou via PowerShell. Você também pode usar Get-PnPNavigationNode -Location TopNavigationBar para verificar os nós existentes.
Menu de Início Rápido Está Totalmente Ausente
O menu de início rápido em sites modernos é chamado de navegação atual. Se estiver ausente, vá para Configurações do site > Elementos de navegação e certifique-se de que Habilitar navegação atual esteja ativado. Se já estiver ativado, execute Repair-SPOSite -Identity https://seulocatario.sharepoint.com/sites/seusite no SharePoint Online Management Shell para reparar a infraestrutura de navegação do site.
Script Personalizado e Links de Navegação Bloqueados
Sites clássicos frequentemente usam JavaScript personalizado para modificar a navegação. Sites modernos bloqueiam scripts personalizados por padrão. Se sua navegação dependia de injeção de script, esses scripts não serão executados. Remova as dependências de script personalizado e use as configurações nativas de navegação. Você pode ativar scripts personalizados no nível do locatário em Central de administração do SharePoint > Configurações > Script personalizado, mas isso não é recomendado por motivos de segurança.
Navegação Clássica vs Navegação Moderna: Principais Diferenças
| Item | Navegação Clássica | Navegação Moderna |
|---|---|---|
| Armazenamento de dados | Banco de dados de conteúdo (nós estruturais) | Serviço de metadados gerenciados ou nós estruturais no nível do site |
| Método de renderização | Página mestra do lado do servidor (v4.master) | Web parts do lado do cliente (TopNavigationBar, QuickLaunch) |
| Suporte a script personalizado | Suporte total via web part Editor de Script | Bloqueado por padrão; use extensões do SharePoint Framework |
| Número máximo de links | Sem limite imposto (desempenho degrada após ~100) | Até 200 links por nível de navegação |
| Modo da coleção de sites necessário | Experiência clássica | Experiência moderna (site de comunicação) |
Após concluir os passos acima, seu site modernizado terá uma barra de navegação funcional com os mesmos links que você tinha no site clássico. Teste a navegação em algumas páginas para garantir que todos os links sejam resolvidos corretamente. Para estruturas de navegação grandes, use o PnP PowerShell para exportar os nós de navegação clássicos com Get-PnPNavigationNode -Location QuickLaunch e importá-los para o site moderno. Isso economiza tempo em comparação com a entrada manual de links.