Requêter les données des plugins
Requêter les données des pluginsSlim SEO

Slim SEO

Exemples de requêtes pour interagir avec les données du plugin Slim SEO.

Récupérer les métadonnées SEO

Nous pouvons utiliser les champs meta pour interroger les métadonnées SEO :

query GetPost($postId: ID!) {
  post(by: { id: $postId }) {
    id
    title
 
    slimSeoMeta: metaValue(key: "slim_seo")
    metaTitle: _objectProperty(object: $__slimSeoMeta, by: { key: "title" }, failIfNonExistingKeyOrPath: false)
    metaDesc: _objectProperty(object: $__slimSeoMeta, by: { key: "description" }, failIfNonExistingKeyOrPath: false)
    fbImage: _objectProperty(object: $__slimSeoMeta, by: { key: "facebook_image" }, failIfNonExistingKeyOrPath: false)
    twitterImage: _objectProperty(object: $__slimSeoMeta, by: { key: "twitter_image" }, failIfNonExistingKeyOrPath: false)
    canonical: _objectProperty(object: $__slimSeoMeta, by: { key: "canonical" }, failIfNonExistingKeyOrPath: false)
  }
}

Mettre à jour les métadonnées SEO

Nous pouvons utiliser les mutations meta pour mettre à jour les métadonnées SEO :

mutation UpdatePost($postId: ID!) {
  updateCustomPostMetas(inputs: [
    {
      id: $postId,
      key: "slim_seo",
      value: {
        title: "New title",
        description: "New description",
        facebook_image: "https://example.com/social-image.jpg",
        twitter_image: "https://example.com/social-image.jpg",
        canonical: "https://example.com/canonical-url"
      }
    }
  ]) {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
    }
    customPost {
      __typename
      id
      slimSeoMeta: metaValue(key: "slim_seo")
      metaTitle: _objectProperty(object: $__slimSeoMeta, by: { key: "title" }, failIfNonExistingKeyOrPath: false)
      metaDesc: _objectProperty(object: $__slimSeoMeta, by: { key: "description" }, failIfNonExistingKeyOrPath: false)
      fbImage: _objectProperty(object: $__slimSeoMeta, by: { key: "facebook_image" }, failIfNonExistingKeyOrPath: false)
      twitterImage: _objectProperty(object: $__slimSeoMeta, by: { key: "twitter_image" }, failIfNonExistingKeyOrPath: false)
      canonical: _objectProperty(object: $__slimSeoMeta, by: { key: "canonical" }, failIfNonExistingKeyOrPath: false)
    }
  }
}