Manajeni Connector
Plugin WordPress officiel pour connecter WordPress et WooCommerce avec Manajeni via API : catalogue, commandes, réservations et synchronisation des données.
by Manajeni · github.com/bayoussefmedia/manajeni-wordpress-plugin
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/bayoussefmedia/manajeni-wordpress-plugin/archive/refs/heads/main.zipReadme
Manajeni Connector
Plugin WordPress d'integration entre WordPress et l'ecosysteme Manajeni.
Objectif
Cette base sert aujourd'hui a fournir :
- un point d'entree WordPress unique via
manajeni-connector.php - une activation du plugin avec creation de table, repertoire XML et options par defaut
- une interface d'administration Manajeni dans WordPress
- une gestion de session admin basee sur
manage_options, URL API declaree et API key stockee cote WordPress - un client API HTTP WordPress pour communiquer avec Manajeni
- un client simule reserve au developpement via
MANAJENI_CONNECTOR_DEV_MODE
La logique metier existante est conservee en l'etat dans cette phase de stabilisation.
Structure
manajeni-connector/
|- manajeni-connector.php
|- includes/
| |- class-manajeni-activator.php
| |- class-manajeni-apps-handler.php
| |- class-manajeni-db.php
| |- class-manajeni-session.php
| |- class-manajeni-xml-handler.php
| `- controllers/
|- services/
| `- class-manajeni-fake-api-client.php
`- admin/
|- assets/css/
`- views/
Composants
manajeni-connector.php: bootstrap du plugin, constantes, hooks d'activation/desactivation, autoload, menu admin et chargement des pages.includes/class-manajeni-activator.php: prepare la table WordPress, le dossier XML et les options par defaut.includes/class-manajeni-session.php: controle l'acces admin, la session et les redirections de parcours.includes/class-manajeni-db.php: persistance locale chiffree de la cle API et de l'etat de connexion.includes/class-manajeni-xml-handler.php: lecture et mise a jour du fichier XML de configuration.includes/controllers/: rendu des modules applicatifs par domaine.services/class-manajeni-api-client.php: client API reel base surwp_remote_get()etwp_remote_post().services/class-manajeni-fake-api-client.php: donnees factices reservees au mode developpement.admin/views/: vues d'administration.admin/assets/css/: styles de l'interface admin.
Installation locale
- Copier le dossier
manajeni-connectordanswp-content/plugins/. - Verifier que le fichier principal est
manajeni-connector.phpa la racine du plugin. - Activer le plugin depuis l'administration WordPress.
- A l'activation, le plugin cree :
- la table
{$wpdb->prefix}manajeni_connection - un dossier
uploads/manajeni/ - un fichier
uploads/manajeni/config.xml - les options WordPress necessaires
- la table
- Se connecter ensuite au parcours admin Manajeni pour renseigner :
- l'URL API Manajeni
- la cle API Manajeni
- l'URL du site est ajoutee automatiquement dans le header
X-Manajeni-Origin
Mode developpement
Le mode simulation n'est plus pilote par une option admin.
Pour conserver le faux client en developpement uniquement, definir :
define('MANAJENI_CONNECTOR_DEV_MODE', true);
Sans cette constante, le plugin utilise exclusivement l'API Manajeni reelle.
Workflow Git recommande
- Creer une branche de travail courte depuis la branche de reference.
- Limiter chaque commit a un objectif unique : header, doc, correctif technique, test.
- Ne pas melanger stabilisation technique et evolutions metier dans le meme commit.
- Verifier au minimum la syntaxe PHP avant commit.
- Ouvrir une revue avant fusion si la modification touche
manajeni-connector.phpouincludes/.
Exemple :
git checkout -b chore/stabilize-plugin-base
php -l manajeni-connector.php
git add manajeni-connector.php README.md
git commit -m "chore: stabilize plugin header and documentation"
Etat actuel
Etat observe au moment de cette documentation :
- le plugin expose un menu admin Manajeni avec plusieurs sous-modules
- le bootstrap principal repose sur des fonctions anonymes et un autoload simple
- la connexion principale passe par
API URL + API Key, sans email ni mot de passe Manajeni - la cle API est stockee de maniere chiffree et affichee de facon masquee dans l'admin
- le plugin cree et utilise un stockage XML dans
uploads/manajeni/ - les modules
clients,catalogue,orders/devisetappointments/rendez-voussont branches sur le client API reel - les autres menus restent presents et chargeables, mais dependent encore d'endpoints Manajeni a formaliser si ces modules doivent devenir pleinement operationnels
Stabilisation appliquee
- header WordPress corrige pour rester lisible par WordPress
Descriptionremplacee par un texte simple, sans PHP- version du header alignee sur
MANAJENI_CONNECTOR_VERSION - suppression du flux
email/passwordau profit d'une connexion uniquement par API key - introduction d'un client API WordPress natif avec headers
Authorization: BeareretX-Manajeni-Origin - conservation du faux client uniquement en mode developpement
Verification minimale
Pour verifier que le plugin reste activable :
php -l manajeni-connector.php
find . -name '*.php' -print0 | xargs -0 -n1 php -l
L'activation fonctionnelle doit ensuite etre verifiee dans WordPress avec un environnement local complet.
Securite
- ne jamais commiter de secret, cle API reelle ou URL sensible dans le depot
- conserver les controles
ABSPATHdans les fichiers PHP charges directement - limiter l'acces aux pages admin avec
manage_options - preferer les fonctions WordPress d'echappement et de redirection securisee pour les evolutions futures