MultilingualPress
MultilingualPressMultilingualPress

MultilingualPress

MultilingualPressプラグインとの統合です。

GraphQLスキーマには、多言語データを取得するためのフィールドが提供されます。

タイプ PostPagePostTagPostCategory

エンティティの言語、およびそのエンティティの翻訳IDを取得します。

これらのタイプはインターフェース MultilingualPressTranslatable を実装します。

フィールド説明
multilingualpressTranslationConnectionsネットワーク内のすべてのサイトに対するエンティティの翻訳接続、または接続が割り当てられていない場合は null

フィールド multilingualpressTranslationConnectionsMultilingualPressTranslationConnection タイプの結果を提供し、そこから接続のサイトIDとエンティティIDをクエリできます。インプット includeSelf を受け付け、クエリされたエンティティの接続を結果に含めるかどうかを指定します(デフォルトは false)。また、インプット includeSiteIDsexcludeSiteIDs により、結果に含まれるサイトをフィルタリングできます。

{
  posts {
    multilingualpressTranslationConnections {
      ...MultilingualPressConnectionData
    }
    categories {
      multilingualpressTranslationConnections {
        ...MultilingualPressConnectionData
      }
    }
    tags {
      multilingualpressTranslationConnections {
        ...MultilingualPressConnectionData
      }
    }
  }
 
  pages {
    multilingualpressTranslationConnections {
      ...MultilingualPressConnectionData
    }
  }
 
  postCategories {
    multilingualpressTranslationConnections {
      ...MultilingualPressConnectionData
    }
  }
 
  postTags {
    multilingualpressTranslationConnections {
      ...MultilingualPressConnectionData
    }
  }
}
 
fragment MultilingualPressConnectionData {
  siteID
  entityID
}

タイプ GenericCustomPostGenericTagGenericCategory

これらのタイプはインターフェース MultilingualPressMaybeTranslatable を実装します。

GenericCustomPost は、PortfolioEventProduct などのサイトにインストールされた任意のカスタム投稿を表すタイプです。同様に、GenericTagGenericCategory はそれらのタクソノミーを表すために使用されます。

これらの各CPTおよびタクソノミーは、MultilingualPressの設定で翻訳可能に定義できます。その場合、フィールド multilingualpressTranslationConnectionsPost などに対するのと同じ動作をし(上記参照)、エンティティのCPTまたはタクソノミーが翻訳対象として設定されていない場合は null を返します。

さらに、フィールド multilingualpressIsTranslatable は、CPTまたはタクソノミーが翻訳可能として設定されているかどうかを示します。

フィールド説明
multilingualpressTranslationConnectionsネットワーク内のすべてのサイトに対するエンティティの翻訳接続、または接続が割り当てられていない場合、もしくはエンティティが翻訳対象として設定されていない場合(MultilingualPressの設定経由)は null
multilingualpressIsTranslatableエンティティが翻訳可能かどうかを示します。
{
  customPosts(filter: { customPostTypes: "some-cpt" }) {
    __typename
    multilingualpressIsTranslatable
    multilingualpressTranslationConnections {
      ...MultilingualPressConnectionData
    }
    ...on GenericCustomPost {
      categories(taxonomy: "some-category") {
        __typename
        ...on GenericCategory {
          multilingualpressIsTranslatable
          multilingualpressTranslationConnections {
            ...MultilingualPressConnectionData
          }
        }
      }
      tags(taxonomy: "some-tag") {
        __typename
        ...on GenericTag {
          multilingualpressIsTranslatable
          multilingualpressTranslationConnections {
            ...MultilingualPressConnectionData
          }
        }
      }
    }
  }
 
  categories(taxonomy: "some-category") {
    __typename
    ...on GenericCategory {
      multilingualpressIsTranslatable
      multilingualpressTranslationConnections {
        ...MultilingualPressConnectionData
      }
    }
  }
 
  tags(taxonomy: "some-tag") {
    __typename
    ...on GenericTag {
      multilingualpressIsTranslatable
      multilingualpressTranslationConnections {
        ...MultilingualPressConnectionData
      }
    }
  }
}
 
fragment MultilingualPressConnectionData {
  siteID
  entityID
}