Consultar datos de pluginsPolylang
Polylang
Ejemplos de consultas para interactuar con datos del plugin Polylang.
Filtrar datos por idioma
Esta consulta obtiene entradas en el idioma seleccionado:
{
posts(
filter: {
polylangLanguagesBy: {
codes: ["en"]
}
}
) {
title
polylangLanguage {
code
}
}
pages(
filter: {
polylangLanguagesBy: {
locales: ["en_US"]
}
}
) {
title
polylangLanguage {
locale
}
}
customPosts(
filter: {
polylangLanguagesBy: {
predefined: DEFAULT
}
customPostTypes: "some-cpt"
}
) {
title
polylangLanguage {
code
}
}
}Esta consulta obtiene diferentes entidades para múltiples idiomas:
query FilterByLanguage($postId: ID!, $languageCodes: [String!]) {
posts(by: { id: $postId }, filter: {
polylangLanguagesBy: { codes: $languageCodes }
}) {
id
title
}
pages(by: { id: $postId }, filter: {
polylangLanguagesBy: { codes: $languageCodes }
}) {
id
title
}
customPosts(by: { id: $postId }, filter: {
customPostTypes: ["some-cpt"]
polylangLanguagesBy: { codes: $languageCodes }
}) {
id
title
}
postCategories(by: { id: $postId }, filter: {
polylangLanguagesBy: { codes: $languageCodes }
}) {
id
name
}
postTags(by: { id: $postId }, filter: {
polylangLanguagesBy: { codes: $languageCodes }
}) {
id
name
}
categories(
by: { id: $postId },
taxonomy: "some-category"
filter: { polylangLanguagesBy: { codes: $languageCodes } }
) {
id
name
}
tags(
by: { id: $postId },
taxonomy: "some-tag"
filter: { polylangLanguagesBy: { codes: $languageCodes } }
) {
id
name
}
mediaItems(by: { id: $postId }, filter: {
polylangLanguagesBy: { codes: $languageCodes }
}) {
id
title
}
}Establecer el idioma para una entidad
Esta consulta define el idioma para 3 entradas (a inglés, español y francés), y luego define que estas 3 entradas son traducciones unas de otras:
mutation {
post1: polylangSetCustomPostLanguage(input: {id: 1, languageBy: { code: "en" }}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
}
post2: polylangSetCustomPostLanguage(input: {id: 2, languageBy: { code: "es" }}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
}
post3: polylangSetCustomPostLanguage(input: {id: 3, languageBy: { code: "fr" }}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
}
polylangSaveCustomPostTranslationAssociation(input: {
ids: [1, 2, 3]
}) {
status
errors {
__typename
...on ErrorPayload {
message
}
}
}
}Next