Skip to content

Instantly share code, notes, and snippets.

@5AMsan
Created June 12, 2023 11:58
Show Gist options
  • Save 5AMsan/10d1da61059cbb3852ab0b4ca7887bb9 to your computer and use it in GitHub Desktop.
Save 5AMsan/10d1da61059cbb3852ab0b4ca7887bb9 to your computer and use it in GitHub Desktop.

Préparation

Créer le blog sur l'administration du réseau pour accueillir la migration et noter l'ID du blog (%BLOG_ID% ci-après)

Copie des fichiers

On part du principe que les fichiers se trouvent sur le même serveur. Sinon, se rapporter à la documentation RSync ou transférer les fichiers en FTP.

Créer le répertoire pour l'hébergement des fichiers liés du blog (attachments) :

mkdir -p new_network/wp-content/uploads/sites/%BLOG_ID%/

Copier les fichiers existants :

cp -r old_blog/wp-content/uploads/* new_network/wp-content/uploads/sites/%BLOG_ID%/

Copier les thèmes :

cp -r old_blog/wp-content/themes/* new_network/wp-content/themes/

Copier les extensions:

cp -r old_blog/wp-content/plugins/* new_network/wp-content/plugins/

Activer thèmes et extensions nécessaires pour le blog en cours de migration via l'administration du réseau.

Copie des données

Exporter la BDD avec l'option "Vider la table avant l'insertion des données" (ou toute autre option qui fait ce job). Remplacer les noms de tables :

oldprefix_ devient newprefix_%BLOGID%_

Attention à l'option oldprefix_user_roles qui doit également être modifiée de la même façon (dans la table options de WP).

Importer les données modifiées dans la nouvelle BDD.

Remplacer les urls de fichier via la commande search-replace de la WP-CLI :

wp search-replace "/uploads/" "/uploads/sites/%BLOG_ID%/" --url="%BLOG_URL%" --dry-run

--dry-run permet de voir l'étendue des modifications avant de modifier les données.

Mettre à jour les permaliens sur le blog migré en visitant la page wp-admin/options-permalink.php du nouveau blog.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment