Aller au contenu

Pile technologique du plugin

Pour l’environnement d’hébergement WordPress, le thème et l’écosystème de plugins, voir Environnement WordPress.

Le plugin repose sur un backend PHP et un frontend JavaScript, s’appuyant sur un petit ensemble de packages Composer et trois services externes. Les sections ci-dessous listent chaque dépendance et son rôle.

  • Namespace : Irisolaris\Map\{Core, Admin, API, Frontend}
  • Autoloading : PSR-4 via Composer
  • Prérequis minimum : WordPress 6.0, PHP 7.4

Le frontend repose sur une seule bibliothèque externe pour le rendu cartographique ; tout le reste est du code personnalisé.

BibliothèqueVersionSourceRôle
MapLibre GL JS2.4.0CDN (unpkg.com)Rendu cartographique interactif

Le frontend est construit à partir de fichiers source modulaires ES6+ (assets/src/js/) compilés via Webpack en un seul bundle (frontend.js) contenant les classes IrisolarisMap et IrisolarisGeocoder. Voir Frontend JavaScript pour plus de détails.

PhpSpreadsheet est la seule dépendance directe ; les autres packages sont transitifs.

PackageVersionRôle
phpoffice/phpspreadsheet1.29.11Lecture de fichiers XLSX/XLS/CSV pour l’import de centrales
ezyang/htmlpurifier4.18.0Assainissement HTML (dépendance de phpspreadsheet)
maennchen/zipstream-php3.1.2Streaming ZIP (dépendance de phpspreadsheet)
markbaker/complex3.0.2Mathématiques de nombres complexes (dépendance de phpspreadsheet)
markbaker/matrix3.0.1Mathématiques matricielles (dépendance de phpspreadsheet)
composer/pcre3.3.2Wrappers PCRE typés

Le plugin communique avec trois services externes à l’exécution, dont aucun ne nécessite de clé API.

ServiceURLAuthentificationRôle
Base Adresse Nationale (BAN)api-adresse.data.gouv.frAucune (public)Géocodage gouvernemental français
HubSpot Forms APIapi.hsforms.comPortal + Form ID dans l’URLSoumission de formulaire CRM
OpenFreeMaptiles.openfreemap.orgAucune (public)Tuiles cartographiques (raster + vecteur)