Création d’un plugin WordPress pour le staging de WayPlan

Préambule

Way-Plan c'est quoi ?

Way-Plan est un logiciel de gestion de référence pour gérer une activité de transport de personnes. Il propose des modules de planning, de gestion commerciale, une application mobile pour les chauffeurs, de gestion administrative, de communication avec les clients et de pilotage de l’entreprise. Way-Plan s’accompagne également d’un service de conseil, de formation et de conduite du changement pour aider les clients à utiliser au mieux le logiciel. Way-Plan est développé par l’entreprise Waynium et est destiné aux entreprises de transport de personnes, de transport scolaire, de transport à la demande et de transport d’autocariste.

Objectif de la mission

Nous travaillons avec waynium pour tous les développements spécifiques sous WordPress.

Les problématiques rencontrées par l’équipe de way-plan étaient les suivantes lors de la création d’un environnement de test : 

  1. Les emails pouvaient s’envoyer via le staging
  2. Les clients avaient un compte sur le staging et donc auraient pût si connecter
  3. Des tâches automatiques prévues sur la prod pourrait être exécuté sur le staging lors du clonage des données
  4. Le site pourrait être indexer par google par mégarde
  5. L’administration était indissociable de la production

Le but de la mission était de résoudre tous ces soucis.

Déroulement et choix techniques

Nous avons opté pour la création d’un plugin custom qui sert à nettoyer le site en staging après son clonage.

Cela implique évidement de mettre en place des sécurités pour ne pas supprimer toutes les données en production par mégarde. Pour prévenir ce problème nous avons créer une constante qui vérifie si le domain contient bien le mot staging ou preprod.

Voilà ce que cela donne en code :

				
					define( 'IS_STAGING_WAY_PLAN', strpos( $_SERVER['HTTP_HOST'], 'staging' ) !== false || strpos( $_SERVER['HTTP_HOST'], 'preprod' ) !== false );
				
			

Simple et efficace ! Nous avons juste à vérifier cette constante pour activer ou non des fonctionnalités.

Nous avons mis en place une serie de fonctions php qui s’exécute pour résoudre les différentes problématiques.

Voici la liste des fonctionnalités :

  • Suppression des utilisateurs non administrateurs
  • Suppression de toutes les commandes
  • Passage du site Web no index
  • Suppression de tous les mandats SEPA
  • Passage en mode maintenance du site
  • Suppression des e-mails de suivi et des abonnés
  • Suppression de toutes les tâches CRON

Le résultat

Voilà ce que cela donne en back-office :

Avant Après

Enfin nous avons mis en place une liste de fonctionnalités qu’on peut cocher et lancer pour mettre en place rapidement le staging selon les besoins du moment :

  • Pour tester un parcours utilisateur
  • Pour vérifier que les mises à jours fonctionnent bien avant de les faire en production
  • Pour debug un problème rencontrer sur la prod

Voici une petite démo :

Les technologies que nous avons utilisées dans le projet

  • Logo CSS 3CSS
  • Logo html 5HTML
  • Logo JavaScriptJavascript
  • Logo phpphp
  • Logo WordPresWordPress

À vous de jouer

Besoin d’une prestation similaire ?

À vous de jouer

Besoin d’une prestation similaire ?

Besoin d'aller plus loin

Avec un plugin sur mesure ?

Discutons ensemble

Réponse rapide de 9 à 19h en semaine.

Choisissez votre moyen de communication préféré pour discuter avec nous.