Le blog.

Les blocs de construction dans WordPress pour développer sa startup.

Suite à l'excellente intervention de mon confrère Tony Archambeau au WordCamp Paris, j'ai souhaité rebondir sur ce sujet et apporter mon point de vue technique sur les avantages de l'utilisation de WordPress. Nombreux sont les développeurs débutants ou confirmés souhaitant connaître les possibilités qu'offre ce CMS, alors parlons-en !

Du point de vue d'un développeur, quels sont les avantages de WordPress pour créer rapidement le concept d'une startup ?

L'usage de WordPress dans le cadre de la création d'un site vitrine ou e-commerce n'est aujourd'hui plus à défendre. Mais nombreux sont les réfractaires à l'utilisation de notre cher et tendre WordPress pour développer une solution complexe dès lors qu'elle implique :

  • des interactions utilisateurs
  • des structures de données complexes autres que des pages ou des articles
  • le besoin de mettre à disposition des données via une API
  • l'affichage de données statistiques en back-office, etc.

Pourtant, de telles fonctionnalités sont parfaitement possibles avec un développement WordPress sur-mesure !

Le but de cet article est donc de pouvoir présenter brièvement tous les avantages que procure un développement d'un MVP de startup avec WordPress.

Créer son MVP de startup avec WordPress en PHP : est-ce possible ?
Créer son MVP de startup avec WordPress en PHP : est-ce possible ?

Quels sont les avantages de WordPress dans un développement PHP ?

Vous êtes développeur PHP mais ne visualisez pas bien quelles sont les facilités que peut procurer un développement avec WordPress ? Alors analysons ensemble les différentes forces techniques qui font de WordPress bien plus qu'un CMS.

Quels sont les différents outils de ce grand bac à sable nous permettant de construire des grands châteaux forts solides ?

WordPress est un vrai kit de démarrage pour développer rapidement son concept

Au fil des années, WordPress a réussi à s'éloigner de son image de simple gestionnaire de blogs pour s'élever au rang digne de CMS.

Nativement, ses fonctionnalités sont nombreuses pour qui souhaite facilement présenter ou gérer du contenu web sur son site :

  1. gestion d'un blog (articles catégorisés et taggés)
  2. création de pages statiques au contenu riche
  3. envoi et traitement de médias
  4. publication programmée des contenus, etc.

Mais dans ses coulisses, le cœur WordPress recèle de nombreuses fonctionnalités de développement PHP permettant de transformer le CMS WordPress en une véritable plateforme modulable.

Plus qu'un CMS : un framework PHP pour un développement facilité

Au-delà de ces fonctionnalités natives apparentes simplifiant la création de contenus éditoriaux, je vois désormais WordPress comme une véritable boîte à outils pour le développement d'un système web complexe.

De nombreuses APIs sont présentes dans le cœur de WordPress et largement documentées pour ainsi permettre de mettre en place des architectures dynamiques facilement, comme :

Faisons un petit tour d'horizon des principaux blocs de construction de WordPress à disposition des développeurs et créateurs pour créer des MVP de qualité.

Un schéma de données structurées largement extensible

Sur un site Internet, différents "objets" sont représentés et catégorisés de diverses manières :

  • Leboncoin accueille des annonces rangées dans des catégories (services, électroménager…)
  • Kickstarter héberge des projets catégorisés dans des domaines (arts, high-tech…)
  • mon site présente des entrées d'un portfolio rangées par type (web, print…)
  • une plateforme de recrutement propose des offres d'emploi organisées par secteurs d'activité (informatique, industrie…)

Tout bon développement d'applications web commence donc par la mise en place d'une structure de données propre et bien pensée pour accueillir toutes ces différentes données. Et ça tombe bien, car WordPress permet de le faire !

Des objets dans des cartons dans des armoires

Imaginez votre site comme étant un ensemble de :

  • plusieurs armoires dans lesquelles
    • on range plusieurs cartons
      • sur lesquels on a collé une ou plusieurs étiquettes
      • et dans lesquels on a créé de jolis compartiments pour y accueillir divers objets

