SPIP - changer de version - Journal La Mée Châteaubriant
Accueil > Aides pour les nuls > spip-basique > SPIP - changer de version
J'ai voulu passer de la version
1) Travailler en mode local, (...)
2) Faire les modifications en (...)
3) changer le htaccess
4) Je me suis lancée alors dans (...)
5) Refaire le design
6) Rechercher dans le forum (...)
J'ai voulu passer de la version 1.8 à la version 1.9.2 de Spip
Selon les (bons) conseils qui m'ont été donnés, il faut d'abord essayer en local, puis faire les modifications en ligne. Voici des explications données par Jean-Christophe Villeneuve. (merci à lui !).
1) Travailler en mode local, grâce à EasyPHP
Je n'avais jamais fait cela !
Voici la façon de faire, donnée par Jean-Christophe Villeneuve. que j'ai suivie pas à pas.
il faut passer par easyphp que l'on peut trouver ici : http://www.easyphp.org/
1- Tu le télécharges dans C :/Programm Files et tu l'installes en cliquant sur easyPhp1-8_setup. Mettre une icône sur le bureau.
C :\Program Files\EasyPHP1-8\www, il faut créer un dossier, par exemple :spip1.9.2c-Mee
2- Ensuite tu télécharges la dernière version de spip. Puis cliquer dessus et extraire vers C :\Program Files\EasyPHP1-8\www\spip1.9.2c-Mee
3- Tu lances easyphp (en cliquant sur l'icône du bureau) et il va apparaître une fenêtre. Tu attends que les 2 feux soient au vert et tu peux réduire la fenêtre. [Moi j'ai dû désactiver Skype]
Il est aussi apparu une icône en bas à droite en forme de « e » noir avec un point rouge qui clignote.
4- Tu cliques avec le bouton droit de la souris sur cette icone et tu cliques (bouton gauche) sur « Web local »
Le navigateur s'ouvre avec une page où apparaît le répertoire spip1.9.2c-Mee
5- Tu cliques sur ce répertoire et là tu arrives sur une page « en travaux ». > Pas de souci, on va l'installer ce SPIP
6- Tu rajoutes /ecrire (sans accent) à l'adresse URL puis « OK »
7- Tu suis la procédure d'installation avec
mot de passe de connexion : tu laisses vide
puis créer une nouvelle base de données
(là tu peux donner « le nom que tu veux »)
tu suis ensuite les indications
8- Tu récupères ensuite par ftp les dossiers
9- Tu sauvegardes ta base de données sur le site en ligne
et tu récupères le fichier « dump » créé par ftp dans /ecrire/data (on le met dans le dossier « tmp » dans le site local)
10- Tu restaures cette base de données dans le site local
11- Tu bosses sur tes squelettes pour que tout marche avec cette nouvelle version de spip en local
12- Et normalement tout va bien.
2) Faire les modifications en ligne.
a) de mon ordinateur où j'ai ouvert un « dossier-reserve-SPIP »
b) d'un site distant chez mon hébergeur.
1) j'ai ouvert le site distant : le dossier www
2) avec PTP (Filezilla) j'ai transféré tout le contenu de ce dossier vers mon ordinateur (dossier-reserve-SPIP)
Cela a été long car mon sous-dossier IMG est lourd !
3) quand tout a été transféré, j'ai modifié le nom du dossier www (je l'ai appelé www#) pour qu'il n'agisse plus.
4) j'ai créé un dossier vide appelé www
5) j'ai téléchargé SIPI 1.9.2 à partir d'ici, http://www.spip.net/fr_article3567.html, sur mon ordinateur, dans un dossier de C :/Program Files que j'ai appelé « dossier-SPIP.1.9.2 »
6) J'ai dézippé en faisant « extraire vers » le dossier « dossier-SPIP.1.9.2 »
Cela m'a donné plein de sous-dossiers du genre : cache, dist, IMG, tmp etc.
7) Avec le FTP j'ai envoyé tous ces dossiers, vers le site distant, dans le dossier www. C'est rapide.
8) A partir de dossier-reserve-SPIP, j'ai envoyé tout le dossier IMG vers le site distant www. Ce fut long ! Ce dossier a écrasé celui-qui y était.
9) A partir du dossier-reserve-SPIP, j'ai envoyé tout le dossier « squelettes » vers le site distant www. Cela a donc créé un sous-dossier « squelettes »
9) A partir de dossier-reserve-SPIP, j'ai renommé le fichier mes_fonctions.php3, en enlevant le 3, cela m'a donné un fichier mes_fonctions.php. J'ai envoyé ce fichier mes_fonctions.php, vers le site distant, dans le dossier « Squelettes ». C'est nécessaire pour faire fonctionner les filtres que j'ai mis dans certains de mes squelettes.
10) J'ai tapé : http://www.journal-la-mee.fr/ecrire (c'est à dire : http://nom-de-mon-site/ecrire) et j'ai complété tous les renseignements qu'on me demandait.
Et puis voilà, c'était bien. Enfin presque ! Parce qu'il y avait des liens qui utilisaient php3 alors que, dans la version Spip 1.9.2 il n'y a plus que du php. Donc, quand ça se présentait, j'ai modifié les squelettes par exemple :
en remplaçant : http://www.journal-la-mee.fr/rubrique.php3?id_rubrique=173
par http://www.journal-la-mee.fr/spip.php?rubrique173
De même j'ai remplacé : http://www.journal-la-mee.fr/plan.php3
par http://www.journal-la-mee.fr/spip.php?page=plan
et http://www.journal-la-mee.fr/backend.php3
http://www.journal-la-mee.fr/spip.php?page=backend
Le problème : l'ancienne adresse http://www.journal-la-mee.fr/article.php3?id_article=539
est devenue http:// www.journal-la-mee.fr/spip.php?article539
Comment faire pour changer automatiquement ?
Il faut pour cela aller chercher le fichier htaccess qui est dans le site distant
a) l'envoyer par FTP vers mon ordinateur
b) regarder ici :
#RewriteCond %REQUEST_FILENAME -f
et écrire : ceci (il y a deux # supprimés)
RewriteCond %REQUEST_FILENAME -f
c) renvoyer le fichier htaccess.txt vers le site distant et le renommer .htaccess (avec un point devant et pas de .txt à la fin) . Et ça fonctionne !
4) Je me suis lancée alors dans les « plugins »
To plug, en anglais, ça veut dire « bosser, travailler ». Un plugin c'est un outil informatique qui travaille pour vous !
Voici quelques explications sur les plugins : http://www.spip.net/fr_article3396.html
Mais il s'est trouvé que ma base de données est trop ancienne. et que j'avais alors le message suivant : La table 'spip_meta' a pour type de valeur 'varchar(255)' au lieu de 'text'.
Alors voilà comment j'ai procédé. Déjà quelques détails de contexte, c'était une migration de SPIP 1.7.2 vers 1.9.2c. Je suis hébergé chez OVH et j'utilise le PhpMyAdmin fourni par l'hébergeur.
Je sélectionne ma base de données, et la table spip_meta.
PhpMyAdmin affiche deux zones d'informations : en haut d'écran, la structure de la table, et en dessous les index de la table.
J'avais 5 index : PRIMARY, maj, nom, valeur, valeur2. Ces deux derniers étaient associés au champ valeur, je les ai supprimés tous les deux (colonne action / supprimer de phpMyAdmin dans la zone des index).
Une fois ces suppressions effectuées, j'ai pu aller modifier le type du champ valeur (colonne action / modifier de la zone de la structure de table) et j'ai juste remplacé VARCHAR par TEXT, et j'ai pu valider la modification (pas de message d'erreur).
Et puis finalement ce passage de la version SPIP 1.8.2 à la version SPIP 1.9.2c m'a posé quelques problèmes. Alors j'ai refait les pages article.html et sommaire.html
1) aller chercher article.html dans le dossier « dist »
2) envoyer ce fichier vers l'ordinateur perso puis l'ouvrir avec PSPad
3) replacer tous les éléments qu'on veut : bandeau, image, formulaires, etc.
Finalement j'ai eu moins de mal que je croyais !
Seule difficulté : savoir comment sont imbriqués les body, page, conteneur, contenu, navigation, encart, contre-encart, etc. Mais j'ai trouvé de l'aide précieuse ici :
http://www.spip-contrib.net/Analyse-de-la-CSS-des-squelettes
et ici : http://www.falconnet.fr/SPIP-Analyse-de-la-CSS-des.html
Quand « article.html » est modifié, l'envoyer par FTP dans le dossier « squelettes » (en veillant à ne pas écraser l'autre, au cas où ! Pour ne pas écraser le premier, je le renomme article.html#, comme ça il ne fonctionne pas mais je peux y revenir si nécessaire !)
Procéder alors par approximations successives en allant voir aussi : habillage.css et typographie.css , et spip_style.css . Jeu de patience, mais on y arrive plus facilement que j'aurais cru !