Migrer un site sous WordPress en automatique

Vous avez terminé votre développement, et vous venez de passer votre site en production, et malheureusement tout le thème est cassé. Il ne fallait pas utiliser des outils tels que Elementor ou un autre Page Builder ! Mais bon, pour vous j’ai la solution.

Migrer un site :

La plupart du temps si vous avez pris un thème standard, et simple, ces quelques lignes vous suffiront pour basculer d’une url à l’autre. (Attention aux préfixes des tables).

UPDATE wp_options SET option_value = replace(option_value, 'http://oldurl.com','http://newurl.com') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET guid = replace(guid,'http://oldurl.com','http://newurl.com');

UPDATE wp_posts SET post_content = replace(post_content, 'http://oldurl.com','http://newurl.com');

UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://oldurl.com','http://newurl.com');

UPDATE wp_yoast_indexable SET permalink = replace(permalink,'http://oldurl.com','http://newurl.com'); (si vous utilisez yoast)

Les pages Builders:

Les outils de page builder enregistrent parfois des customisations d’images ou de css directement dans les métas donnés des pages, et ces données sont serializés. Du coup, on se retrouve avec des urls du genre http:\/\/ et les requetes indiquées plus haut ne passent plus. Si vous les adaptez, et bien, la ca ne fonctionnera plus du tout car vous n’aurez pas respecter les contraintes de serialization. Il faut donc en théorie, unserialize, modifier tout le tableau de données avec la nouvelle url, et serializer de nouveau.

La solution:

Voici un script maison qui vous fera tout ca tout seul.

Voyons comment:
– Le 1er onglet vous fera les requêtes indiquées plus haut.
– Le 2e onglet vous permettra d’ajuster si jamais vous reperez encore des tables liés à des plug-ins qui n’auront pas étés migrées.

Migration d’une url vers une autre
Reserialization des données avec la bonne url

Conclusion:

Pour éviter tous ces ennuis, le plus simple c’est toujours de bosser avec l’url finale, et une modification dans le fichier host, mais si c’est trop tard, cette astuce pourra vous faire gagner pas mal de temps.

Laisser un commentaire

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