Dans WordPress, cette même hiérarchie de rangements se présente ainsi :

  • nos armoires sont les divers types de contenus (des petites-annonces, des projets à financer, des entrées d'un portfolio, des offres d'emploi…). On prendra soin de ranger nos cartons dans les bonnes armoires pour pouvoir s'y retrouver plus tard : on ne range pas un carton d'offres d'emploi dans l'armoire des petites-annonces !
  • nos cartons sont des posts (un post étant une entrée, un contenu : une petite annonce, un projet, etc.) contenant des données.
  • nos étiquettes sur les cartons sont des taxonomies assignées aux posts, permettant de regrouper plusieurs cartons selon différents critères. Imaginez par exemple des gommettes rouges sur tous vos cartons de petites-annonces d'électroménager : les gommettes sont une taxonomie, la couleur rouge est un terme de cette taxonomie. On peut créer plusieurs taxonomies et les assigner à tel ou tel type de contenu, pour ainsi filtrer des données selon différents critères et les rendre accessibles à vos utilisateurs par plusieurs chemins.
  • les jolis compartiments à l'intérieur de nos cartons sont les metaboxes et champs meta des posts qui permettent d'accueillir des données (ou propriétés) spécifiques de nos objets/contenus (le produit en vente d'une petite-annonce, l'entreprise d'un projet de crowdfunding, la date de création d'un item de portfolio, le salaire d'une offre d'emploi…)

Type de contenus & taxonomies : vos armoires à cartons et vos étiquettes

Dans le développement WordPress d'un MVP de startup, la création de nouveaux "objets" est simple et native. En effet, WordPress nous permet :

On a ainsi une nomenclature précise de nos données, un moyen efficace de les ranger, et tout cela nativement dans le cœur de WordPress.

Des types de contenus sur-mesure

Par exemple, sur le site de crowdsponsoring D-Clics.com, de nombreux types de contenus permettent d’accueillir les données vitales du site de manière organisée. Ainsi, 4 types de contenus sur-mesure permettent aux associations de déposer des projets et aux entreprises de proposer des partenariats.

Chacun de ces types de contenus possèdent des taxonomies spécialement créées pour regrouper et filtrer des données plus facilement en front : par exemple, les associations et les entreprises sont regroupées dans des territoires (départements/régions), les projets possèdent des causes et des publics, etc.

Et une fois nos armoires et étiquettes définies dans WordPress, de nombreux avantages out-of-the-box font leur apparition.

Pages d'archives : le glossaire pour lister tous vos objets

Un des premiers bénéfices de l'enregistrement de types de contenus et taxonomies dans WordPress est la mise à disposition automatique de pages dites "d'archives".

Ces pages, listant les posts d'un type de contenu ou d'une taxonomie :

  • présentent des formats d'URLs largement personnalisables lors de l'enregistrement du type de contenu ou de la taxonomie,
  • peuvent être facilement modifiées dans le thème via les templates adéquats
  • sont potentiellement nombreuses pour filtrer vos contenus :
    1. par type de contenu (site.fr/offres-emploi),
    2. par taxonomie (site.fr/offres-emploi/gommettes/rouges),
    3. par date (sites.fr/offres-emploi/year/2017),
  • sont un bon moyen de lister vos contenus pour orienter vos visiteurs et approvisionner les moteurs de recherche en liens internes

Et l'ajout de nouvelles routes et paramètres d'URL permettant de filtrer vos pages d'archives est aisément possible grâce à add_rewrite_rule et pre_get_posts.

WP_Query : fouiller rapidement dans vos armoires selon un ou plusieurs critères de recherche

Autre bénéfice d'enregistrer un nouveau type de contenu et taxonomie : l'accès programmatique à vos posts est simplifié via la classe WP_Query (ou get_posts). La recherche de contenus (posts) dans WordPress en PHP est grandement simplifiée grâce à la WP_Query et permet, une fois maîtrisée, de lister des contenus selon des critères de recherche potentiellement complexes à coder manuellement.

