WPGraphQL Get Extended
get_extended()
de WordPress.
get_extended()
de WordPress.Pour fonctionner, ce plugin requiert l'installation et l'activation de WPGraphQL dans WordPress.
Si vous ne connaissez pas encore cette fonction de WordPress, je vous invite à lire la documentation.
Vous devez récupérer le plugin depuis l'un de mes dépôts (Github ou Gitlab suivant votre préférence). Puis, une fois téléchargé, il faut placer le plugin dézippé dans le répertoire wp-content/plugins/
. Ensuite, il ne vous reste plus qu'à activer le plugin dans l'administration de WordPress.
Lorsque le plugin est activé un nouveau champ apparaît dans WPGraphQL pour chaque type de contenu (articles, custom post types...). Ce champ contient lui-même deux champs :
beforeMore
: la partie avant le tag <!-- more -->
de WordPress,afterMore
: la partie après ce même tag.Vous pouvez également choisir le format. Comme le champ content
présent par défaut dans WPGraphQL, vous avez le choix entre raw
et rendered
.
À noter : Si votre article ne contient pas la balise <!-- more -->
, le contenu sera présent dans beforeMore
et afterMore
sera vide.
Voici un exemple de requête pour récupérer un article par slug avec uniquement les champs beforeMore
et afterMore
.
query SinglePost($slug: String!) {
postBy(slug: $slug) {
contentParts {
beforeMore
afterMore
}
}
}
Déjà dans la précédente version du site, j'utilisais la fonction get_extended()
de WordPress. Celle-ci est pratique si vous souhaitez placer l'excerpt dans un autre conteneur que le contenu principal de l'article.
Lorsque j'ai commencé à utiliser WPGraphQL, j'espérais retrouver le même principe. Par défaut, ce n'est pas possible. Vous pouvez avoir l'excerpt et le contenu mais dans ce cas, le contenu contient également l'excerpt. J'aurai pu filtrer le contenu pour retirer l'excerpt, mais il me semblait plus judicieux d'utiliser un plugin pour cela.