Dupliquer un site Web WordPress en local

Vous avez dit dupliquer ?

Beaucoup de solutions existent, plus ou moins compliquées techniquement en fonction de ce que vous voulez faire précisément, de votre niveau de connaissances et de votre « curiosité technique ».

Dans cet article je vais vous parler du plugin WordPress Duplicator, et de Local By Flywheel.
Plus précisément du cas particulier qui empêche de faire un seul package avec Duplicator : il faut alors passer par 2 étapes, créer un package pour la base de données d’une part, et récupérer les fichiers du site d’autre part.

Remarques – Avertissements

WordPress

En parlant de connaissances, il vaut mieux savoir s’y retrouver un minimum dans l’interface d’administration de WordPress, savoir ce qu’est un plugin, comment on l’installe, comment se connecter en FTP sur le serveur Web, ce genre de choses…
Sinon, vous pouvez toujours aller voir par là, sur WPFormation.com :
13 conseils pour bien débuter avec WordPress
Débuter et Apprendre WordPress

Contenu

J’ai dû volontairement limiter le scope de cet article :
Pour une utilisation classique (un seul package) de Duplicator ou de LocalWP (Local By Flywheel) je ne vais pas réinventer la roue, je vous renvoie vers ces ressources :

Video d’Alex de WPMarmite qui date de 2017, l’interface de LocalWP a un peu changé, mais ça reste toujours très utile.

Alex vous explique comment installer et configurer Local By Flywheel

Deux articles de 2017 également, mais toujours très pertinents :
Comment migrer un site WordPress avec Duplicator, sur WPMarmite.com
Migrer son site WordPress facilement avec Duplicator sur WPFormation.com

Voir également les ressources citées à la fin de cet article.

Environnement

Mon environnement de test est constitué par une machine virtuelle, je ne vais pas vous expliquer ce qu’est une machine virtuelle (VM pour les intimes) ou vous expliquer comment créer une VM et installer Windows ou Linux dessus. A nouveau ce n’est pas le but de cet article. LocalWP (Local By Flywheel), le logiciel utilisé pour « héberger » le site web dupliqué s’installe très bien directement sur votre ordinateur, sur Mac/Windows/Linux, et cet article conserve toute son utilité (du moins j’espère qu’il est utile) si vous le faites comme ça.

Vous ne savez pas ce qu’est une machine virtuelle, et vous voulez creuser la question ? vous pouvez aller voir sur Wikipedia (lien) ou sur le site de VMware (lien), par exemple.

Pour une machine virtuelle Windows, vous pouvez avoir une licence temporaire, version d’essai de 30 jours (lien), voire 90 jours pour la version Entreprise (lien).
Et LocalWP fonctionne très bien sur Ubuntu, sinon.
VMware Player est gratuit pour un usage non-commercial ou personnel.
Il y a également VirtualBox d’Oracle.

Windows

Mes screenshots sont faits sous Windows, si vous le faites sur Mac ou Ubuntu et que vous avez un doute ou une question je peux aussi en principe vous aider, j’ai les deux à la maison, c’est à nouveau par soucis de clarté pour la lecture (et par facilité, j’avoue) que j’ai pris ce parti-pris.

Pourquoi travailler sur un site en local ?

Alex vous l’explique encore une fois très bien :

Avantages & Inconvénients de travailler en local avec WordPress

Je l’ai fait personnellement dans ce cas-ci pour :

*Ne pas perturber les visiteurs du site… C’est quand même la base…

*Tester Divi et Elementor sans encombrer voire démolir les sites en production (jamais tester en prod c’est bien connu…)

*Tester d’autres thèmes avec le contenu du site sans perturber/encombrer/surcharger le site de production.

Quand on se rend compte que le site en ligne est tout cassé…

*Apprendre à configurer le thème choisi afin de minimiser la durée ou le site de prod est en maintenance.  Voire configurer le nouveau thème complètement et réinjecter les fichiers du local vers l’hébergement (en supposant que celui-ci n’a pas été modifié entretemps), mais ce n’est pas l’objet de cet article.

*Tester des plugins sur le site complet en gardant le site de production « propre ».

*Duplicator permet de faire des backups de son site, mais j’espère que votre hébergement comporte déjà une fonction de sauvegarde…

Prérequis

*Installer le plugin Duplicator sur le site concerné;