Par exemple, on peut rapidement demander à WordPress de récupérer :

  • les 25 dernières petites annonces publiées
  • rangées dans les termes "électroménager" et "décoration" de la taxonomie "catégorie"
  • qui possèdent une métadonnée "modération" équivalente à "validée"
  • qui possèdent une metadonnée "prix" supérieure à 25 € et inférieure à 50 €
  • qui contient "ménage" dans le titre ou son contenu

Cette flexibilité et cette simplicité dans l'écriture de requêtes d'accès aux données permettent alors aux développeurs par exemple de lister facilement des posts dans un carousel sur la page d'accueil, des contenus en rapport avec un autre contenu (même terme de taxonomie, même métadonnée), des statistiques de contribution, etc.

Discuter directement avec la base de données

Il est également possible de sortir du cadre natif de WordPress et créer ses propres tables SQL pour héberger des données très spécifiques, comme nous l'avons vu dans un tutoriel précédent.

Il devient alors utile de profiter de la classe wpdb qui permet à tout bon développeur PHP d'interagir directement avec la base SQL utilisée par un site WordPress.

Cette classe offre un moyen sécurisé de lire, écrire et supprimer des lignes dans la base de données pour en extraire des données issues de requêtes complexes.

Métadonnées : ranger proprement l'intérieur de vos cartons

Pour bien organiser nos objets dans nos cartons, mieux vaut créer de jolis compartiments sur-mesure pour les accueillir proprement. Ainsi, les métadonnées des objets créés dans WordPress (types de contenus, taxonomies) sont créées grâce aux metaboxes (groupes de champs, les boîtes qui accueillent un ensemble de champs) et aux champs meta (les champs hébergeant les propriétés de nos objets).

Ces nouvelles propriétés peuvent être ajoutées à presque toutes les entités présentes dans WordPress :

  • types de contenus et taxonomies,
  • éléments de menus de navigation,
  • pages générales d'options de site,
  • medias, 
  • commentaires,
  • utilisateurs
Dans la base de données, les metadonnées sont stockées dans des tables spécifiques (wp_postmeta, wp_termmeta, wp_usermeta, wp_commentmeta).
Comment déclarer ses champs dans WordPress

Le cœur de WordPress propose la base pour afficher les champs meta et les traiter (enregistrement/mise à jour/suppression). Le markup HTML de ses champs peut être créé manuellement mais à la longue, avouons qu'une telle pratique est loin d'être optimale.

Heureusement, d'excellentes solutions gratuites ou payantes permettent de créer des groupes de champs que l'on remplira de champs complexes. On pourra ainsi mettre en place facilement :

  • des conteneurs de champs (onglets, accordéons, groupes, blocs répétables, etc.)
  • des champs de tous types (image, texte simple, WYSIWYG, champ relationnel, menu déroulant, etc.)

Les tutoriels sur ce sujet ne manquent pas sur ce blog mais citons par exemple des librairies gratuites comme CMB2 ou Pods, et l'incontournable Advanced Custom Fields qui mérite largement son (faible) prix.

Ces solutions permettent d'une part de rapidement inclure de nombreux types de champs dans nos contenus WordPress, mais autorise également une grande flexibilité pour créer de nouveaux types de champs qui n'existeraient pas.

Les validations de champs et sauvegardes en base de données sont évidemment des fonctionnalités gérées par ces solutions et librement extensibles si nécessaires.

Rest API : l'accès à vos objets partout, tout le temps

Définition issue du Handbook de la Rest API WordPress

L'API Rest de WordPress offre des points d'entrées aux données de WordPress que les développeurs peuvent interroger pour interagir avec leurs sites à distance, en envoyant et recevant des objets JSON.
[…] Quand vous envoyez du contenu ou faites une requête à l'API, la réponse sera envoyée en JSON. Cela permet aux développeurs de créer, lire ou mettre à jour du contenu dans WordPress à partir d'un Javascript côté client ou d'applications tierces, même celles écrites dans un langage autre que PHP.

