12 rue de Blénod, 54700 Maidières +33 6 87 42 95 30 Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. Lun-Ven: 8h/12h 14h/17h

Tutoriels sur Joomla et la création de site

YOOtheme Pro : migrer un template de WordPress vers Joomla (et inversement)

Migration wordpress Joomla yootheme

Changer de CMS sans repartir de zéro sur le design, c'est la question qui revient le plus souvent chez les clients qui hésitent entre Joomla et WordPress. Un site refait à l'identique coûte cher en temps d'intégration — et personne n'a envie de reconstruire à la main des dizaines de pages parce que le CMS change.

C'est exactement le cas où YOOtheme Pro change la donne : c'est l'un des rares constructeurs de site qui tourne à l'identique sur les deux plateformes. Voici comment j'ai procédé sur une migration récente, avec les pièges rencontrés en cours de route — histoire de vous éviter de les redécouvrir vous-même.

Pourquoi cet article

La plupart des page builders sont enfermés dans leur écosystème : Elementor ne tourne que sur WordPress, Gantry ou T3 Framework ne tournent que sur Joomla. Si vous changez de CMS, vous perdez tout le travail de mise en page et devez repartir de zéro.

Pourquoi choisir YOOtheme : l'universalité

YOOtheme Pro casse cette logique : c'est le même moteur de builder, les mêmes composants (sections, lignes, colonnes, éléments), le même format d'export en JSON, que vous soyez sur Joomla ou sur WordPress. Concrètement, cela veut dire que :

  • une mise en page construite sur l'un se comprend sur l'autre ;
  • les réglages de style (couleurs, typographie, espacements) suivent la même logique de variables ;
  • un design pensé une fois peut être redéployé sur les deux CMS sans repartir de zéro.

C'est un vrai argument pour une agence qui travaille sur les deux écosystèmes : on peut proposer le même niveau de qualité visuelle à un client Joomla et à un client WordPress, avec un seul outil à maîtriser.

Attention cependant : « même moteur » ne veut pas dire « migration en un clic ». C'est là que la méthode compte.

La méthode

Il n'existe pas un bouton unique qui migre tout un site d'un coup. YOOtheme Pro propose en réalité plusieurs outils d'export/import, avec des périmètres différents, et il faut les utiliser dans le bon ordre.

  1. Vérifiez que les deux installations tournent sur la même version de YOOtheme Pro. Un écart de version peut suffire à générer des incompatibilités de format sur l'import.
  2. Exportez le contenu réel des pages, pas juste le style. Dans le Page Builder, faites un clic droit sur une section (ou sur la mise en page complète) et choisissez Export. Vous obtenez un fichier JSON qui contient la structure complète : sections, lignes, colonnes, éléments et leur contenu.
  3. Préparez la page cible. Sur le CMS de destination, ouvrez la page et initialisez le Page Builder (bouton New Layout si rien n'a encore été construit dessus).
  4. Importez le JSON. Clic droit dans une zone vide du canvas, ou icône d'import de la barre d'outils, puis sélection du fichier exporté à l'étape 2.
  5. Passez en revue chaque élément. C'est l'étape que personne ne saute impunément : vérifiez les images, les liens et les éléments qui font appel à des fonctionnalités propres au CMS d'origine (un module Joomla, un widget WordPress).
  6. Réappliquez le style séparément. Le Style (couleurs, typographie, variables Less) est un système totalement indépendant du contenu des pages. Il se règle à part, panneau par panneau — jamais en copiant-collant un fichier .less brut dans le champ de code personnalisé.

Erreurs à éviter

  • Confondre l'export du Style et l'export du contenu. Le bouton Export Variables du Style Customizer ne génère qu'un fichier de variables de couleurs et de typographie — il ne contient aucune mise en page. Si vous l'importez en pensant récupérer le design d'une page, vous n'obtiendrez rien : ce n'est simplement pas ce que ce fichier transporte.
  • Importer un JSON sans avoir vérifié son contenu. Un export venant de Joomla peut contenir des éléments propres à Joomla — typiquement un élément Module qui pointe vers un module Joomla par son identifiant (une newsletter, un sélecteur de langue, etc.). WordPress ne connaît pas ce type d'élément : à l'import, cela peut faire échouer silencieusement tout l'arbre de la section concernée. Résultat : un Page Builder qui reste vide, sans le moindre message d'erreur. C'est l'erreur la plus piégeuse, parce que rien ne vous indique où ça a cassé.
  • Croire qu'une réinstallation du thème « nettoie » tout. Les réglages YOOtheme Pro (options globales, styles, mise en page de chaque page) sont stockés en base de données, pas dans les fichiers du thème. Supprimer puis réinstaller le thème ne touche ni les options en base, ni le contenu déjà enregistré sur une page ou un article précis. Si un import a corrompu le contenu d'une page donnée, seule la suppression de cette page (ou de cet article) — puis sa recréation — repart sur une base saine.
  • Oublier que les liens et les chemins d'images ne se traduisent pas. Un export Joomla contient des liens au format index.php?option=com_content&view=article&id=... et des chemins d'images propres à l'arborescence Joomla. Rien de tout cela n'a de sens côté WordPress : les liens pointent dans le vide et les images ne se chargent pas tant qu'on n'a pas réimporté les fichiers et corrigé les chemins à la main.
  • Oublier de réassigner les menus. Les positions de menu (navbar, menu mobile...) référencent un nom ou un identifiant de menu propre au CMS d'origine. Cet identifiant ne correspond jamais à un menu existant côté destination — il faut le réassigner manuellement après l'import.

Résolution : que faire quand ça plante

Si l'import se termine sans message d'erreur mais que le Page Builder reste vide, voici l'ordre de vérification qui fait gagner du temps :

  1. Ouvrez le JSON exporté dans un éditeur de texte et repérez tous les types d'éléments présents. Les éléments génériques (section, ligne, colonne, titre, grille, liste, réseaux sociaux, newsletter, texte...) passent sans problème d'une plateforme à l'autre. Un type d'élément dédié à une extension tierce ou à une fonctionnalité propre au CMS d'origine (module Joomla, par exemple) est le suspect numéro un.
  2. Retirez ce bloc du JSON, réimportez : si la mise en page apparaît, vous avez confirmé la cause. Recréez ensuite cette fonctionnalité avec l'équivalent natif de la plateforme cible (un widget WordPress à la place d'un module Joomla, par exemple).
  3. Si le problème persiste après une réinstallation complète du thème, testez l'import sur une page toute neuve. Un identifiant de page neuf repart avec des données vierges — si l'import y fonctionne, le problème n'était pas global mais localisé au contenu déjà enregistré sur l'ancienne page.
  4. Faites toujours cet essai sur un environnement de test avant de toucher à un site en production. Un domaine ou un sous-domaine de test dédié évite de découvrir un souci sur le site live d'un client.

