Query Data PluginPolylang
Polylang
Contoh queries untuk berinteraksi dengan data dari plugin Polylang.
Memfilter data berdasarkan bahasa
Query ini mengambil postingan dalam bahasa yang dipilih:
{
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
}
}
}Query ini mengambil berbagai entitas untuk beberapa bahasa:
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
}
}Menetapkan bahasa untuk sebuah entitas
Query ini mendefinisikan bahasa untuk 3 postingan (ke bahasa Inggris, Spanyol, dan Prancis), lalu mendefinisikan bahwa 3 postingan tersebut merupakan terjemahan satu sama lain:
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