Synchronisation des fichiers entre le site local et le site distant

Publié le 26 janvier 2009 par Dictege

Introduction

Comme il est toujours dangereux de modifier un site en ligne, il est peut être intéressant de réaliser une version de travail de votre blog wordpress distant sur votre poste local.

Procédure

Installation des plugins nécessaires sur le site distant:

Pour faciliter cette importation, nous allons nous appuyer sur deux plugins :

  1. Le premier est wp-dbmanager. Il effectue une sauvegarde périodique de la base de données, et stocke le fichier SQL résultant dans wp-content/backup-db. Une fois installé, réalisez un premier backup qui sera utilisé par la suite.
  2. Le second est update-wordpress-url plugin qui va nous permettre une fois l’importation de votre blog en local de migrer toutes les références de votre blog distant dans les options de Wordpress.

Rapatriement de données sur le poste local

Nous allons utilisé la commande wget pour rapatrier les données distantes sur votre poste local :

1
wget --no-host-directories --recursive ftp://user:pass@ftp.domaine.com/rep/

Explications des modificateurs de la commande wget

–no-host-directories : Ceci désactive la création de dossiers pour les hôtes, sans cela les contenus sont stockés dans un dossier nommé comme leur site d’origine.

recursive : Téléchargement récursif, on télécharge tous les sous-dossiers du site.

Création de la base données

Dans le cas ou la base de donnés n’existe pas, créer la au moyen de phpmyadmin. (http://localhost/phpmyadmin/ ) Entrer le user (certainement root) et le mot de passe de passe défini précédemment lors de l’installation de votre serveur LAMP.

Puis entrez le nom de votre nouvelle base :

Importation de la base distante :

Importation

Sur le blog distant téléchargez depuis l’option manage backup-db du plugin wp-dbmanager, la sauvegarde précédemment réalisé. Ensuite retournez dans phpmyadmin de votre site local, cliquez ensuite sur importer, sélectionner votre fichier (précédemment téléchargé) et appuyer sur exécuter.

Ajustement des options de Wordpress

Comme nous avons changer de nom de domaine (distant -> local), il va falloir faire des modifications dans plusieurs tables pour mettre notre site à jour. Pour cela, dans l’onglet ‘SQL’, entrez la commande suivante :

1
2
UPDATE wp_options SET option_value = replace(option_value,'http://www.old-domain.com', 'http://www.new-domain.com') WHERE
option_name = 'home' OR option_name = 'siteurl';

Modification de la configuration de Wordpress

Pour cela nous allons éditer le fichier wp-config.php dans lesquelles vous modifiez lignes suivantes :

1
vi wp-config.php

/** Utilisateur de la base de données MySQL. */
define(’DB_USER’, ‘user-distant’);
/** Mot de passe de la base de données MySQL. */
define(’DB_PASSWORD’, ‘mot-de-passe’);
/** Adresse de l’hébergement MySQL. */
define(’DB_HOST’, ‘localhost’);

Nous allons pouvoir maintenant nous connecter sur la partie admin de notre blog en local.

Modification des références au domaine distant

Dans la partie admin de votre blog local, allez dans l’option ‘Update Urls ‘ du menu ‘Réglages’. Entrez ensuite l’ancien et le nouveau domaine, cliquez sur entrer. Et voila votre blog local est créé.