Apparue dans WordPress dans sa version 4.7, son API Rest est un incroyable outil permettant la communication entre un site WordPress et des applications tierces. Certains développeurs profitent même de WordPress comme un framework pour mettre en place leur structure de données, et propulse leur front-end avec un framework JS type React communiquant en AJAX avec l'API Rest de WordPress. Seul le back-office WordPress est utilisé par les administrateurs, le front pouvant être servi par une autre solution.

Un exemple intéressant à analyser est Calypso, l'interface d'administration des sites WordPress.com qui se base exclusivement sur l'utilisation de la Rest API pour interagir avec les contenus d'un site.

Par défaut, cette API Rest offre aux développeurs la possibilité d'interagir avec tous les objets présents dans WordPress via des routes natives. Mais la création de routes supplémentaires, la validation des paramètres entrants et la construction d'une réponse formatée JSON est largement documentée et facile à créer.

Exemple d'enregistrement d'une nouvelle route (à gauche) dans l'API Rest WordPress et son traitement (à droite)
Exemple d'enregistrement d'une nouvelle route (à gauche) dans l'API Rest WordPress et son traitement (à droite)

En quelques lignes de code, il est alors possible d'offrir à vos applications JS des données calculées sur-mesure via l'API Rest de WordPress. C'est très pratique pour interfacer son site WordPress avec des APIs externes et transmettre des données à d'autres services (CRM, messageries, etc.). Ou à contrario, créer/éditer/supprimer des contenus d'un WordPress à partir d'une application tierce (app mobile, front-end full Javascript, etc.).

Une gestion d'utilisateurs aux petits oignons

Une autre fonctionnalité qu'il est bien pratique de pouvoir utiliser nativement dans WordPress est la gestion d'utilisateurs. Pas la peine de réinventer la roue et créer des tables spécifiques : WordPress gère tout ça par défaut.

Nous avions précédemment parlé des métadonnées reliées aux utilisateurs, mais les possibilités sont encore plus nombreuses.

Création et édition d'utilisateurs

Créer ou éditer les propriétés d'un utilisateur programmatiquement est chose facile avec wp_insert_user ou wp_update_user.

Grâce à ça, on peut sans trop de difficulté créer un système d'inscription utilisateur pour contourner les formulaires natifs proposés par WordPress.

Mais le plus intéressant reste de pouvoir attribuer des permissions adéquates aux utilisateurs.

Rôles et capacités : qui peut faire quoi ?

Des vendeurs peuvent voir ou faire des choses que les acheteurs ne peuvent pas, les modérateurs ont plus de droits que les visiteurs, etc.

Dans WordPress, une logique bien pensée de rôles et de capacités permet aux développeurs de définir les différentes "postes" que peuvent occuper les utilisateurs d'un site.

Par défaut, WordPress propose quelques rôles prédéfinis pour couvrir les besoins d'une équipe éditoriale (administrateurs, auteurs, contributeurs, modérateurs, etc.).

Mais de nouvelles capacités ("pouvoir faire telle ou telle action") peuvent être assignées à de nouveaux rôles ("utilisateur de type X ou Y") afin de réunir vos utilisateurs par groupes et leur donner à chacun des permissions différentes.

Ensuite, vérifier si un utilisateur possède une capacité spécifique est chose facile avec user_can.

Un front-end et un back-office sur-mesure

Un stack de développement (assez) moderne

Soyons honnête : un code dans WordPress ne sera jamais aussi bien organisé que dans un framework PHP MVC où contrôleurs, modèles et vues sont organisés dans une structure de dossiers relativement lisible.

Mais rien n'empêche d'être organisé dans une programmation WordPress nativement plus déclarative, et de plus en plus de starter kits (plugins ou thèmes voire environnements de développement) proposent de suivre des organisations presque aussi efficaces qu'une framework MVC.

