Aller au contenu

WordPress

Cloner un site WordPress

Cloner un site WordPress de la production vers un environnement DDEV local.

Objectif : un environnement local aussi proche que possible de la production. À récupérer :

  • les fichiers du site
  • la base de données
  • les éventuels fichiers de configuration
  • DDEV installé.
  • Accès SSH et phpMyAdmin du site à cloner.
  • Versions de PHP et MySQL de la production.

Renseigner la même version de PHP que la production avec --php-version.

ddev config --project-type=wordpress
ddev start
ddev wp core download

Depuis phpMyAdmin, exporter la base en prod.sql.

ddev import-db --file=prod.sql
  • Petit site : tout le dossier, en SFTP ou avec FileZilla.
  • Gros site : sans uploads, pour gagner du temps et de l’espace.
sftp user@server
# Petit site : tout wp-content
get -r www/wp-content
# Gros site : uniquement le nécessaire
lcd wp-content
cd www/wp-content
get -r plugins
get -r themes
get -r mu-plugins
ddev wp search-replace "https://monsite.fr" "https://monsitelocal.ddev.site" --all-tables
# Puis flush des permaliens
ddev wp rewrite flush
# Démarrer le projet
ddev start
# Ouvrir le site dans le navigateur
ddev launch
# Redémarrer le projet
ddev restart
# Afficher les infos du projet (URL, état des services, version de PHP)
ddev describe
# Activer le profileur de performances (XHGui)
ddev xhgui on
ddev restart
# Désactiver le debug
ddev config --web-environment-add=WP_DEBUG=false

Les réglages modifiés dans wp-config.php sont écrasés au prochain ddev start. La source de vérité est .ddev/config.yaml.