Migrer les données de
n’importe quel CMS vers
WordPress
WP Tech 2015
Nantes @tonyarchambeau
WP Tech 2015 2
WP Tech 2015 3
Version 1.2.8
Plus maintenue depuis 2008
…
2008 ?
Dotclear 1.2.8

dc_categorie

dc_comment

dc_link

dc_log

dc_ping

dc_post

dc_session

dc_user
WP Tech 2015 4
Dotclear 1.2.8

dc_categorie

dc_comment

dc_link

dc_log

dc_ping

dc_post

dc_session

dc_user
WP Tech 2015 5
wp...
Les CMS
WP Tech 2015 6
« C'est la même chose, mais en
différent. »
WP Tech 2015 7
Oui, c'est possible de
migrer n'importe quel
CMS vers WordPress
Il y a les scripts automatisés
– Gratuit
– Freemium
– Payant
Limites
– Certains CMS
– Certaines versions
– Certains conten...
Et il y a la méthode
artisanale …
directement dans
PhpMyAdmin
WP Tech 2015 9
Déménageur de
contenu
WP Tech 2015 10
Avant de
commencer
Backup du CMS à migrer

Backup de l'installation
WordPress qui recevra les
données

Environnement de...
Purger avant de commencer
WP Tech 2015 12
Tables de contenu
CMS maison : WordPress :
WP Tech 2015 13
Tables de contenu
 INSERT INTO wp_posts 
   (post_author, post_date, post_date_gmt,  post_content, 
post_title, post_name)...
Tables de contenu
WP Tech 2015 15
Méthode Padawan
1) Créer dans la table « wp_posts » les
mêmes colonnes que le CMS maison...
Tables de contenu
WP Tech 2015 16
Tables de contenu
WP Tech 2015 17
Tables de contenu
WP Tech 2015 18
 INSERT INTO wp_posts 
   (titre, contenu, date)
 SELECT titre, contenu, date
 FROM old_...
Tables de contenu
WP Tech 2015 19
 UPDATE wp_posts 
 SET post_title = titre
Tables de contenu
WP Tech 2015 20
 UPDATE wp_posts 
 SET post_content = contenu
