Comment utiliser All-in-One WP Migration dans WordPress : Guide technique complet
All-in-One WP Migration est un plugin WordPress qui sérialise l’intégralité de votre site — base de données, téléchargements de médias, thèmes, plugins et configuration principale — dans une seule archive portable .wpress, qui peut ensuite être importée dans n’importe quelle installation WordPress sans manipulation manuelle de base de données. C’est le moyen le plus rapide d’effectuer une migration complète de site ou une sauvegarde à un instant précis sans toucher à phpMyAdmin, SSH ou aux dumps SQL bruts.
Ce guide va au-delà du simple clic. Il couvre l’intégralité du flux de migration, les contraintes techniques critiques qui causent la plupart des échecs d’importation, l’optimisation de la configuration PHP, le comportement de sérialisation des URL et les étapes de validation post-migration qui sont systématiquement ignorées et causent ensuite des incidents en production.
Ce que fait réellement le plugin en coulisses
Avant de toucher au tableau de bord, comprendre les mécanismes internes du plugin permet d’éviter les mauvaises surprises lors des migrations importantes.
Lorsque vous déclenchez une exportation, All-in-One WP Migration effectue la séquence suivante :
- Exporte la base de données MySQL WordPress vers un fichier SQL plat dans un répertoire de travail temporaire.
- Sérialise toutes les données d’objets PHP dans la base de données (options, configurations de widgets, méta des articles) et réécrit les URL absolues en un jeton de remplacement afin qu’elles puissent être réécrites lors de l’importation.
- Regroupe
wp-content/uploads, les fichiers du thème actif et les répertoires de plugins avec le dump SQL. - Encapsule tout dans une archive
.wpress, qui est un format personnalisé — pas un ZIP ou TAR standard — avec son propre en-tête de manifeste.
Lors de l’importation, le processus s’inverse : l’archive est décompressée, le SQL est rejoué sur la nouvelle base de données, et les jetons de remplacement d’URL sont remplacés par la nouvelle URL du site. Cette étape de réécriture des URL explique pourquoi le plugin gère les changements de domaine sans nécessiter une passe wp-cli search-replace séparée — bien que vous devriez tout de même le vérifier, comme indiqué dans la section post-migration.
Étape 1 : Installer le plugin sur le site source
Connectez-vous à votre tableau de bord WordPress existant et accédez à Extensions > Ajouter. Recherchez All-in-One WP Migration, installez-le et activez-le. La version gratuite est suffisante pour les sites dont la taille est inférieure au seuil de téléchargement de votre serveur (généralement de 128 Mo à 512 Mo selon la configuration PHP de l’hébergeur).
Aucune configuration n’est requise après l’activation. Le plugin s’enregistre immédiatement dans la barre latérale gauche.
Étape 2 : Exporter votre site web
Accédez à All-in-One WP Migration > Exporter dans la barre latérale du tableau de bord.
Cliquez sur Exporter vers et sélectionnez Fichier. Le plugin commencera à packager votre site. Pour un site typique de moins de 500 Mo, cela prend de 30 secondes à 3 minutes. Pour les sites de plusieurs gigaoctets avec de grandes bibliothèques de médias, prévoyez de 10 à 20 minutes.
Ce qui est inclus dans l’exportation :
- Dump complet de la base de données MySQL (toutes les tables avec le préfixe configuré)
- Répertoire
wp-content/uploads - Thèmes actifs et inactifs dans
wp-content/themes - Tous les plugins installés dans
wp-content/plugins
wp-config.php est intentionnellement exclu pour des raisons de sécurité — le propre wp-config.php du site de destination est préservé lors de l’importation
Ce qui est exclu par défaut :
Commentaires indésirables
Révisions d’articles
Thèmes inutilisés et plugins désactivés (configurable via le bouton Options avancées)
Journaux d’erreurs et répertoires de cache
La section Options avancées vous permet d’exclure des tables spécifiques, des chemins de fichiers ou des types d’articles. Utilisez-la pour supprimer les caches transitoires ou les grandes tables de journaux avant l’exportation, ce qui réduit significativement la taille de l’archive.
Une fois le packaging terminé, cliquez sur Télécharger pour sauvegarder le fichier .wpress localement. Conservez-le dans un endroit fiable — ce fichier est la sauvegarde complète de votre site.
Étape 3 : Préparer l’environnement de destination
Si vous migrez vers un nouveau serveur, vous avez besoin d’une installation WordPress propre à la destination avant d’importer. La plupart des environnements d’hébergement géré proposent des installateurs WordPress en un clic. Si vous travaillez sur un environnement VPS Hosting, vous pouvez installer WordPress manuellement ou utiliser une pile de panneau de contrôle.
L’installation WordPress de destination n’a pas besoin de correspondre à la source en termes de thème, de plugins ou de contenu — l’importation écrasera tout. Cependant, les éléments suivants doivent être en place :
WordPress est installé et accessible via son tableau de bord d’administration
L’utilisateur de la base de données dispose des privilèges CREATE, DROP, INSERT, UPDATE, DELETE et ALTER sur la base de données cible
La version PHP est compatible avec vos plugins (vérifiez la version PHP de votre site source sous Outils > Santé du site)
Le répertoire wp-content est accessible en écriture par le processus du serveur web
Important : Le domaine ou sous-domaine du site de destination n’a pas besoin de correspondre à la source. Le plugin réécrit les URL lors de l’importation. Cependant, si vous migrez vers le même domaine exact (par exemple, déplacement entre serveurs), le timing de propagation DNS est important — ne mettez pas à jour le DNS avant que l’importation soit vérifiée.
Étape 4 : Installer le plugin sur le site de destination
Répétez le processus d’installation sur la nouvelle instance WordPress : Extensions > Ajouter, recherchez All-in-One WP Migration, installez et activez.
Cette étape est souvent négligée lorsque les gens configurent une nouvelle installation WordPress et supposent que le plugin sera présent. Ce ne sera pas le cas — le processus d’importation nécessite que le plugin soit déjà actif sur la destination.
Étape 5 : Augmenter la limite de taille de téléchargement avant l’importation
C’est le point d’échec le plus courant. La version gratuite d’All-in-One WP Migration respecte la limite de téléchargement PHP du serveur. Si votre fichier .wpress dépasse cette limite, l’importation échouera silencieusement ou affichera une erreur vague.
Vérifiez votre limite actuelle en accédant à All-in-One WP Migration > Importer. Le plugin affiche la taille maximale de téléchargement directement sur cet écran.
Pour l’augmenter, utilisez l’une des méthodes suivantes selon votre niveau d’accès au serveur :
Méthode 1 : Modifier php.ini directement (recommandé pour les VPS et serveurs dédiés)
upload_max_filesize = 512M
post_max_size = 512M
memory_limit = 512M
max_execution_time = 300
max_input_time = 300
Redémarrez PHP-FPM ou Apache après la sauvegarde :
sudo systemctl restart php8.1-fpm
# or for Apache with mod_php:
sudo systemctl restart apache2
Méthode 2 : Remplacer via .htaccess (environnements d’hébergement mutualisé)
php_value upload_max_filesize 512M
php_value post_max_size 512M
php_value memory_limit 512M
php_value max_execution_time 300
Méthode 3 : Remplacer via wp-config.php
@ini_set('upload_max_filesize', '512M');
@ini_set('post_max_size', '512M');
@ini_set('memory_limit', '512M');
Après avoir appliqué les modifications, actualisez la page Importer dans le plugin pour confirmer que la nouvelle limite est prise en compte. Si vous êtes sur un plan Shared Web Hosting, contactez votre hébergeur pour augmenter les limites PHP au niveau du serveur, car les remplacements .htaccess peuvent être restreints.
Alternative pour les très grands sites : Utilisez le plugin gratuit combiné avec l’extension officielle « Basic », ou téléchargez le fichier .wpress directement dans wp-content/ai1wm-backups/ via FTP/SFTP puis sélectionnez-le depuis l’écran d’importation. Cela contourne entièrement la restriction de taille de téléchargement HTTP.
Étape 6 : Importer l’archive
Sur le site de destination, accédez à All-in-One WP Migration > Importer.
Cliquez sur Importer depuis > Fichier et sélectionnez votre archive .wpress. Le plugin téléchargera le fichier puis commencera le processus de restauration. Une barre de progression suit l’opération.
Ce qui se passe lors de l’importation :
L’archive .wpress est décompressée dans un répertoire temporaire sous wp-contentwp-content sont écrasés par les versions archivéeswp-config.php)Lorsque l’importation est terminée, une boîte de dialogue de confirmation s’affiche. Cliquez sur Continuer (ou Restaurer selon la version du plugin) pour confirmer le remplacement de la base de données. Cette action est irréversible sans une sauvegarde séparée de la base de données de destination.
Vous serez déconnecté immédiatement après la fin de l’importation. C’est un comportement attendu — la base de données contient désormais les comptes utilisateurs du site source. Connectez-vous en utilisant les identifiants de votre site source.
Étape 7 : Vider les permaliens
Après vous être reconnecté, accédez à Réglages > Permaliens. Ne modifiez aucun paramètre. Faites simplement défiler jusqu’en bas et cliquez sur Enregistrer les modifications.
Cela force WordPress à régénérer les règles de réécriture .htaccess pour le nouvel environnement. Ignorer cette étape entraîne le retour d’erreurs 404 pour toutes les URL d’articles et de pages, même si le contenu existe dans la base de données.
Si vous utilisez Nginx au lieu d’Apache, il n’y a pas de fichier .htaccess. Vous devez vous assurer que votre bloc de serveur Nginx inclut la directive WordPress try_files standard :
location / {
try_files $uri $uri/ /index.php?$args;
}Étape 8 : Liste de contrôle de validation post-migration
Une migration n’est pas terminée tant que chaque élément de cette liste n’est pas vérifié. Ignorer la validation est la façon dont les sites défectueux arrivent en production.
Intégrité des URL et des domaines :
- Visitez Réglages > Général et confirmez que l’adresse WordPress et l’adresse du site reflètent bien l’URL de destination correcte
- Effectuez une vérification de recherche-remplacement : installez WP-CLI sur le serveur et exécutez
wp search-replace 'olddomain.com' 'newdomain.com' --dry-runpour détecter les URL manquées par le plugin dans les données sérialisées - Vérifiez les avertissements de contenu mixte dans les outils de développement du navigateur si vous migrez de HTTP vers HTTPS
Tests fonctionnels :
- Testez tous les menus de navigation et les liens internes
- Soumettez au moins un formulaire de contact et vérifiez la réception
- Testez le flux de paiement WooCommerce si applicable
- Vérifiez que les pièces jointes multimédias se chargent correctement (les images cassées indiquent souvent une réécriture d’URL manquée dans la table
wp_posts)
Sécurité et configuration :
- Confirmez que vos certificats SSL sont actifs et que HTTPS est appliqué sur le domaine de destination
- Vérifiez
wp-config.phpsur la destination — les identifiants de base de données, le statutWP_DEBUGet les salts doivent refléter le nouvel environnement, pas la source - Régénérez les clés de sécurité WordPress via Réglages > Général ou en remplaçant les constantes de salt dans
wp-config.phpà l’aide du générateur de clés secrètes WordPress
Mise en cache :
- Videz toutes les couches de cache : cache d’objets (Redis/Memcached), plugins de cache de pages (WP Rocket, W3 Total Cache) et tous les caches CDN
- Désactivez et réactivez les plugins de cache pour les forcer à détecter les nouveaux chemins d’environnement
Comparaison : All-in-One WP Migration vs. méthodes de migration alternatives
| Méthode | Compétences techniques requises | Gère les grands sites | Réécriture des URL | Coût | Idéal pour |
|---|---|---|---|---|---|
| — | — | — | — | — | — |
| All-in-One WP Migration (gratuit) | Faible | Limité par le plafond de téléchargement | Automatique | Gratuit | Sites petits à moyens |
| All-in-One WP Migration (premium) | Faible | Oui (sans limite de taille) | Automatique | Payant | Toute taille de site |
| WP-CLI + rsync + mysqldump | Élevé | Oui | Manuel (`search-replace`) | Gratuit | Développeurs, grands sites |
| Duplicator Pro | Moyen | Oui | Semi-automatique | Payant | Agences, multisite |
| Manuel (phpMyAdmin + FTP) | Élevé | Oui | Manuel | Gratuit | Scénarios de contrôle total |
| Sauvegarde/restauration cPanel/Plesk | Moyen | Oui | Aucune (même domaine) | Inclus avec l’hébergeur | Migrations sur le même hébergeur |
Migration vers un VPS ou un serveur dédié
Si vous passez d’un hébergement mutualisé à un environnement VPS Hosting ou Dedicated Servers, le flux de travail All-in-One WP Migration est identique, mais la configuration du serveur de destination nécessite une attention supplémentaire :
- Installez une pile LAMP ou LEMP (Apache/Nginx, MySQL/MariaDB, PHP)
- Configurez un hôte virtuel pointant vers la racine du document WordPress
- Créez une base de données MySQL dédiée et un utilisateur avec les privilèges appropriés
- Installez le cœur de WordPress avant d’exécuter l’importation du plugin
- Configurez les paramètres du pool PHP-FPM pour correspondre ou dépasser les exigences en ressources du site source
Pour les équipes qui préfèrent une interface de panneau de contrôle géré, un VPS avec cPanel réduit considérablement la charge de configuration du serveur — cPanel fournit un installateur WordPress en un clic, un sélecteur de version PHP et un gestionnaire de fichiers qui simplifient la configuration pré-importation.
Erreurs courantes et comment les corriger
« Échec de l’importation : impossible d’extraire l’archive »
Cela signifie généralement que le fichier .wpress est corrompu, que le téléchargement a été interrompu ou que l’espace disque sur la destination est insuffisant. Vérifiez que la taille du fichier correspond à l’original, vérifiez l’espace disque disponible avec df -h et re-téléchargez via SFTP directement dans wp-content/ai1wm-backups/.
« Délai d’exécution maximum dépassé »
La directive PHP max_execution_time est trop faible pour la taille de l’importation. Augmentez-la à 300 ou 600 secondes dans php.ini ou .htaccess comme indiqué ci-dessus.
« Le fichier téléchargé dépasse la directive upload_max_filesize »
La limite de taille de téléchargement n’a pas été augmentée, ou la modification n’a pas été appliquée au bon fichier de configuration PHP. Exécutez php -i | grep upload_max_filesize depuis la ligne de commande pour confirmer quel php.ini est actif.
php -i | grep upload_max_filesize
php -i | grep "Loaded Configuration File"Écran blanc de la mort après l’importation
Activez temporairement WP_DEBUG dans wp-config.php pour faire apparaître l’erreur PHP réelle :
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);Vérifiez ensuite /wp-content/debug.log pour l’erreur spécifique. Les causes courantes sont un plugin incompatible avec la version PHP de destination ou un épuisement de la limite mémoire.
Images cassées après la migration
Effectuez une recherche-remplacement ciblée de l’ancien domaine dans les tables wp_posts et wp_postmeta. Avec WP-CLI :
wp search-replace 'https://olddomain.com' 'https://newdomain.com' wp_posts wp_postmeta --precise --report-changed-onlyMatrice de décision technique : quand utiliser All-in-One WP Migration
| Scénario | Approche recommandée |
|---|---|
| — | — |
| Site de moins de 512 Mo, déplacement vers un nouvel hébergeur | Version gratuite, téléchargement direct du fichier |
| Site de plus de 512 Mo | Téléchargez `.wpress` via SFTP dans `ai1wm-backups/` ou utilisez la version premium |
| Passage de HTTP à HTTPS | Exécutez WP-CLI `search-replace` après l’importation pour détecter les URL sérialisées |
| Migration d’un réseau multisite | Utilisez la version premium ; la version gratuite ne prend pas en charge le multisite |
| Sauvegardes automatiques récurrentes | Utilisez plutôt un plugin de sauvegarde dédié (UpdraftPlus, BackWPup) |
| Passage à une version PHP différente | Testez la compatibilité des plugins en staging avant l’importation en production |
| Changement de domaine impliqué | Vérifiez la réécriture des URL dans Réglages > Général après l’importation |
Points clés pratiques
- Téléchargez toujours le fichier
.wpressvia SFTP directement danswp-content/ai1wm-backups/pour les sites de plus de 200 Mo — cela évite toute restriction de taille de téléchargement HTTP. - Augmentez
upload_max_filesize,post_max_size,memory_limitetmax_execution_timesur la destination avant de commencer l’importation, pas après avoir rencontré une erreur. - Le plugin exclut
wp-config.phpde l’archive — vos identifiants de base de données de destination sont préservés, mais vérifiez manuellementWP_DEBUG,WP_SITEURLet les salts de sécurité après l’importation. - Videz toujours les permaliens immédiatement après l’importation. Sur Nginx, vérifiez que la directive
try_filesest présente dans le bloc de serveur. - Exécutez
wp search-replace --dry-runaprès toute migration impliquant un changement de domaine pour détecter les restes d’URL sérialisées que le plugin aurait pu manquer. - Confirmez que SSL est actif sur la destination avant la mise en ligne — une incompatibilité de certificat SSL après la migration est une cause fréquente d’avertissements de sécurité du navigateur qui érodent la confiance des utilisateurs.
- Pour les migrations en production, testez toujours dans un environnement de staging en premier, surtout lors du changement de version PHP ou du passage entre des piles de serveurs significativement différentes.
Foire aux questions
All-in-One WP Migration fonctionne-t-il pour déplacer WordPress vers un domaine différent ?
Oui. Le plugin réécrit automatiquement le domaine source vers le domaine de destination lors de l’importation en utilisant un processus de substitution de jetons sur le dump SQL. Après l’importation, vérifiez que la réécriture a réussi en consultant Réglages > Général et en exécutant un search-replace --dry-run WP-CLI pour détecter les URL intégrées dans les données PHP sérialisées que le plugin aurait pu manquer.
Quelle est la taille maximale de fichier prise en charge par la version gratuite ?
La version gratuite n’a pas de limite de taille codée en dur dans le plugin lui-même — la contrainte provient entièrement des directives PHP upload_max_filesize et post_max_size du serveur. Sur de nombreux hébergements mutualisés, la valeur par défaut est de 128 Mo. Vous pouvez contourner entièrement cette restriction en téléchargeant le fichier .wpress via SFTP dans wp-content/ai1wm-backups/ et en le sélectionnant depuis l’écran d’importation, ce qui ignore le mécanisme de téléchargement HTTP.
La migration écrasera-t-elle complètement la base de données du site de destination ?
Oui. L’importation supprime toutes les tables existantes dans la base de données de destination et les remplace par les tables du site source. Sauvegardez la base de données de destination avant d’importer si elle contient des données que vous devez conserver.
Puis-je utiliser All-in-One WP Migration pour WordPress Multisite ?
La version gratuite ne prend pas en charge les migrations de réseau Multisite. L’extension premium « Multisite Extension » est requise pour exporter et importer un réseau Multisite complet. Les sous-sites individuels au sein d’un réseau peuvent parfois être migrés en tant que sites autonomes à l’aide de la version gratuite, mais cela nécessite un nettoyage manuel des entrées de base de données spécifiques au réseau.
Pourquoi suis-je déconnecté immédiatement après la fin de l’importation ?
C’est un comportement correct. L’importation remplace l’intégralité de la base de données, y compris la table wp_users, par les données du site source. Le compte administrateur de votre site de destination n’existe plus — les comptes utilisateurs du site source sont désormais actifs. Connectez-vous en utilisant le nom d’utilisateur et le mot de passe du site source d’origine.
