Comment fonctionne ce plugin
Ce plugin sert à importer des objets DC (post, commentaires ...) en objets SPIP (articles, forums ...) en passant leurs contenus d’une base de donnée à l’autre.
Ce plugin :
- convertit les raccourcis Dotclear en raccourcis SPIP.
- transforme les category DC en rubriques SPIP.
- transforme les post DC en articles SPIP, le champs texte des post DC se retrouvant dans le champ texte des articles de SPIP, le champs introduction de DC se retrouve dans le descriptif des articles de SPIP.
- transforme les tags DC en mot-clefs SPIP.
- transforme les commentaires DC en forums SPIP.
- transforme les sites réferéncés DC en sites réferencés SPIP
- transforme les utilisateurs DC en auteurs SPIP, en essayant de faire correspondre autant que faire ce peut les statuts. Comme il n’est pas possible de migrer les mots de passe, pour des raisons de sécurités, le plugin en génère des nouveaux, qu’il envoie par email s’il peut.
- transforme les medias DC (sauf les documents distants) en documents SPIP. Le plugin s’occupe de copier depuis le dossier /private
de DC vers le dossier /IMG
de SPIP.
Comme certains post DC peuvent ne pas être dans une catégorie, alors que tout article SPIP doit être dans une rubrique, le plugin crée une rubrique intitulée « Rubrique d’import DC ».
Ce plugin ne convertit pas des thèmes dotclear en squelettes SPIP. Vous pouvez toutefois vous tourner vers SPIP-Clear
Préalable : préparer Dotclear
Il vous faut un blog sous Dotclear 2. Si votre blog est sous Dotclear 1, il faudra auparavent le « migrer ». Par ici : http://fr.dotclear.org/documentation/2.0/admin/1-to-2
Le plugin est prévu pour fonctionner sur une base SPIP "vierge" (sans contenu éditorial). En théorie il pourrait fonctionner avec un SPIP déjà rempli, mais cela n’a jamais été testé.
Le mieux est de travailler « en local » car le plugin nécessite pas mal de calcul.
Il faut donc installer un SPIP (dernière version).
A la racine du dossier de SPIP, (à coté de ecrire
, squelettes-dist
etc,) déposer le dossier public
de Dotclear, qui contient les documents de dotclear.
Les tables de la base de donnée de DC doivent se trouver dans la même base que SPIP. Ainsi, lorsque vous installer votre SPIP, il est nécessaire de bien choisir la base de donnée.
Les urls de dotclear doivent être les urls « standards ».
Installer le plugin
Il s’installe comme n’importe quel plugin.
Il nécéssite :
- SPIP 2.1
- le plugin médiathèque
- le plugin sale (zip)
- le plugin CRUD (zip).
Il vaut mieux faire la migration depuis dotclear sur une base vide, avant toute écriture de contenu. En revanche, il est possible de configurer SPIP avant (par exemple, activer l’annuaire de site WEB).
Migrer le site
Une fois le plugin activé, rendez-vous dans le menu Configuration->Migration
depuis Doctlear.
Le plugin liste tous les blogs DC disponible. Choisissez ceux que vous souhaitez migrer. Chaque blog sera recopié avec sa hiérarchie de catégories / rubriques, sans fusion.
Il vous faudra confirmer votre choix. Laissez le plugin mouliner.
Après la migration
Gestion des documents problématiques !
La première chose a faire est de supprimer le plugin pour éviter de migrer plusieurs fois par erreur.
Ensuite, il vous faudra regarder dans le dossier tmp de SPIP. Vous pourrez trouver un fichier prive_dot_attention.log
: ce fichier liste les éventuels documents qui n’auraient pas pu être migrés, post par post. Il s’agit des documents distants pour la plupart.
Il vous faudra donc repérer ces posts, retrouver les documents, et les ajouter à la main dans les articles SPIP correspondants.
Récupération des anciennes urls (A partir de la version 0.2 du plugin)
Pour permettre de ne pas perdre les liens que certains ont fait vers votre site, récupérez le fichier local/htaccess.tex
.
Remplacez dedans http://exemple.tld
par l’adresse du site SPIP. Mettez le résultat dans le fichier .htaccess
de l’ancien site Dotclear.
A faire
Certains champs des post DC — des champs d’importance secondaire — n’ont pas leurs équivalent dans les articles de SPIP.
Ainsi :
- le champs « post_tz » de la table dc_content et dc_user.
- le champs « post_creadt » de la table « dc_content » n’a pas d’équivalent.
- le champs « post_upddt » de la table « dc_content » n’a pas d’équivalent.
J’attends vos suggestions pour définir ces équivalences.
Ps : Si vous utilisez ce plugin, merci de me faire vos retours d’expériences.
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |