Importer un contenu existant grâce à Feeds : Migration Xoops Drupal 2

Importer un contenu existant grâce à Feeds : Migration Xoops Drupal 2

Tout d’abord, il faut importer de la base de données Xoops, les différents articles.

Grâce à PhpMyAdmin, on extrait au format csv, la table _stories de notre Xoops.

Cela nous permet d’identifier les champs que l’on désire importer.

Dans notre cas, nous importerons les champs :

  • Title ;
  • Hometext ;
  • Bodytext…

Pour pouvoir ajouter aux articles de base de Drupal des informations, nous allons soit créer un nouveau type de contenu soit ajouter les champs nécessaires aux types de contenu déjà existant.

Ensuite dans notre Drupal, après avoir installé le module Feeds et ses dépendances, nous allons réer un modèle d’importation (+Add importer).

Paramètres de base

Dans cet onglet, vous pouvez donner un nom à votre modèle d’importation ainsi qu’une description. Pour une importation occasionnelle à partir d’un fichier, vous devez désactiver l’Importation périodique.

 

Paramètres de base de Feeds

Paramètres de base de Feeds

Extracteur

Dans cet onglet, vous spécifiez que vous aller télé-déverser un fichier et dans les paramètres de file Upload, vous vérifier que l’extension de votre fichier fait partie des extensions autorisées (dans notre cas .csv)

Analyseur syntaxique

Choisissez CSV parser et dans les options choisissez votre séparateur ( 😉 et indiquez si votre fichier contient les en-têtes de colonne ou pas.

Processeur

Pour créer un type de contenu, choisissez Node processor qui vous permet de créer ou de mettre à jour des nœuds. Vous avez également la possibilité d’importer des taxonomies ou des utilisateurs (sans mot de passe).

Node processor

Ici vous pouvez choisir le type de contenu, l’auteur ainsi que le format du texte.

Correspondance pour Node processor

C’est ici que vous allez indiquer la correspondance entre les champs que vous importez et les champs que vous avez défini dans votre type de contenu.

Correspondance pour Node processor

Correspondance pour Node processor

Une fois tout ceci paramétré, rendez vous à l’URL http://www.votre-site.com/import, et choisissez votre importation. Vous n’aurez plus qu’à choisir votre fichier et lancer l’importation.

Importer votre contenu dans Drupal

Importer votre contenu dans Drupal

Ce que nous avons fait pour les articles peut se faire pour tous les types de contenu. Si vous désirez importer des images, vous devrez renseigner l’URL de l’image dans votre fichier CSV et les copier sur votre nouveau site dans le dossier de votre choix.

Migration de Xoops à Drupal : Rutènescope

Migration de Xoops à Drupal : Rutènescope

Pourquoi changer de CMS ?

Il est clair que changer de CMS ne se décide pas à la légère. Les raisons de la migration de Rutènescope sont de deux ordres. Tout d’abord, il me semblait que le CMS Xoops évoluait peu ses derniers temps. Ensuite les différents modules n’étaient plus adaptés aux normes du web actuel.

Pourquoi Drupal ?

Le choix a été relativement simple. Les trois CMS, les plus performant actuellement sont à mon avis : WordPress, Joomla et Drupal. Le choix c’est porté sur Drupal 7 a cause de ces deux modules CCK (intégré au core depuis la version 7) qui permet de créer des champs dans un type de contenu et le module Views qui lui permet de modifier l’affichage de ces champs en fonction de leurs contextes. A ma connaissance ni WordPress, ni Joomla ne le permettent.

La migration

Importer le contenu

Une fois le CMS choisi, il n’y avait plus qu’a transférer le contenu de Xoops à Drupal. Evidement, cela ne pouvait pas se faire manuellement car Rutènescope comportait plus de 2000 dates d’évènements et plus de 300 articles.
Le module Feeds de Drupal permettait d’importer via un fichier CSV, le contenu d’un système à l’autre. Il a fallu donc tous d’abord créer des types de contenu (article, agenda…) plus les champs (description, date, adresse, lien web…). Ensuite grâce au module Feeds, on a pu créer des correspondances entre les champs de la base de données Xoops et les champs Drupal.

Cela a donc été réalisé pour les articles, l’agenda mais également les petites annonces et l’annuaire de site web.

L’importation a donc pu se faire sans trop d’encombre.

L’url rewriting

Drupal permet de changer les url en url plus propre et plus conviviale pour les humains. C’est également un petit plus pour le référencement.
Le problème était que toutes les anciennes url de Xoops du genre …./modules/news/article.php?storyid=212

qui étaient indexées par les moteurs de recherche allaient renvoyer une erreur 404 (page non trouvé).

Cette fois ci c’était le module Redirect qui allait pouvoir rediriger les anciennes URL vers les nouvelles.

Le thème

Rutènescope sous Xoops

Rutènescope sous Xoops

Rutenescope sous Drupal 7

Rutenescope sous Drupal 7

Pour ne pas trop désorienter, les utilisateurs de Rutènescope, j’ai opté pour un thème à l’apparence relativement proche. Le thème Zen de Drupal a donc été modifié et adapté pour ressemble celui qui était en place sur Rutènescope.

Conclusion

La migration d’un système a un autre est toujours une opération délicate mais pas impossible. Cela prend du temps et parfois certaines étapes sont plus ardues que d’autre.

Le mieux est quand même de choisir le bon système dès le début.