Le WordPress API REST WP v1.2.3 ajoute de l’extensibilité et des fonctionnalités à un système de gestion de contenu déjà robuste et fiable. Il offre un avantage significatif à tout développeur WordPress, ou à tout utilisateur ayant des besoins commerciaux spécialisés, dans le développement d’applications de niche. L’intégration des fonctionnalités de conception REST et des types de publication personnalisés dans le code WordPress le transforme en un cadre d’application entièrement nouveau qui peut s’adapter aux types de données personnalisés, tirer parti de nouveaux écosystèmes de logiciel en tant que service et rester relativement facile à comprendre et à entretenir.
Cette API promet un retour sur investissement fiable en temps et en argent car ses fonctionnalités de base sont moins susceptibles de se briser lorsque de nouveaux types de données sont introduits ou que des protocoles tiers sont modifiés. Une interface de programmation d’applications (API) RESTful offre au développeur une flexibilité fonctionnelle à WordPress cela prolongera également sa longévité en tant qu’outil réutilisable.
Cet article décrit les avantages pour les utilisateurs et les développeurs en décrivant brièvement l’importance de REST à la fois en tant que concept général de conception de sites Web et en tant que fonctionnalité WordPress spécifique. Tirer parti des améliorations post-WordPress v3, comme les types de publication personnalisés implémentés par l’utilisateur, étend ce qui est déjà un backend populaire au-delà de la gestion de contenu en un fournisseur réutilisable de services personnalisés qu’un développeur peut créer dans des périodes de temps raisonnablement courtes. Ces améliorations majeures, CPT et REST, ajoutent à elles seules de nouvelles fonctionnalités et extensibilité à un produit logiciel bien connu et très stable.
Qu’est-ce que REST ?
REST (REpresentational State Transfer), utilisant le protocole de transfert hypertexte (HTTP), est un concept de conception Web offrant des avantages clés à WordPress, tels que :
- Un cadre agnostique offrant une plus grande stabilité à mesure que les types de données changent.
- La capacité d’interagir avec un plus large éventail d’objets et de verbes hérités.
- Interopérabilité pour fonctionner avec de nouveaux protocoles d’authentification.
- Interfaces réutilisables quels que soient les protocoles natifs comme JSON et AJAX.
- Intégration back-end avec divers plugins et autres services en tant que service.
- Évolutivité à mesure que de nouvelles interfaces d’application sont développées.
Comment REST fonctionne-t-il pour vous ?
Architecture et interface de programmation d’applications (API)
La mise en réseau et le matériel informatique apparaissent généralement comme la base de tout modèle de conception de logiciel classique ; l’interface humaine « soft » est au top. L’architecture de référence Open Systems Interconnect (OSI) empile sept niveaux distincts comme un gâteau de mariage, avec l’interface de programmation d’application (ou API) sur le dessus. WordPress est une application logicielle qui fonctionne dans cette couche API.
Toute application repose sur un système d’exploitation lorsque vous subdivisez davantage l’API supérieure. L’application convertit les données recueillies à partir du stockage local, des connexions réseau ou d’Internet en informations utiles selon des protocoles prédéterminés, des règles préprogrammées et des procédures. Un navigateur est un exemple d’application s’exécutant sur un système d’exploitation.
Les objets de données hypermédia interagissent dans ce pool de mémoire en suivant les spécifications du code (comme les « verbes » HTML GET, PUT et DELETE) ainsi que les normes d’authentification de sécurité comme OAuth, CORS et SSL. Vous avez probablement créé un logiciel pour des clients qui ont capturé des objets spécifiques « flottant » dans ce pool de mémoire. Les API spécialisées sont conçues pour capturer (interagir avec) des types d’objets spécifiques.
REST en tant qu’employeur de logiciels d’égalité des chances
REST diffère des anciennes conceptions d’applications Web dans la façon dont il définit ou RÉprésente la façon dont les objets sont trouvés en mémoire. Un plus grand nombre d’objets « flottants libres » en mémoire sont intégrés « à bord » (Stat Transfer) car l’API REST n’est pas limitée par la façon dont elle « voit » les données par des règles, des définitions, des spécifications ou des protocoles stricts. L’adoption d’une conception REST élimine le besoin de créer des API distinctes pour chaque nouveau projet. Cette conception logicielle offre également une plus grande flexibilité face aux modifications futures des données ou des protocoles.
Pourquoi le découplage est important pour vous
Le terme agnostique est utilisé pour décrire une conception Web REST car elle a été découplée (ou non liée) de nombreuses contraintes de protocoles et de spécifications plus anciens. Ce découplage est particulièrement important alors que les données passent d’un objectif hypertexte plus ancien à une nouvelle définition plus large de l’hypermédia, étendant le tissu hypertexte des données hypertextes pour inclure des graphiques et des vidéos. Il est important de découpler une conception Web des règles et spécifications établies à mesure que les définitions changent.
Des concepts de données plus larges combinés à l’interopérabilité dans l’utilisation, par exemple, des verbes et de la syntaxe HTTP, améliorent l’extensibilité et l’évolutivité de la conception Web. Les développeurs peuvent appliquer les mêmes opérations de base (« verbes hérités ») à des objets plus ouverts sans « casser » le logiciel. REST analyse un large éventail de langages et de spécifications sans préjugés ni idées préconçues. Vous pourriez considérer REST comme un traducteur universel de nouvelles interactions entre les systèmes existants et vos pages Web WordPress.
URL et Internet des objets (IOT)
L’émergence de l’Internet des objets (IOT) force également des changements dans l’univers des objets et dans la façon dont ils sont décrits dans, par exemple, WordPress. Considérez la manière dont ces objets sont identifiés à l’aide de l’identificateur de ressource universel (URI) et de ses sous-composants de localisateur de ressource uniforme (URL) et de nom de ressource uniforme (URN).
Comparez, par exemple, des URL décrivant différents protocoles pour le même domaine comme http://mondomaine.com et ftp://mondomaine.com. Au fur et à mesure que l’IOT se développe, le nom d’URI, l’emplacement et les méthodes de récupération auront une plus grande diversité et nécessiteront une plus grande flexibilité dans la gestion des différences granulaires. REST, en tant que concept de conception de sites Web, aide plutôt qu’il n’entrave le développement de logiciels.
Cadre d’application WordPress REPOS
Des taxonomies aux types de publication personnalisés
Types de publication illimités et Pods, tous deux répertoriés dans la section plugin de WordPress.org sous le mot-clé types de messages, fournissent automatiquement des modifications de code lors de l’activation qui vous permettent, par exemple, de créer des types de publication personnalisés (CPT) définis par l’utilisateur avec leurs propres taxonomies distinctes.
Cependant, ces plugins ne fournissent que des modifications de code aux fichiers principaux de WordPress. Aucun des packages logiciels répertoriés ne complètera le code nécessaire pour afficher vos CPT et taxonomies enregistrés dans le thème de votre installation. Tous les packages nécessitent soit un codage manuel supplémentaire, soit l’achat d’extensions logicielles supplémentaires pouvant apporter des modifications logicielles pilotées par menu sans aucun code manuel supplémentaire. Un autre plugin à considérer est Interface utilisateur de type de publication personnalisée par Webdev Studios. Il ne met également à jour que les fichiers principaux de WordPress.
Du système de gestion de contenu au cadre d’application
Développeurs, depuis WordPress v3.0 « Thelonius », peuvent enregistrer leurs propres CPT et ainsi transformer le cadre classique du système de gestion de contenu (CMS) WordPress en applications avec des types de données personnalisés. REST étend la capacité des fonctionnalités aux protocoles, aux spécifications et aux technologies logicielles telles que JSON et AJAX. Si vous gagnez votre vie en tant que développeur, il est important de savoir à quel point vous traduisez bien et rapidement les besoins d’un client en une application logicielle facile à utiliser qu’il connaît et en laquelle il a confiance.
Il existe à la fois une version de travail et une version bêta de API REST WP v2.0-beta4. Utilisez la version bêta uniquement à des fins de test ; ne l’installez jamais sur un site de production.
WordPress personnalisé pour les applications futures
En résumé, l’API REST et les CPT ne sont pas des fonctionnalités dont l’utilisateur final WordPress a typiquement besoin. Cependant, si vous êtes un développeur, vous êtes payé pour répondre aux besoins commerciaux d’un client au-delà de la fourniture d’un système de gestion de contenu stable mais « prêt à l’emploi ». Vous avez besoin d’un cadre qui promet un retour sur investissement en temps et en argent. Tout utilisateur de WordPress veut un cadre fiable et stable qui est moins susceptible de se briser lorsque les protocoles changent ou qu’un type de données est modifié pour refléter de nouveaux attributs. Une API REST améliore cette certitude en termes de fiabilité et de performances.
Intégrer l’API REST et considérer les CPT avec des taxonomies spécialisées est toujours une activité intéressante. L’API REST offre la possibilité d’élargir la portée des fonctionnalités supplémentaires provenant de sources externes et d’une plus grande durabilité dans la conception de votre application, car elle s’adapte plus facilement aux futurs changements de protocoles. L’installation de cette API et de ces CPT garantira que vous répondez aux besoins de vos clients de manière rentable, aujourd’hui et à l’avenir.
Comment trouvez-vous l’API REST avec laquelle travailler ? Êtes-vous enthousiasmé par l’avenir de WordPress avec cette nouvelle fonctionnalité ? Faites le nous savoir dans les commentaires!