O cliente tem uma configuração multi-site com algumas páginas CMS que são compartilhadas entre diferentes sites, o problema que eles estão tendo é que isso está causando problemas de conteúdo duplicado e afetando seus rankings de SEO, para resolver isso, precisamos criar um novo módulo que fará o seguinte:
- Adicione um bloco ao head
- O bloco deve ser capaz de identificar o ID da página CMS e verificar se a página é usada em múltiplas store-views
- Nesse caso, deve adicionar uma Meta Tag hreflang ao head para cada store-view que a página esteja ativa
- As Meta Tag’s devem exibir o idioma da loja (exemplo: en-gb, en-us, pt-br, etc...)
- A estrutura da Meta Tag é a seguinte:
<link rel="alternate" hreflang="<?= $storeLanguage ?>" href="<?= $baseUrl . $cmsPageUrl ?>">
Existem três store-views configuradas na instalação Magento, uma para o Brasil, outra para os EUA e outra para a Inglaterra, o idioma do Brasil está definido como pt-br, o dos EUA está definido como en-us e o da Inglaterra como en-gb, todos configurados como o idioma padrão da store-view.
- As URL’s base estão configuradas como, pois a configuração de adicionar o código da store-view na URL está ligada:
- Brasil: https://www.hibrido.com.br/pt-br/
- EUA: https://www.hibrido.com.br/en-us/
- Inglaterra: https://www.hibrido.com.br/en-gb/
Em uma página CMS de Sobre Nós que está atribuída nas três store-views e que possuí a URL Key about-us , quando essa página for carregada, o novo bloco no cabeçalho deverá adicionar as seguintes Meta Tags:
<link rel="alternate" hreflang="pr-br" href="https://www.hibrido.com.br/pt-br/about-us/">
<link rel="alternate" hreflang="en-us" href="https://www.hibrido.com.br/en-us/about-us/">
<link rel="alternate" hreflang="en-gb" href="https://www.hibrido.com.br/en-gb/about-us/">