Contentful + PHP

KB3

Ce n’est un secret pour personne : gérer un système de gestion de contenu (CMS) monolithique et traditionnel s’accompagne de son lot de contraintes. Qu’il s’agisse de s’inquiéter des problèmes d’évolutivité ou de la gestion d’une architecture de base de données complexe, une chose est claire : personne n’a le temps pour ça. C’est pourquoi nous proposons une nouvelle solution : une infrastructure de contenu API-first, indépendante de la technologie. Dans cet article, nous mettrons en évidence les avantages de l’utilisation de Contentful et de l’infrastructure de contenu pour votre prochain projet PHP.

Avant d’aller plus loin, il est important de clarifier ce que vous obtiendrez avec Contentful. Grâce à notre infrastructure de contenu, vous recevrez une plateforme qui permet aux développeurs de récupérer le contenu via des appels d’API, tout en offrant aux éditeurs une interface web familière pour créer et gérer le contenu. Ainsi, que vous développiez pour des objets connectés, des smartphones ou des applications web, votre contenu n’est qu’à un appel d’API. Et comme il s’agit d’une solution hébergée dans le cloud, elle nécessite bien moins de maintenance qu’un système de gestion de contenu PHP traditionnel — vous laissant ainsi plus de temps pour vous concentrer sur la création d’excellentes applications.

Lorsqu’il s’agit de CMS PHP, les développeurs se retrouvent souvent limités à WordPress ou Drupal. Le problème de ces anciens CMS est qu’ils ont été conçus autour d’un seul type de contenu, optimisé pour un affichage précis, généralement des sites web, et qu’ils se réduisent souvent à de simples outils de publication en ligne. Contentful, au contraire, est entièrement adapté à vos besoins. Vous définissez votre propre modèle de contenu, qui est indépendant de toute couche de présentation. Ce modèle définit les catégories de contenu que vous souhaitez gérer. Vous pouvez ensuite exploiter ce contenu pour créer des expériences attrayantes autour de lui, tandis que notre CDN se charge de diffuser le contenu à vos utilisateurs 24h/24 et 7j/7.

Nous fournissons des SDK pour les langages de programmation populaires tels que JavaScript, Ruby et, bien sûr, PHP. Ces SDK sont conçus pour vous faciliter la vie en tant que développeur lorsque vous utilisez Contentful et vous donnent un accès presque instantané à nos API et à leurs fonctionnalités.

Content Delivery API (CDA)

Content Delivery API (CDA) de Contentful est une API en lecture seule pour la diffusion de contenu de Contentful vers des applications, des sites web et d’autres médias, arrivant sous forme de données JSON et de fichiers multimédias. Pour commencer avec notre SDK PHP de CDA, assurez-vous que Composer est installé sur votre machine. Vous pouvez ensuite utiliser Composer pour installer le SDK de Content Delivery API (CDA) :

Contentful + PHP / CS1

Ajoutez ensuite le chargeur automatique Composer en haut de votre projet :

Contentful + PHP / CS2

Toutes les interactions avec le SDK passent par ’Contentful\Delivery\Client’. Pour créer un nouveau client, vous devez transmettre un jeton d’accès et un identifiant d’espace au constructeur. À partir de là, vous pouvez ajuster votre requête pour recevoir les données appropriées.

Voici un exemple qui récupère le contenu de Contentful à l’aide de notre API Images API :

Contentful + PHP / CS3

Mais il y a bien plus que cela à voir. Si vous souhaitez approfondir la question, nous avons expliqué l’ensemble de ce processus dans notre tutoriel Premiers pas.

Content Management API (CMA)

Nous avons également récemment publié la version bêta du SDK PHP pour Content Management API (CMA) de Contentful. Il s’agit d’une API de lecture-écriture pour la gestion de contenu. Vous pouvez utiliser CMA pour plusieurs cas d’utilisation, y compris les importations automatiques à partir de CMS comme WordPress ou Drupal et la création d’expériences d’édition personnalisées.

Une fois Composer installé et le chargeur automatique inclus (comme indiqué ci-dessus), vous pouvez utiliser l’extrait de code suivant pour gérer du contenu depuis Contentful :

Contentful + PHP / CS4

Vous utilisez probablement un framework pour vos applications PHP, et pour une bonne raison. Les frameworks vous permettent une mise à l’échelle rapide, la maintenance du code est plus simple qu’avec du PHP pur, et ils vous offrent la possibilité de consacrer votre temps à la tâche elle-même plutôt qu’à la technologie sous-jacente. Pas d’inquiétude, nous avons ce qu’il vous faut. Contentful propose des intégrations pour deux des frameworks PHP les plus populaires : Symfony et Laravel.

Symfony

L’un de nos évangélistes PHP a un jour comparé le framework Symfony à une excellente base de soupe. Il est composé d’excellents ingrédients (enfin, de composants), et à partir de là, vous pouvez préparer n’importe quel type de soupe (autrement dit, l’application de votre choix). Les gens l’adorent, y compris Spotify, l’un des clients de Contentful.Voici comment vous pouvez configurer votre client Contentful à la manière de Symfony :

Contentful + PHP / CS5

Parallèlement à cette intégration, nous avons également lancé ContentfulBundle, un ingrédient supplémentaire que vous pouvez ajouter à votre soupe à base de Symfony. Le « ContentfulBundle » s’intègre à Symfony Web Profiler, ce qui vous permet de corriger les bugs et les problèmes de performances sur le point d’intégration entre votre application et Contentful.

Pour que vous puissiez voir notre « ContentfulBundle » en action, nous avons créé une application de catalogue de produits générique connectée à un espace d’exemple à l’aide de Symfony. Vous pouvez trouver le code complet sur GitHub ou suivre notre guide étape par étape pour le créer vous-même.

Laravel

Probablement le framework le plus populaire en ce moment, Laravel se présente comme le « framework PHP pour les artisans du Web ». Grâce à sa compatibilité native avec les API REST, à la prise en charge des tests unitaires et à son accent sur la rapidité de développement, ce framework s’intègre naturellement à la plateforme Contentful.

Configurer votre client Contentful à l’aide de Laravel ressemble à ceci :

Contentful + PHP /. CS6

Pour faciliter cette collaboration, nous avons produit le package Contentful Laravel. Ce package permet aux développeurs PHP d’intégrer l’API Contentful dans leurs applications créées avec le framework Laravel. Nous avons également développé une application de blog d’exemple utilisant Content Delivery API, accompagnée d’un tutoriel complémentaire.

Nous développons constamment de nouvelles fonctionnalités et intégrations de framework pour PHP. En fait, nous avons toute une équipe qui s’y consacre. Mais en attendant, vous pouvez également consulter la page Contentful pour PHP pour des tutoriels, des exemples d’applications et plus d’informations sur d’autres façons d’utiliser PHP avec Contentful. Ou si vous êtes prêt à vous lancer, créez un compte gratuit dès aujourd’hui et essayez par vous-même.