Citons par exemple :

  • la suite Roots (Trellis, Bedrock et Sage) qui propose une organisation moderne pour :
    • travailler sur une machine virtuelle Vagrant flexible et déployer facilement (Trellis)
    • créer une structure de projet WordPress propre (Bedrock)
    • développer des thèmes de manière plus agréable en utilisant des vues propulsées par Blade et des outils modernes comme Webpack (Sage)
  • l'excellent WordPress Plugin Generator de webdevstudios permettant de mettre en place tout le nécessaire à un bon développement d'une extension WordPress orienté objet via ligne de commande
  • Timber pour créer des thèmes WordPress orientés objets et utilisant le système de templating Twig

Des extensions pour la logique métier

La première logique à suivre pour un développement WordPress organisé est la bonne séparation des objectifs : un thème s'occupe de la partie visible de l'iceberg, un ou des plugins gèrent tout le reste de la logique.

On ne compte plus le nombre de plugins existants mais ce qui nous intéresse ici est la sectorisation aisée des dynamismes dans des conteneurs séparés (ou modules). Dans WordPress, ces modules s'appellent des extensions (plugins).

Cette sectorisation permet de paqueter des logiques spécifiques séparément, permettant alors un versioning aisé et des intervenants multiples travaillant chacun dans le plugin le concernant.

Pour le développement du MVP d'une startup, l'ajout de plugins sur-mesure développés au fil du temps permet de faire évoluer les fonctionnalités du Produit Minimum Viable dans un contexte de développement agile.

Un système de templating intelligent pour l'affichage

Evidemment, les interactions dans une application web ont besoin d'une interface visuelle ! Si les thèmes WordPress sont si nombreux, c'est que leur création est bien pensée et accessible assez facilement.

Les ressources ne manquent pas et le handbook officiel sera la référence à suivre pour ceux à qui l'anglais ne fait pas peur.

Pour faire simple, 2 fichiers (index.php et style.css) sont vitaux dans un thème : à ces fichiers viennent s'ajouter d'éventuels templates pour modifier l'affichage de certaines pages générées par WordPress, grâce à une ingénieuse logique de hiérarchie de templates.

La hiérarchie des templates comme détaillée sur https://codex.wordpress.org/fr:Hiérarchie_des_fichiers_modèles
La hiérarchie des templates est détaillée sur https://codex.wordpress.org/fr:Hiérarchie_des_fichiers_modèles

Un thème WordPress est nativement très administrable, rendant la gestion d'un site très agréable grâce entre autre à :

  • des zones de widgets aux contenus définis en back-office
  • une gestion de menus de navigation efficace
  • un système de personnalisation (appelé Customizer) pour des réglages visuels évolutifs
Créer une déclinaison d'un thème grâce à un thème enfant

Dans WordPress, la logique de thème enfant offre aux intégrateurs web la possibilité de venir surcharger et écraser certaines apparences d'un thème existant. On peut ainsi créer un thème principal et le décliner pour d'autres sites qui présenteraient quelques différences de CSS (voire de logique, même si je ne suis pas partisan de définir des logiques métiers dans un thème !) grâce à un thème enfant.

La création d'un thème enfant est très simple et est très bien expliquée dans un tutoriel de la Marmite.

Un back-office natif efficace et évolutif

Un autre atout à ne pas oublier dans WordPress reste son back-office. Encore une fois, pas besoin de réinventer la roue pour profiter d'une interface visuelle pour créer des contenus, les éditer, modifier des réglages de son site ou visualiser des statistiques. Tout ça est natif dans WordPress.

Chaque rôle d'utilisateur bénéficie nativement d'un back-office sur-mesure filtré, n'ayant accès qu'aux contenus dont il dispose de la permission pour les voir, les éditer, les créer et/ou les publier.

Une interface d'administration flexible

La flexibilité de ce back-office est aussi un atout indéniable dans WordPress.

Premier exemple : la personnalisation du tableau de bord d'administration WordPress et l'ajout d'un widget sur-mesure pour y présenter par exemple des statistiques.

Un autre exemple est la classe WP_List_Table permettant de créer facilement des tableaux d'administration de données SQL, les éditer en masse ou les supprimer.

