pour migrer d'un Xoops 1.3.x vers un Xoops 2.0.x
Catégorie : Comment faire ...

Pour ceux qui souhaitent migrer d'une version 1.3.X vers une version 2.0.x , l'objectif étant plutôt de migrer vers la derniêre version 2.0.6 au moment oùces lignes sont écrites, deux solutions s'offrent á vous.

La premiêre consiste á appliquer d'une façon successive les différents patchs de mise á jour prévus que l'on peut trouver á cette [url=http://www.xoops.org/general/download.php#xoops2]adresse[/url]. Et il faut reconnaitre que c'est un peu fastidieux.

L'autre méthode que je vous propose est la suivante : réaliser une nouvelle installation et ensuite faire une migration module par module. Bien évidemment, on ne fait pas directement en ligne ce genre de manipulations, mais sur son ordinateur personnel dans l'environnement adapté avec easyphp par exemple ou dans un répertoire indépendant de son site.

La principale difficulté á surmonter concerne les différences de champs entre les tables d'une version 1.3.x et d'une version 2.0.x. Certaines tables dans les versions 2.0.x comportent des champs supplémentaires, et il est possible que vous ayez appliqué des hacks sur votre version 1.3.x qui auraient eu pour conséquence de créer des champs ou tables supplémentaires.

Lors d'une sauvegarde avec phpMyAdmin, le fait de cocher la case données insertions complêtes permet de contourner en partie ce problême. En effet cette option génêre un ordre sql d'insertion comportant les noms de champs.

1) Installation d'une nouvelle version

Suivez les indications qui vous sont indiquées dans le chapître [url=https://www.frxoops.org/dev/modules/smartsection/item.php?itemid=20]installation en local[/url]

2) Récupération des utilisateurs

Votre site contient plusieurs dizaines (voire centaines ou milliers pour certains) et vous n'avez pas trop envie de leur demander de se réinscrire ou de les saisir á la main, c'est bien normal. Il est donc possible de récupérer ses utilisateurs existants et de les insérer dans la nouvelle version.

Faites avec phpMyAdmin une sauvegarde de la table xoops_users, en n'oubliant pas de cocher l'option Données [i]insertions complêtes[/i]. Editer le fichier obtenu et supprimer la premiêre ligne d'insertion et sauvegardez votre fichier.

En effet lorsque vous avez installé votre version 2.0.x, un enregistrement par défaut a été créé dans la table xoops_users. Il correspond á votre user administrateur que vous avez créé lors de cette installation. La table xoops_users n'autorisant pas la duplication d'un même uid, cela provoquerait une erreur si vous ne faites pas cette manipulation.

Vous pouvez maintenant procéder á l'import de ce fichier dans la base mysql de votre version 2.0.X

Table xoops_groups_users_link

C'est le contenu de cette table qui fait le lien entre les utilisateurs et leur groupe d'appartenance. Il est donc nécessaire de transférer le contenu de votre sauvegarde vers votre nouvelle version. Comme pour la table users, supprimez de votre fichier de sauvegarde, les enregistrements qui concernent l'uid=1, c'est á dire le votre. Si vous aviez déjá créé des groupes supplémentaires d'utilisateurs dans votre version précédente, pensez á les recréer dans le même ordre afin qu'ils aient le même numéro. Si vous avez un doute consultez dans votre sauvegarde la table xoops_groups. Dans la version 2.0.x cette table comporte un champ supplémentaire linkid (donc non présent dans la version 1.3.x), si vous avez pris la précaution de faire une sauvegarde avec l'option [i]insertions complêtes[/i] cela ne posera donc pas de problêmes Lister le contenu de cette table, afin de vérifier que chaque user est bien déclaré dans un groupe.

3) Migration des modules standards de xoops

Les modules standards de xoops :
- news
- mylinks
- mydownloads
- newbb
L'élaboration de la derniêre lettre d'information ayant pris un peu de temps, ce tuto devrait être terminé pour plus tard. Merci de votre patience.

<a href="http://creativecommons.org/licenses/by-nc-sa/2.0/fr/" title="Licence, certains droits réservés"><img src="http://www.frxoops.org/images/cdr_bouton.gif" alt="Licence, certains droits réservés" /></a>