Gatsby annoncé son nouveau plugin source (v4) pour WordPress est désormais en version bêta. Le plugin a été complètement repensé pour s’améliorer WordPress sans tête configurations où Gatsby alimente le frontend. Il s’intègre également avec Gatsby Cloud pour fournir des aperçus en temps réel et des versions incrémentielles.

L’équipe Gatsby a parcouru un long chemin vers la création d’une intégration pour les sites WordPress qui satisferait des cas d’utilisation plus complexes. Il existe actuellement trois voies différentes pour utiliser Gatsby avec WordPress, chacune avec des avantages et des inconvénients différents:

  • API Gatsby Source WordPress + WP REST
  • Gatsby Source GraphQL + WPGraphQL
  • Gatsby Source WordPress (v4) + WPGraphQL

La première approche repose sur l’API WP REST pour récupérer toutes les données (publications, termes, médias, etc.) et mettre en cache les données dans le cache de nœud de Gatsby. La deuxième méthode permet aux développeurs d’écrire des requêtes GraphQL pour extraire des données du cache Gatsby et les restituer dans des modèles.

Selon l’ingénieur Gatsby et créateur de WPGraphQL Jason Bahl, les deux premières approches ne conviennent que pour les cas d’utilisation de base.

“Lorsque vous commencez à ajouter des fonctionnalités plus avancées, telles que les champs flexibles Advanced Custom Fields, l’API WP REST commence à s’effondrer et devient très difficile à utiliser de manière découplée”, a déclaré Bahl. «L’API WP REST a un schéma qui peut permettre aux plugins et aux thèmes d’étendre l’API WP REST et de déclarer le type de données qu’un endpoint donné exposera. Ceci est utile pour que les applications découplées sachent à l’avance à quel type de données s’attendre.

«Le problème est que les plugins et les thèmes peuvent étendre l’API WP REST sans utiliser le schéma, ou simplement en définissant des types de champs dans le schéma en tant que types« objet »ou« tableau ». Cela signifie qu’il n’y a pas de moyen facile pour les applications découplées, y compris Gatsby, de savoir à quoi s’attendre de ces domaines. Gatsby s’appuie sur des données cohérentes et l’API WP REST n’est pas cohérente. La forme des données renvoyées par les points de terminaison (en particulier lorsque les plugins étendent l’API REST) ​​est imprévisible et cela est problématique pour les applications découplées. »

WPGraphQL a été créé comme une alternative à l’API WP REST, abordant bon nombre de ces problèmes avec son schéma appliqué. Cela profite aux outils découplés comme Gatsby car ils peuvent introspecter le schéma pour déterminer quelles données sont disponibles avant d’en demander.

“Donc, même dans des cas tels que les champs flexibles Advanced Custom Fields, où les données renvoyées pourraient être l’une des nombreuses dispositions possibles des champs Flex, Gatsby peut toujours savoir quelles sont les données possibles avant de demander les données”, a déclaré Bahl. «Le schéma de WPGraphQL appliqué permet aux outils découplés de se livrer en toute confiance et élimine des classes entières de bogues.»

L’approche Gatsby Source GraphQL + WPGraphQL a quelques améliorations par rapport à l’utilisation de l’API WP REST mais était limitée en ce qu’elle ne met pas en cache les données dans le cache du nœud Gatsby. Cela empêche les sites WordPress d’utiliser les offres commerciales basées sur le cloud de Gatsby pour les aperçus et les versions incrémentielles. Bahl a expliqué comment le nouveau plugin Gatsby Source WordPress (v4) + WPGraphQL est le “meilleur des deux mondes:”

Il utilise WPGraphQL sur le serveur WordPress pour exposer les données WordPress dans un schéma GraphQL typé. Gatsby Source WordPress v4 utilise GraphQL Introspection pour lire le schéma à partir du site WordPress et crée un schéma presque identique dans Gatsby. Il récupère ensuite les données à l’aide de WPGraphQL et met en cache les données dans Gatsby. Les utilisateurs utilisent ensuite GraphQL pour interagir avec le cache Gatsby et obtenir des données à rendre dans les composants de leur site Gatsby.

La nouvelle intégration permet aux créateurs de contenu de cliquer sur «Aperçu» pour voir leurs changements en direct sur le site propulsé par Gatsby. La publication ne nécessite plus une reconstruction complète du site. Il repoussera simplement les modifications sur les pages concernées. Les modifications seront mises en ligne en quelques secondes, de la même manière que les utilisateurs s’attendent à ce que WordPress fonctionne sans l’intégration sans tête. Le nouveau plugin, combiné avec Gatsby Cloud, offre un meilleur mariage de l’expérience de création de contenu avec l’expérience du développeur React + GraphQL de Gatsby, tout en fournissant des pages statiques rapides sur le frontend.

Si vous voulez tester la bêta du nouveau plugin Gatsby Source WordPress, vous pouvez le trouver (et ses dépendances) sur GitHub. le WPGraphQL et WPGatsby des plugins sont également requis.


Source link

%d blogueurs aiment cette page :