WPML

Consulte contenido por idioma desde su front-end

Cada consulta de WPGraphQL obtiene un argumento language. Filtre entradas, tipos de contenido personalizado, términos de taxonomía, menús, elementos de menú y comentarios por idioma en un solo campo: sin filtrado posterior a la consulta en el front-end, sin duplicar el volumen de peticiones y sin tener que adivinar el idioma.

query PostsES {
  posts(where: { language: "es" }) {
    nodes { slug uri title }
  }
}

Cuando filtra un nodo de nivel superior por idioma, los elementos conectados (categorías, etiquetas, taxonomías personalizadas) siguen automáticamente el mismo idioma. Los resultados son coherentes sin necesidad de argumentos adicionales por campo anidado.

¿Quiere todo independientemente del idioma para un sitemap o un recuento total? Pase language: "all".

Obtenga todas las traducciones de un nodo en una sola consulta

El campo translations en las entradas y términos de taxonomía devuelve todas las versiones en otros idiomas de un nodo: slug, URI, código de idioma y cualquier campo anidado que solicite. Una consulta, un viaje de ida y vuelta, todas las versiones de idioma de una página.

Esos son los datos que necesita para un selector de idiomas renderizado junto al propio contenido de la página, sin obligar al front-end a seguir una cadena de consultas relacionadas.

Menús multilingües, taxonomías, comentarios y datos de idioma

Más allá de las entradas, WPML GraphQL amplía el mismo argumento language y el manejo de traducciones a:

  • Menús y elementos de menú. menu(language: "fr") para la navegación por idioma. Añadido en WPML GraphQL 1.1.0.
  • Términos de taxonomía. Las categorías, etiquetas y taxonomías personalizadas siguen el idioma de su entrada de forma predeterminada y se pueden consultar por idioma directamente.
  • Comentarios. Devuelva los comentarios asociados a entradas en un idioma específico.
  • Consultas languages y defaultLanguage. Enumere todos los idiomas instalados en el sitio con su código, configuración regional, nombre nativo, URL de la bandera del país y URL de inicio. La estructura de datos adecuada para un selector de idiomas personalizado.

Consulte una entrada específica por ID o slug, en cualquier idioma

Hay dos formas de consulta para obtener una única entrada traducida por su identificador específico de idioma:

query PostBySlug {
  post(id: "hola-mundo", idType: SLUG) {
    title slug uri
  }
}
query PostById {
  post(id: "2", idType: DATABASE_ID) {
    title slug uri
  }
}

Cualquiera de las dos formas devuelve la entrada traducida con su título, slug y URI traducidos, sin necesidad de una lógica separada de «¿es esto una traducción?» en el front-end.

Mantenido para la versión actual de WPGraphQL

WPML GraphQL 1.1.3 está probado hasta WPGraphQL 2.0.0, la rama principal de versiones en la que se encuentra el proyecto WPGraphQL. El equipo que mantiene WPGraphQL trabaja con nosotros para que la capa multilingüe siga avanzando con el esquema. Cuando WPGraphQL publica una nueva versión, WPML GraphQL le sigue de cerca.

Funciona con ACF cuando añade ACFML y WPGraphQL for ACF

Para los sitios que construyen sus modelos de contenido en Advanced Custom Fields y exponen esos campos a través de WPGraphQL, WPML GraphQL se combina con ACFML y WPGraphQL for ACF para añadir un argumento language a las consultas de la página de opciones de ACF:

query Settings {
  myOptionPage(language: "de") {
    addressFieldGroup {
      addressTitle
      repeaterAddressDetails { addressDetails }
    }
  }
}

Los campos de ACF en las entradas y los tipos de contenido personalizado (CPT) siguen automáticamente el idioma de la entrada anfitriona.

WPML GraphQL está incluido con WPML

WPML GraphQL se incluye con Multilingual CMS y WPML Agency. Sin compras por separado ni tarifas por sitio. Compre WPML una vez y su stack multilingüe headless tendrá su capa de idioma. Si ya tiene WPML, active WPML GraphQL desde su página de descargas de WPML.