*Pouvoir faire une connexion FTP vers le site Web;
D’autres possibilités peuvent exister en fonction de l’hébergeur, et de la taille du site; dans l’interface de gestion de l’hébergement il est peut-être possible de récupérer les fichiers directement, mais à nouveau il faut bien faire un choix pour cet article, la connexion FTP m’a paru le plus simple, ou en tous cas le plus commun, indépendant de l’hébergeur et du site.
Comme pour la base de données, Duplicator simplifie et automatise les choses, mais d’autres solutions existent.
Pour des sites plus jeunes, plus légers, Duplicator permet d’ailleurs de tout faire en une fois (et vous n’auriez pas eu ce maaagnifique article devant les yeux…).

*Installer Local By Flywheel soit sur votre ordinateur directement, soit dans un environnement de test. A noter que la version Pro ne sert en gros à rien si vous n’avez pas d’hébergement chez Flywheel ou WPEngine.

Bref, tout ce qui est dans ce article peut se faire gratos, génial non ?

Pour l’environnement de test : le gros avantage d’une machine virtuelle, c’est qu’elle permet de faire un « snapshot » une fois le site local fonctionnel et d’y revenir à tout moment.  Cette « photo » de l’environnement fige le contenu et permet de revenir à la situation stable et propre de départ, juste au moment de la « photo ».
Plus d’infos sur le site de VMware (lien).

Procédure

1) Générer le package sur le site online via le plugin Duplicator.
En fait la première fois j’ai eu un message d’erreur, faire un seul package n’était pas possible, et il propose d’office de prendre la base de données uniquement.

Dans la version gratuite de Duplicator, le package créé est stocké sur le site.
Attention à la place que ça peut prendre; une fois récupéré, vous pouvez le supprimer.

2) Télécharger fichiers générés : install.php + backup de la base de données (DB pour les intimes).
C’est proposé automatiquement après la création du package, sinon on peut le faire via l’interface de gestion du plugin.

3) Copier les fichiers du site web en local via FTP : il faut tout prendre, donc le répertoire directement sous « www ». Selon le nombre et la taille de ceux-ci, ça peut prendre du temps… Plusieurs heures parfois, attention au « timeout » de la connexion avec le serveur.
Une fois téléchargé, il faut créer une archive (.zip) avec ce répertoire (et tout ce qu’il contient).

Logiciels gratuits pour une connexion FTP : WinSCP (utilisé ci-dessus) ou Filezilla par exemple.
Pour créer une archive : 7zip.

3bis) Si vous utilisez une machine de test (virtuelle ou non) différente de la machine qui a téléchargé les fichiers, il faut les transférer de l’une à l’autre.

4) Importer le site dans Local by Flywheel

Il faut pointer vers l’archive générée avec les fichiers téléchargés par FTP (répertoires wp-content et autres) pas le package généré par Duplicator :

En principe vous pouvez tout laisser par défaut > Continue
Idem ici. En Custom vous pouvez changer le type de serveur Web, etc.
Il mouline, ça peut durer quelques minutes…

5) Une fois l’import terminé, il faut copier les fichiers générés par Duplicator (DB only pour rappel) dans le répertoire du site local qui vient d’être créé : si vous n’avez pas modifié les chemins par défaut, c’est dans C:\Utilisateurs\[username]\Local Sites\[nomdusiteavecextensiondorigine]\app\public

6) Lancer le script dans un navigateur : si vous n’avez pas modifié les valeurs par défaut, c’est donc l’adresse [nomdusiteavecextensiondorigine].local/installer.php à taper dans la barre d’adresse d’un navigateur, et on fait Enter/Entrée sur le clavier.

Ici Firefox râle, forcément, le certificat SSL n’est plus le bon, on accepte, on aime le risque 😉

Et on arrive (si tout va bien) dans l’interface du script de déploiement de Duplicator :

C’est bien d’avoir beaucoup de… « Good »…
Palpatine Meme
La Force est puissante dans ce plugin…

La fin de la page de l’étape 1 :

On peut laisser les options par défaut… Cocher « I have read… » et Next

Compléter les infos de la DB en fonction des infos « Default » indiquées sur Local By Flywheel :

Une fois les infos complétées, il faut cliquer sur le bouton de test pour valider la connexion
On restaure la base de données, donc oui, on efface tout avant > Next
On garde les infos par défaut, en principe ça doit correspondre à tout ce qui a été fait jusqu’ici…

Dans l’administration de WordPress, bien nettoyer les fichiers d’installation si ce n’est pas fait automatiquement.

Et voilà !
Le site est en ligne, fonctionne, et est complet :

Sources

La video d’Alex « Comment installer WordPress en local »
La video d’Alex « Travailler en local avec WordPress »
Doc de LocalWP : https://localwp.com/help-docs/how-to-import-a-wordpress-site-into-local/
Doc de Duplicator : https://snapcreek.com/duplicator/docs/quick-start > Two-part install

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.