Ir al artículo
Aniq-UI

Company WebsiteIdiomas

Idiomas

Cómo funciona el sitio en inglés y árabe, cómo cambiar cualquier texto y cómo añadir un idioma.

Los idiomas incluidos

Inglés y árabe. El inglés es el idioma predeterminado. El árabe muestra toda la página de derecha a izquierda, con la fuente Noto Sans Arabic.

IdiomaDirecciónDirección
Inglés/enDe izquierda a derecha
Árabe/arDe derecha a izquierda

Cómo se elige el idioma

  • El idioma es la primera parte de la dirección, /en o /ar.
  • La dirección / lleva a los visitantes al idioma que prefiere su navegador, inglés o árabe, y al inglés en los demás casos.
  • El selector de la cabecera tiene un enlace para cada uno de los demás idiomas. Cambia esa parte de la dirección y mantiene al visitante en la misma página.
  • Cada página define su idioma y su dirección de escritura, e indica el otro idioma a los buscadores.

Cambia un texto

Cada palabra visible está en messages/en.json y messages/ar.json. Los dos archivos tienen las mismas claves: cambia el valor en cada uno, nunca la clave. Una clave que falta en un archivo aparece con su nombre en la página de ese idioma.

De derecha a izquierda

src/i18n/direction.ts enumera los idiomas de derecha a izquierda, y el diseño define a partir de él la dirección de la página. Los componentes usan clases lógicas de Tailwind como ms-*, pe-*, start-* y text-start, así que los espaciados y las alineaciones se invierten solos. Las flechas que apuntan en el sentido de lectura llevan rtl:rotate-180.

En el marcado que añadas, usa las mismas clases lógicas en lugar de ml-*, pr-*, left-* o text-left. Si no, se verá bien en inglés y mal en árabe.

Añade un idioma

  1. Añade su código

    Añade el código del idioma a locales en src/i18n/routing.ts, por ejemplo fr.

    src/i18n/routing.ts
    locales: ["en", "ar", "fr"],
  2. Añade sus mensajes

    Copia messages/en.json a messages/fr.json y traduce los valores. Añade el nombre del idioma bajo localeSwitcher.names en todos los archivos de mensajes.

  3. ¿De derecha a izquierda?

    Si el idioma se escribe de derecha a izquierda, añade su código a RTL_LOCALES en src/i18n/direction.ts.

  4. Revisa la fuente

    src/app/[locale]/layout.tsx usa Noto Sans Arabic para ar e Inter, solo con letras latinas, para cualquier otro idioma. Un idioma con otro alfabeto necesita ahí su propia fuente.

    Resultado esperado: Tras reiniciar o construir de nuevo, el nuevo idioma se abre en su propia dirección, como /fr, y el selector de la cabecera enlaza con él.

¿Te atascaste en un paso?

Busca una solución antes de empezar de nuevo.

Solución de problemas

Preferencias de Cookies

Utilizamos cookies para mejorar tu experiencia de navegación, analizar el tráfico del sitio y personalizar el contenido. Al hacer clic en "Aceptar Todo", consientes nuestro uso de cookies para análisis y publicidad personalizada.