Artículo

Por qué y cómo localicé mi sitio web

Por qué localicé mi sitio web para SEO y GEO, y cómo las páginas, los metadatos y las URL en cada idioma ayudan a que los buscadores y la IA encuentren el contenido.

Por qué y cómo localicé mi sitio web

Localicé mi sitio web para que fuera más útil para personas que hablan otros idiomas y más fácil de encontrar y entender para los buscadores y los sistemas de IA. El objetivo es mejorar la visibilidad mediante SEO y GEO, no garantizar mejores posiciones o menciones.

Por qué lo localicé

La gente busca y hace preguntas en su propio idioma. Ofrecer páginas claras y relevantes en esos idiomas da a los buscadores contenido más útil y a los sistemas de IA generativa más contexto para responder. Así, más personas pueden descubrir mi trabajo, en lugar de limitar su alcance a las búsquedas en inglés.

Cómo lo hice

Integré la localización en la estructura del sitio, en lugar de tratarla como una simple traducción. Estos ejemplos son fragmentos simplificados de mi implementación con Next.js.

1. Asignar una URL predecible a cada idioma

El inglés es el idioma predeterminado y se mantiene en la raíz. Los demás idiomas usan un prefijo, de modo que cada página tiene una URL estable en cada idioma. Una sola lista de idiomas admitidos sirve como referencia común para las rutas y los enlaces de idioma.

export const locales = ['en', 'de', 'es', 'fr', 'ja', 'pt'] as const;
export type Locale = (typeof locales)[number];
export const defaultLocale: Locale = 'en';

export function localizedPath(locale: Locale, pathname = '') {
  const path = pathname === '/' ? '' : pathname;
  return locale === defaultLocale ? path || '/' : `/${locale}${path}`;
}

2. Guardar las traducciones en diccionarios

Cada idioma tiene su propio diccionario con títulos, descripciones, navegación y textos de los artículos. Los componentes leen del diccionario activo en vez de incluir el texto visible directamente, así las páginas traducidas conservan el mismo diseño.

// src/locales/de.ts
pageTitles: {
  'blog/how-and-why-i-localized-my-website':
    'Warum und wie ich meine Website lokalisiert habe',
}

// In the page component
const title = t.pageTitles[articleKey];

3. Indicar a los rastreadores qué versión es cada una

Cada página localizada tiene su propia URL canónica y enlaces alternativos hreflang que enumeran las versiones equivalentes en otros idiomas. También incluyo estas rutas en el sitemap. Esto aclara la relación entre las traducciones, pero no garantiza mejores posiciones ni citas de IA.

const pathname = `/${articleKey}`;
const url = localizedUrl(locale, pathname);

return {
  alternates: {
    canonical: url,
    languages: getLanguageAlternates(pathname),
  },
};

Este patrón sirve para más que los artículos: la navegación y el contenido localizados hacen que la experiencia sea útil para los visitantes, mientras que las URL y los metadatos coherentes ayudan a identificar cada versión. Aun así, las traducciones deben ser precisas y útiles: el SEO técnico ayuda a que te encuentren, pero no sustituye al buen contenido.