Bonjour,
J'ai repris un site wordpress pour une association. Je précise que je n'ai pas créer ce site, ni le thème, ni le contenu. Je le reprends seulement suite à la démission du webmaster.
Pour tester les futures mises à jour du cms et des plugins, j'ai décidé de faire un dump du site et de l'installer en local sur mon ordinateur (MAMP).
A l'aide d'un script php, j'ai récupéré la base de données, que j'ai rapatrié ensuite en même que le site complet sur ma machine par ftp.
J'ai chargé la base de données (phpmyadmin) en local, j'ai modifié le wp-config.php pour changer le nom d'utilisateur et le mot de passe. J'ai ensuite installer le script répondant au doux nom de "Database Search and Replace Script in PHP", que l'on trouve à cette adresse (https://interconnectit.com/products/search-and-replace-for-wordpress-databases/), et j'ai changé l'ancienne url (https://www.anciensite.com) par la nouvelle url (http://www.localhost:8888/nouvelleadresse.com).
Le site fonctionne, mais pas bien:
Bin une copie conforme pour pouvoir faire les tests et mettre à jour ce site (29 plugins installés quand même), avant que ça ne sente le sapin...
Merci et bonne journée.
Salut,
Mets à jour les permaliens (tu as juste à aller dans l'admin et à valider la configuration), ça devrait régler le problème du menu, sauf si il y a des URLs personnalisés.
Je ne connais pas le script que tu as utilisé, habituellement je le fais à la main, tu as des requêtes très utiles sur cette page : https://wpchannel.com/22-requetes-mysql-indispensables-wordpress/, à partir de la #15 pour les changements d'URL.
Après il y aura toujours des plugins ou widgets qui peuvent poser problème lors de ce type de configuration, à modifier manuellement en fonction des cas ...
Salut,
Merci pour ta réponse rapide. Le problème c'est que quand je me rends sur la page de connection en local, je suis redirigé automatiquement vers le site originel quand je rentre mon login/mot de passe. tu vois ce que je veux dire? Du coup, je n'ai pas accès à l'admin en local.
Vérifies dans ta base de donnée que les champs siteurl et home (table wp_options) soient bien réglé sur ta nouvelle adresse. (regarde aussi dans le fichier wp-config.php si tu n'as pas des traces de l'ancienne URL)
Bonjour,
Voici les requetes que j'utilise :
UPDATE wp_options SET option_value = replace(option_value, 'https://nouveausite.com', 'http://anciensite.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'https://nouveausite.com','http://anciensite.com');
UPDATE wp_posts SET post_content = replace(post_content, 'https://rnouveausite.com', 'http://anciensite.com');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'https://nouveausite', 'https://anciensite.fr');
Tu as inversé nouveau et ancien dans tes requêtes.
Sinon le résultat ? Arrives-tu à te connecter à ton administration sur le nouveau site ?
Regarde du côte des fichiers htaccess également au cas où ...
Salut à tous,
Merci pour votre aide et désolé de ma réponse un peu tardive, mais j'ai été frappé par la maladie (la grippe) :-), je suis sur le retour.
J'ai donc regarder du côté de siteurl et il y a bien ma nouvelle adresse. J'ai repasser ma BD et j'ai vu que l'adresse de l'ancien site est parfois en http et parfois en https. J'ai donc essayé de tout mettre en http://www.localhost:8888/nouveausite.com. Cela ne marche toujours pas. J'ai par exemple les liens du menu qui pointent toujours vers l'ancien site... étrange. En fait j'ai jamais eu un tel problème avec une migration et je me demande si le problème ne vient pas du dump sql que j'ai fais. Je vais relancer un nouveau dump et reviendrai poster la résultat dès que ce sera fait. Pour le dump, je mettais inspirer du tuto que l'on trouve ici . Je ne perds pas espoir mais merci pour vos réponses.
Concernant le htaccess, je n'y ai pas accès.
Et en effet, les requêtes doivent être inversées (je le poste au cas où quelqu'un le lirait :-) ):
UPDATE wp_options SET option_value = replace(option_value, 'http://anciensite.com', 'http://nouveausite.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://anciensite.com','http://nouveausite.com');
UPDATE wp_posts SET post_content = replace(post_content, 'http://anciensite.com', 'http://nouveausite.com');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://anciensite.com', 'https://nouveausite.com');
Bonne journée,
Salut,
je comprend pas pourquoi il faut installer la bbd en local puis faire des requettes compliquées alors que l'on a un fichier SQl.
SQL c est un fichier texte! Et rien d autre !
AVANT d'installer ta BDD en local, ouvre ton fichier sql et fais une recherche "anciensite.com".
Prends le temps de voir tes anciennes url avant des les remplacer par les nouvelles.
http://anciensite.com/ VS http://localhost/www/myfolder/
Puis tu fais rechercher/remplacer avec sublime ou notepad... APRES tu install la BDD.
Pourquoi perdre du temps a faire X requete SQL. On perd du temps et c est compliqué.
il faut juste changer les "blabla.com" par "xy.z". Point.
Une fois les url remplacés, Soit tu ouvres le .htacces et tu le fais a la main, soit tu va dans l admin et tu re-sauvegarde les permaliens.
Suite et fin du probleme.
Evidement si il y a un systeme de cache, prend le temps de le desactiver....
@Xiflex : je suis d'accord avec toi, mais dans le problème initial, la base était déjà importée, donc requêtes pour (re)mouliner tout ça (requêtes qui sont toujours utiles pour d'autres cas de figures)
@pingubuntu : tu n'as pas accès à phpmyadmin pour faire ton dump ? Plutôt que de passer par un le script du tuto (qui est plus adapté pour réaliser un sauvegarde automatique journalière) : tu fais un export SQL dans phpmyadmin, tu modifies le fichier SQL comme Xiflex l'a noté, et tu réimportes via ton phpmyadmin local. Tu dis également ne pas avoir accès au htaccess ? si tu as récupéré tous les fichiers de ton site via FTP tu as forcément récupéré le fichier .htaccess (à la racine) : ouvre le avec un editeur de texte et vérifie les éventuelles URL présent dedans.
Bonsoir.
Pourquoi ne pas tout simplement court-circuiter l'adresse de l'ancien site dans ton fichier hosts en faisant un virtual host ?
Fichier hosts :
127.0.0.1 anciensite.com
Puis le virtual host sur Apache de MAMP.
Tout du moins pour que tu puisses avoir accès sans problème au site en local le temps de faire les modifs.
Pas de nouvelles, bonne nouvelle?
On l'espere!
La courtoisie impose un reponse de pingubuntu :)