Des solutions payantes comme Admin Columns Pro offrent également la possibilité de booster l'interface d'administration de contenus WordPress en rendant les tableaux natifs encore plus filtrables, ordonnables et éditables.

Un code extensible et modifiable on the fly

Une autre particularité de WordPress est la malléabilité du code de son cœur grâce à un génial système de hooks (crochets).

Un hook est une logique permettant à un bout de code d'interagir sur un autre bout de code précédemment défini. Les développeurs peuvent ainsi modifier de nombreuses logiques natives du cœur de WordPress, voire d'autres plugins ou thèmes.

Qu'est-ce qu'un hook WordPress ?

Il existe deux types de hooks : les actions et les filtres. Pour utiliser l'un ou l'autre, il faut créer une fonction dite "callback" et l'associer à une action ou à un filtre.

Les actions

Les actions permettent d'exécuter de nouvelles logiques lorsque WordPress déclenche un événement. À certains endroits spécifiques dans son cycle de vie, WordPress appelle des actions spécifiques : tout développeur qui aura indiqué dans son code que telle ou telle chose devra être reliée à telle ou telle tâche pourra ainsi exécuter le code qu'il veut lors d'un événement précis.

Exemples d'actions courantes dans WordPress

Par exemple, les plugins SEO de WordPress se hookent sur l'action wp_head afin d'insérer de nouvelles balises metas dans le <head> des pages. On peut également enregistrer une action sur wp_footer afin d'y inclure un code Google Analytics. Ou mettre à jour des statistiques quotidiennes juste après l'inscription d'un utilisateur avec une action hookée sur user_register.

Les filtres

Les filtres, quant à eux, donnent la possibilité aux développeurs de modifier les données avant leur utilisation par WordPress. Les fonctions callback enregistrées reçoivent un paramètre en entrée, la modifient et la retournent en réponse pour que le cycle de WordPress continue son cours initial, mais avec une variable dont sa valeur a été modifiée.

On pourrait ainsi par exemple supprimer toutes les voyelles du contenu d'un article affiché sur la page grâce au filtre the_content. Ou, plus intelligemment, ajouter des classes spécifiques à la balise <body> grâce au filtre body_class.

En plus des milliers d'actions et filtres présents dans le cœur de WordPress, un développeur prévoyant pourra également lui-même truffer son code d'actions et de filtres à des endroits judicieux (avec do_action ou apply_filters). Penser intelligemment les endroits où il serait judicieux d'exécuter d'autres actions à l'avenir, ou passer certaines variables à l'intérieur de filtres créés spécifiquement pour une éventuelle flexibilité future, c'est rendre son code-source WordPress accessible à d'autres développeurs et évolutif facilement via d'autres plugins.

Une communauté active et réactive

Un développement open-source actif

Une communauté open-source internationale fédère le développement de WordPress qui est activement propulsé par l'entreprise Auttomatic (WordPress.com). WordPress, c'est pas moins de 32 versions majeures, une nouvelle sortant tous les 152 jours en moyenne.

Une telle régularité dans les mises à jour assure à WordPress un code source sécurisé et des fonctionnalités de développement en constante évolution, comme le montre par exemple l'ajout récent de la Rest API ou du nouvel éditeur de contenu Gutenberg.

En propulsant désormais 30% des sites Internet, WordPress est également une plateforme soumise à de nombreuses tentatives d'attaques. En plus des solutions basiques de sécurité à mettre en place sur tout site WordPress, rappelons tout de même que 61% des sites WordPress infectés le sont à cause d'une version du cœur non mise à jour et que 52% des vulnérabilités reportées par WPScan sont causées par des extensions WordPress (source).

Une bibliothèque d'extensions immense

Même si nous abordons ici les différents blocs de construction à disposition des développeurs PHP, ne passons pas à côté des 54000 extensions téléchargeables gratuitement dans le repo officiel.

Pourquoi réinventer la roue pour certaines fonctionnalités quand des solutions gratuites ou peu chères permettent de gagner un temps fou ?

