Manajeni Connector
Plugin WordPress officiel pour connecter WordPress et WooCommerce avec Manajeni via API : catalogue, commandes, réservations et synchronisation des données.
Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/bayoussefmedia/manajeni-wordpress-plugin/archive/refs/heads/main.zipPlugin 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