Requêter les données WordPress
Requêter les données WordPressUtilisateurs

Utilisateurs

Voici des exemples de requêtes pour récupérer les données des utilisateurs et les connecter.

Récupérer des utilisateurs

Un seul utilisateur avec ses articles :

query {
  user(by: { id: 1 }) {
    name
    email
    url
    posts {
      id
      title
      excerpt
    }
  }
}

Une liste de 5 utilisateurs, triés par nom :

query {
  users(
    pagination: { limit: 5 }
    sort: { by: NAME, order: ASC }
  ) {
    id
    displayName
    websiteURL
  }
}

Une liste d'utilisateurs prédéfinis, avec leurs avatars :

{
  users(filter: { ids: [2, 3, 5] }) {
    id
    displayName
    url
    avatar(size: 150) {
      size
      src
    }
  }
}

Filtrer les utilisateurs par nom :

query {
  users(filter: { searchBy: { name: "le" } }) {
    id
    name
    email
  }
}

Compter les résultats d'utilisateurs :

query {
  userCount(
    filter: { searchBy: { name: "le" } }
  )
}

Paginer des utilisateurs :

query {
  users(
    pagination: {
      limit: 5,
      offset: 5
    }
  ) {
    id
    name
  }
}

Récupérer des valeurs méta :

query {
  users {
    id
    name
    metaValue(
      key: "last_name",
    )
  }
}

Récupérer les rôles et les capacités

En savoir plus dans le guide Interroger les champs de données "sensibles".

Obtenir les roles et capabilities des utilisateurs :

query {
  users {
    id
    displayName
    roles {
      name
      capabilities
    }
  }
}

Connecter et déconnecter l'utilisateur

La connexion de l'utilisateur est nécessaire pour exécuter des mutations (créer un article, ajouter un commentaire, etc.).

Cette requête connecte l'utilisateur :

mutation {
  loginUser(
    by: {
      credentials: {
        usernameOrEmail: "test",
        password: "pass"
      }
    }
  ) {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
      ...on GenericErrorPayload {
        code
      }
    }
    userID
  }
}

Pour récupérer l'utilisateur connecté :

query {
  me {
    id
    name
  }
}

Déconnecter l'utilisateur :

mutation {
  logoutUser {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
      ...on GenericErrorPayload {
        code
      }
    }
    userID
  }
}