đŸ› ïž DĂ©veloppement d’un plugin WordPress : synchronisation JetEngine + WP All Import

🎯 Objectif du projet

Ce projet vise Ă  rĂ©soudre un problĂšme rĂ©current rencontrĂ© lors de l’importation de biens immobiliers via le plugin WP All Import : les images importĂ©es ne sont pas correctement attachĂ©es aux publications (posts), et ne sont pas synchronisĂ©es avec le champ galerie personnalisĂ© de JetEngine (_photos ou un autre nom personnalisĂ©).

⚙ FonctionnalitĂ©s du plugin

  • Attache automatiquement toutes les images importĂ©es au post concernĂ©.
  • Alimente dynamiquement le champ JetEngine de type galerie avec les ID des images.
  • Supporte les personnalisations : nom du champ galerie, import ID, type de post.
  • GĂ©nĂšre des logs dĂ©taillĂ©s (avec timestamps et durĂ©e des traitements).
  • Interface admin avec :
    • Visualisation en temps rĂ©el des logs.
    • Champ personnalisable pour la mĂ©tadonnĂ©e JetEngine.
    • Bouton pour vider les logs.
  • Deux versions disponibles :
    • Version A : traitement via shutdown (batch des posts importĂ©s).
    • Version B : traitement immĂ©diat sur le hook pmxi_saved_post.

đŸ§© Stack utilisĂ©e

  • PHP (plugin WordPress)
  • WP All Import (plugin premium)
  • JetEngine (Crocoblock)
  • WordPress AJAX + JS vanilla pour les logs en temps rĂ©el
  • CRON + bash pour tĂąches serveur (dĂ©zippage automatisĂ©)

🔍 ProblĂšmes rencontrĂ©s et rĂ©solus

  • ❌ ProblĂšme d’attachement des images dans WP All Import
  • ❌ WP All Import ne dĂ©clenche pas les hooks standards de media_handle_upload
  • ✅ Solution : rechercher manuellement les images orphelines, les attacher, et mettre Ă  jour la meta
  • ❌ Logs peu lisibles
  • ✅ Refonte complĂšte avec interface claire + filtrage couleur
  • ❌ ProblĂšme de compatibilitĂ© multiformat (XML avec balises diffĂ©rentes)
  • ✅ Ajout d’un champ personnalisĂ© dans l’interface pour s’adapter Ă  chaque XML

đŸ–Œïž Interface admin

L’interface inclut :

  • Un champ pour personnaliser le nom du champ galerie.
  • Un affichage auto-scroll des logs en AJAX.
  • Un bouton pour purger les logs.

📂 Code source

đŸ§‘â€đŸ’» GitHub : https://github.com/dtrabelsi/wpai-gallery-fix/

📁 DĂ©mo ou lien portfolio : https://dhaker-trabelsi.com


🔗 Autres projets & articles

👉 Consulte mon portfolio ici pour voir d’autres outils et intĂ©grations WordPress que j’ai dĂ©veloppĂ©s.