Executando verificação de segurança...
1

Dúvida nextjs 15

Boa meus amigos!, preciso de uma ajuda que pode parecer meio besta

Tenha uma landing page, que é uma página de venda que eu queria fazer o seguinte

Se a página fosse acessada aqui no Brasil eu queria mostrar a página em português e o preço em Real e direcionar para um link de compra

E se fosse acessado fora do Brasil queria mostrar a página em inglês, outro valor em dolar e direcionar para outro link de compra

É possível algo parecido usando Nextjs 15?

Desde já agraço pela força rsrsrs

Carregando publicação patrocinada...
1

Como você tá com o Next.js 15, talvez seja uma boa tentar com algum desses jeitos:

Lado do Server:

import { headers } from 'next/headers';

export default function TuaPágina() {
  const listaDosHeaders = headers();
  const acceptLanguage = headersList.get('accept-language');
  const linguaATUAL = acceptLanguage?.split(',')[0] || 'en';

  return (
    <div>
      <p>Lingua: {language}</p>
    </div>
  );
}

Lado do Cliente

'use client'
import { useState, useEffect } from 'react'

export default function TuaPagina() {
  const [linguaDoUser, setLinguaDoUser] = useState('en');

  useEffect(() => {
    setLinguaDoUser(navigator.language || 'en');
  }, []);

  return (
    <div>
      <p>Lingua: {linguaDoUser}</p>
    </div>
  );
}

Algo assim!

1

Veja alguma biblioteca de i18n como essa aqui.

Se não funcionar automaticamente: Leia o valor do header accept-language do navegador, ele tem as linguagens preferidas pelo usuário

0
1

já pensou em pegar direto do navegador o idioma? Outra opção é usar um serviço de GeoIp, existem grátis e como voce precisa da precisão por país não terá dificuldades.

0