Tables de contenu
WP Tech 2015 21
 UPDATE wp_posts 
 SET post_date = FROM_UNIXTIME(date),
     post_date_gmt = DATE_ADD(FR...
Tables des utilisateurs
CMS maison : WordPress :
WP Tech 2015 22
Tables des utilisateurs
Champs supplémentaires :
- à transférer vers wp_usermeta
WP Tech 2015 23
 INSERT INTO wp_usermeta ...
Les problématiques
WP Tech 2015 24
Les dates
1) 2015-12-05
2) 2015-12-05 11:15
3) 2015-12-05 11:15:00
4) 05/12/2015
5) 05/12/2015 11h15
6) 12/05/2015
7) 1449...
Les dates
 CONCAT( 
   SUBSTR('12/05/2015', 7, 4), 
   '­',
   SUBSTR('12/05/2015', 4, 2), 
   '­',
   SUBSTR('12/05/2015'...
Les médias
WP Tech 2015 27
Penser aux images et fichiers.
Conserver le même dossier
Ou
Déplacer dans /wp-content/uploads/
Les URL
WP Tech 2015 28
Remplacer les liens internes modifiés.
La fonction REPLACE() sera utile.
 UPDATE wp_posts
 SET pos...
Les clés d'une bonne migration
WP Tech 2015 29
WP Tech 2015 30
Clé n°1 :
Un simple copier/coller peut suffire dans
certains cas.
WP Tech 2015 31
Clé n°2 :
Bien connaître les fonctionnalités SQL.
REPLACE()
CONCAT()
FROM_UNIXTIME()
SUBSTR()
INSERT ... O...
WP Tech 2015 32
Clé n°3 :
Loi de Murphy :
« si quelque chose peut mal tourner
alors ça tournera mal »
WP Tech 2015 33
Clé n°4 :
Il y a toujours des cas particuliers
WP Tech 2015 34
Clé n°5 :
Un déménageur, déplace les meubles
sans se soucier de la qualité.
WP Tech 2015 35
Clé n°6 :
Logger des erreurs 404
Merci
WP Tech 2015 36
Tony Archambeau
@tonyarchambeau
Fondateur d'Organilog
Application de gestion d'interventions (mobile...
Prochain SlideShare
Chargement dans…5
×

Migrer les données de n'importe quel CMS vers WordPress

2 958 vues

Publié le

Apprenez comment migrer les données de n'importe quel CMS vers WordPress en utilisant uniquement des requêtes SQL à exécuter via PhpMyAdmin.

La migration d'un CMS est une étape importante qui nécessite de transférer le contenu d'un site existant vers un nouveau, afin de conserver des articles, des pages, des utilisateurs, des clients ou bien encore des produits. Il existe des scripts ou plugins qui permettent d'importer plus facilement du contenu dans WordPress en provenance d'un autre site, mais ils sont généralement limités. Cette présentation à pour objectif de détailler une méthode « full SQL » pour transférer du contenu relativement simplement. La méthode ne se substitue pas nécessairement à l'adaptation de script PHP qui permettrait par exemple de gérer des expressions régulières (REGEX).

Publié dans : Internet
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
2 958
Sur SlideShare
0
Issues des intégrations
0
Intégrations
951
Actions
Partages
0
Téléchargements
20
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Migrer les données de n'importe quel CMS vers WordPress

  1. 1. Migrer les données de n’importe quel CMS vers WordPress WP Tech 2015 Nantes @tonyarchambeau
  2. 2. WP Tech 2015 2
  3. 3. WP Tech 2015 3 Version 1.2.8 Plus maintenue depuis 2008 … 2008 ?
  4. 4. Dotclear 1.2.8  dc_categorie  dc_comment  dc_link  dc_log  dc_ping  dc_post  dc_session  dc_user WP Tech 2015 4
  5. 5. Dotclear 1.2.8  dc_categorie  dc_comment  dc_link  dc_log  dc_ping  dc_post  dc_session  dc_user WP Tech 2015 5 wp_comments + wp_commentmeta wp_user + wp_usermeta wp_posts + wp_postmeta wp_terms + wp_term_relationships + wp_term_taxonomy wp_links wp_options
  6. 6. Les CMS WP Tech 2015 6 « C'est la même chose, mais en différent. »
  7. 7. WP Tech 2015 7 Oui, c'est possible de migrer n'importe quel CMS vers WordPress
  8. 8. Il y a les scripts automatisés – Gratuit – Freemium – Payant Limites – Certains CMS – Certaines versions – Certains contenu WP Tech 2015 8 Comment migrer ?
  9. 9. Et il y a la méthode artisanale … directement dans PhpMyAdmin WP Tech 2015 9
  10. 10. Déménageur de contenu WP Tech 2015 10
  11. 11. Avant de commencer Backup du CMS à migrer  Backup de l'installation WordPress qui recevra les données  Environnement de développement  Backup à chaque étape importante de la migration WP Tech 2015 11
  12. 12. Purger avant de commencer WP Tech 2015 12
  13. 13. Tables de contenu CMS maison : WordPress : WP Tech 2015 13
  14. 14. Tables de contenu  INSERT INTO wp_posts     (post_author, post_date, post_date_gmt,  post_content,  post_title, post_name)  SELECT     1, FROM_UNIXTIME(date),    DATE_ADD(FROM_UNIXTIME(date), INTERVAL ­1 HOUR),  contenu, titre, slug   FROM old_cms_article; WP Tech 2015 14 Méthode Jedi
  15. 15. Tables de contenu WP Tech 2015 15 Méthode Padawan 1) Créer dans la table « wp_posts » les mêmes colonnes que le CMS maison. 2) Transférer le contenu de la table du CMS maison vers les nouvelles colonnes « wp_posts ». 3) Déplacer les nouvelles colonnes « wp_posts » vers les vrais colonnes, une à une, grâce à UPDATE
  16. 16. Tables de contenu WP Tech 2015 16
  17. 17. Tables de contenu WP Tech 2015 17
  18. 18. Tables de contenu WP Tech 2015 18  INSERT INTO wp_posts     (titre, contenu, date)  SELECT titre, contenu, date  FROM old_cms_article;
  19. 19. Tables de contenu WP Tech 2015 19  UPDATE wp_posts   SET post_title = titre
  20. 20. Tables de contenu WP Tech 2015 20  UPDATE wp_posts   SET post_content = contenu
  21. 21. Tables de contenu WP Tech 2015 21  UPDATE wp_posts   SET post_date = FROM_UNIXTIME(date),      post_date_gmt = DATE_ADD(FROM_UNIXTIME(date), INTERVAL  ­1 HOUR) 
  22. 22. Tables des utilisateurs CMS maison : WordPress : WP Tech 2015 22
  23. 23. Tables des utilisateurs Champs supplémentaires : - à transférer vers wp_usermeta WP Tech 2015 23  INSERT INTO wp_usermeta   (user_id, meta_key, meta_value)  SELECT ID, 'first_name', prenom   FROM wp_users;  INSERT INTO wp_usermeta   (user_id, meta_key, meta_value)  SELECT ID, 'last_name', nom   FROM wp_users;
  24. 24. Les problématiques WP Tech 2015 24
  25. 25. Les dates 1) 2015-12-05 2) 2015-12-05 11:15 3) 2015-12-05 11:15:00 4) 05/12/2015 5) 05/12/2015 11h15 6) 12/05/2015 7) 1449310500 WP Tech 2015 25
  26. 26. Les dates  CONCAT(     SUBSTR('12/05/2015', 7, 4),     '­',    SUBSTR('12/05/2015', 4, 2),     '­',    SUBSTR('12/05/2015', 1, 2),     ' 11:15:00' );  ­­ 2015­05­12 11:15:00  FROM_UNIXTIME(1449310500);  ­­ 2015­05­12 11:15:00  CONCAT('2015­12­05', ' ', '11:15:00'); ­­ 2015­05­12 11:15:00 WP Tech 2015 26
  27. 27. Les médias WP Tech 2015 27 Penser aux images et fichiers. Conserver le même dossier Ou Déplacer dans /wp-content/uploads/
  28. 28. Les URL WP Tech 2015 28 Remplacer les liens internes modifiés. La fonction REPLACE() sera utile.  UPDATE wp_posts  SET post_content = REPLACE(                       post_content,                        'www.ancien­site.fr',                        'www.nouveau­site.fr' );
  29. 29. Les clés d'une bonne migration WP Tech 2015 29
  30. 30. WP Tech 2015 30 Clé n°1 : Un simple copier/coller peut suffire dans certains cas.
  31. 31. WP Tech 2015 31 Clé n°2 : Bien connaître les fonctionnalités SQL. REPLACE() CONCAT() FROM_UNIXTIME() SUBSTR() INSERT ... ON DUPLICATE KEY ...
  32. 32. WP Tech 2015 32 Clé n°3 : Loi de Murphy : « si quelque chose peut mal tourner alors ça tournera mal »
  33. 33. WP Tech 2015 33 Clé n°4 : Il y a toujours des cas particuliers
  34. 34. WP Tech 2015 34 Clé n°5 : Un déménageur, déplace les meubles sans se soucier de la qualité.
  35. 35. WP Tech 2015 35 Clé n°6 : Logger des erreurs 404
  36. 36. Merci WP Tech 2015 36 Tony Archambeau @tonyarchambeau Fondateur d'Organilog Application de gestion d'interventions (mobile + web) Programme revendeur : http://fr.organilog.com/wptech2015

×