Citons par exemple des extensions gratuites :

  1. WooCommerce pour la gestion du e-commerce
  2. Yoast SEO pour administrer le SEO de son site
  3. SecuPress (plugin freemium) pour s'assurer une bonne sécurité
  4. Contact Form 7 pour mettre en place des formulaires de contact
  5. bbPress pour créer un forum aisément

Et quelques payantes qui méritent largement l'investissement :

  1. ACF pour des champs meta sexy et faciles à créer
  2. FacetWP pour des systèmes de recherche de contenus filtrables efficaces
  3. WP Simple Pay pour mettre en place facilement des paiement via Stripe
  4. WP Rocket pour gérer la mise en cache de son site et améliorer ses performances
  5. Gravity Forms pour créer rapidement des formulaires complexes

Une documentation concise et beaucoup de ressources pour apprendre

Pour se lancer dans l'apprentissage du développement PHP avec WordPress, de nombreuses ressources sont disponibles sur la toile.

Les modes d'emploi officiels

Les documentations officielles sont bien détaillées, mises à jour et parfois traduites en français :

Les blogs

En France, la communauté WordPress est plutôt active et de nombreux blogs de qualité diffusent des contenus réguliers pour suivre l'actualité WordPress ou décortiquer des notions via des tutoriels.

Par modestie, pas d'auto-promo ;) Mais les curieux pourront trouver de nombreuses pépites sur des sites français comme :

Je ne peux également que vous conseiller la newsletter wpMail.me qui résume brièvement chaque semaine les dernières actualités dans l'univers WordPress.

Le Slack WordPressFR

Si vous êtes adepte du chat en ligne, n'hésitez pas à rejoindre le slack WordPressFR (wordpressfr.slack.com). Vous y retrouverez de nombreuses personnes actives, passionnées et curieuses (dont moi ;) pour partager autour de WordPress, s'entraider sur des problèmes techniques ou faire une veille effective grâce aux découvertes partagées par chacun.

Le Slack WordPressFR propose de nombreux channels pour s'entraider, découvrir, papoter ou gu*uler

Rejoignez-nous, plus on est de fous plus on rit !

Conclusion

Avec presque 10 ans d'expérience avec WordPress, j'ose aujourd'hui affirmer qu'il est tout à fait adapté pour assurer la fiabilité d'un développement de projet de startup du digital.

Personnellement, c'est d'ailleurs un vrai plaisir de l'utiliser pour développer des sites web complexes rapidement dans un temps limité.

Comme on l'a vu dans cet article, WordPress possède de nombreuses cordes à son arc pour permettre à un développeur de mettre en place des logiques et interactions facilement, sans réinventer la roue. Couplées à un système de thème visuel efficace, une communauté active et des extensions brillantes, un développeur full-stack saura se sentir comme un vrai McGyver et créer librement une solution web moderne et sécurisée.

Cet article se veut volontairement non-exhaustif : seules les fonctionnalités que j'estime vitales dans WordPress sont ici présentées aux développeurs curieux, mais de nombreux autres aspects sont ignorés. WordPress gère par exemple également les crons, peut créer des réseaux de sites reliés entre eux, propose une bonne solution e-commerce… La liste est longue !

Dans un futur article, je présenterai divers exemples intéressants de sites complexes propulsés par WordPress. D'ici là, n'hésitez pas à poser vos questions en commentaire !

2 commentaires ont été rédigés, ajoutez le votre.

  1. cripssss Répondre

    Bonsoir,
    Merci pour cet article super enrichissant.
    Je confirme tout ce que vous dites. Pour l’avoir vécu en aillant réalisé quelques applications web.
    Tout ceci me menant à ne plus voir wordpress comme un moteur de blog, mais plus comme un framework. (En plus bien adapté pour des débutants)
    Merci également pour les sources citées (je viens encore d’apprendre de nouvelles choses.)

    • Pierre Répondre

      Content que mon exposé vous plaise :)
      Oui WordPress est relativement adapté aux débutants de part (je pense) sa structure non-MVC qui peut faire moins peur à aborder. Et les ressources ne manquent pas pour s’y mettre !

Laisser un commentaire