Foire aux questions

Peut-on migrer un site entier en un clic avec YOOtheme Pro ?

Non. Il n'existe pas de migration automatique complète. Le transfert se fait page par page, ou section par section, avec une vérification manuelle à chaque import.

Le style (couleurs, typographie) se transfère-t-il en même temps que le contenu des pages ?

Non, ce sont deux systèmes indépendants dans YOOtheme Pro. Il faut les transférer séparément.

Les modules Joomla passent-ils tels quels sur WordPress ?

Non. Un module Joomla n'a pas d'équivalent direct côté WordPress — il faut le recréer avec un widget natif ou une extension WordPress équivalente.

Faut-il la même version de YOOtheme Pro des deux côtés ?

C'est fortement recommandé. Un écart de version augmente le risque d'incompatibilité de format lors de l'import.

Les images se transfèrent-elles avec le fichier JSON exporté ?

Non, seuls les chemins sont copiés dans le JSON. Il faut réuploader les fichiers physiques dans la médiathèque de destination puis corriger les chemins d'image un par un.

Pourquoi mon import ne donne aucun message d'erreur alors que la page reste vide ?

Parce que l'échec se produit au niveau du parsing d'un élément non reconnu par la plateforme de destination : l'import s'arrête silencieusement au lieu de remonter une erreur explicite. C'est un comportement à connaître plutôt qu'un bug isolé.

Récap

  • YOOtheme Pro est un des seuls page builders réellement partagés entre Joomla et WordPress — c'est ce qui rend une migration de design envisageable sans tout reconstruire.
  • Il n'y a pas un export global unique : Style, réglages de thème et contenu de page sont trois choses séparées, à transférer séparément.
  • Le transfert de contenu se fait via l'export/import de sections dans le Page Builder — jamais via l'export du Style.
  • Un Page Builder vide sans message d'erreur signale presque toujours un élément propre au CMS d'origine (module, widget) que la plateforme de destination ne reconnaît pas.
  • Réinstaller le thème ne nettoie pas les données en base ni le contenu déjà enregistré sur une page précise.
  • Liens, images et menus doivent systématiquement être vérifiés et corrigés à la main après l'import.
  • Testez toujours sur un environnement dédié avant de toucher à un site en production.