Gelişmiş
GelişmişYardımcı Queries Oluşturma

Yardımcı Queries Oluşturma

Çevirilerle çalışırken, sitenizdeki belirli içerikleri tanımlamanız, analiz etmeniz veya işlemeniz gereken çeşitli durumlarla karşılaşabilirsiniz. Örneğin:

  • Çevrilemeyen belirli bir Gutenberg bloğu içeren gönderileri bulmak
  • Bozuk veya hatalı biçimlendirilmiş veriler içeren gönderileri belirlemek
  • Manuel inceleme veya geçiş gerektiren içerikleri bulmak
  • Toplu işlemler için gönderi, sayfa veya diğer içerik türlerinin listelerini almak

Gato AI Translations for Polylang arka planda Gato GraphQL çalıştırdığından, WordPress sitenizden bilgi aramak, filtrelemek ve almak için özel GraphQL queries oluşturmak amacıyla bu aracı rahatlıkla kullanabilirsiniz.

Gelişmiş Modu Etkinleştirme

GraphQL queries çalıştırmak için önce eklenti Ayarları'nda Gelişmiş Mod'u etkinleştirmeniz gerekir.

Ayarlar > Eklenti Yapılandırması > Gelişmiş Kullanım bölümüne gidin ve Gelişmiş Modu Etkinleştir'i seçin:

Gelişmiş modun etkinleştirilmesi
Gelişmiş modun etkinleştirilmesi

Etkinleştirildikten sonra, Queries özel gönderi türü WordPress yönetici menünüzde kullanılabilir hale gelecektir:

Queries CPT etkinleştirildi
Queries CPT etkinleştirildi

WordPress yönetici menünüzde Queries bölümüne gidin ve yeni bir giriş ekleyin. Queryin ne yaptığını açıkça belirten açıklayıcı bir başlık verin.

Örnekler

Belirli Bir Blok İçeren Gönderileri Bulmak

Yaygın bir kullanım durumu, çevrilemeyen belirli bir Gutenberg bloğu içeren gönderileri belirlemektir. Bu query, farklı ve çevrilebilir bir bloğa geçirilmesi gereken tüm gönderileri bulmanıza yardımcı olur.

Find posts containing a certain block başlıklı yeni bir giriş oluşturun ve şu queryyi kullanın:

query FindPostsContainingBlock(
  $blockName: String!
) {
  customPostCount(
    filter: {
      status: any,
      search: $blockName
    }
  )
  customPosts(
    filter: {
      status: any,
      search: $blockName
    },
    pagination: { limit: -1 }
  ) {
    id
    title
    customPostType
    url
    wpAdminEditURL
  }
}

Querye değişkenler sağlayabildiğimize dikkat edin; bu sayede farklı bloklar için yeniden kullanabiliriz.

Örneğin, Yoast FAQ bloğunu içeren gönderileri bulmak için GraphQL değişkenlerini şu şekilde ayarlayın:

{
  "blockName": "yoast/faq-block"
}

Ardından queryyi çalıştırın:

GraphQL querysinin çalıştırılması
GraphQL querysinin çalıştırılması

Yanıtta, Yoast FAQ bloğunu içeren gönderilerin listesini görebilirsiniz. Herhangi bir url bağlantısına tıklamak gönderiyi ön yüzde açar; herhangi bir wpAdminEditURL bağlantısına tıklamak ise gönderiyi WordPress düzenleyicisinde açar.

{
  "data": {
    "customPostCount": 6,
    "customPosts": [
      {
        "id": 38602,
        "title": "BTS B",
        "customPostType": "page",
        "url": "https://www.mysite.com/bts-dietetique-b/",
        "wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=38602&action=edit"
      },
      {
        "id": 38024,
        "title": "Merci",
        "customPostType": "page",
        "url": "https://www.mysite.com/merci/",
        "wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=38024&action=edit"
      },
      {
        "id": 38633,
        "title": "BTS A",
        "customPostType": "page",
        "url": "https://www.mysite.com/bts-dietetique-a/",
        "wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=38633&action=edit"
      },
      {
        "id": 34871,
        "title": "Collagène marin B",
        "customPostType": "page",
        "url": "https://www.mysite.com/meilleurs-collagenes-marin/",
        "wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=34871&action=edit"
      },
      {
        "id": 34853,
        "title": "Collagène marin A",
        "customPostType": "page",
        "url": "https://www.mysite.com/meilleur-collagene-marin/",
        "wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=34853&action=edit"
      },
      {
        "id": 33987,
        "title": "Meilleur collagène en 2025 : l’avis d’un médecin (15 marques)",
        "customPostType": "page",
        "url": "https://www.mysite.com/meilleur-collagene/",
        "wpAdminEditURL": "https://www.mysite.com/wp-admin/post.php?post=33987&action=edit"
      }
    ]
  }
}

Bozuk Veri Hatalarını Düzeltmek

Bir diğer yaygın kullanım durumu, bozuk veri hatalarını düzeltmektir.

Örneğin, bir medya öğesinin var olmayan bir üst öğe referansı varsa, eklenti içeriği çeviremez. Bunu, üst öğe referansını kaldırarak düzeltebilirsiniz.

Remove parent reference from media item başlıklı yeni bir giriş oluşturun ve şu queryyi kullanın:

mutation RemoveParentReferenceFromMediaItem($mediaItemID: ID!) {
  updateMediaItem( input: { id: $mediaItemID, customPostID: null } ) {
    status
    errors {
      __typename
      ...on GenericErrorPayload {
        message
      }
    }
  }
}

Örneğin, ID'si 26066 olan medya öğesindeki bozuk veri hatasını düzeltmek için GraphQL değişkenlerini şu şekilde ayarlayın:

{
  "mediaItemID": 26066
}

Ve queryyi çalıştırın.