ATTENTION: Avec SPIP 3 les fonctionnalités d’import et d’exports de champs extras sont déjà prises en charge par la nouvelle mouture du plugin Champs Extras 3 et disponibles depuis son interface. Le présent article ne concerne donc que la branche SPIP 2 et la version Champs Extra 2 du plugin
Installation
Comme tous les autres plugins, cf. http://www.spip.net/fr_article3396.html
Le plugin nécessite les plugins Champs extras 2, Saisies. Il utilise le plugin Champs Extras 2 - Interface
A partir de SPIP 3.0, il n’est plus nécessaire d’installer ce plugin qui est intégré dans le plugin champs extra interface
Fonctionnement
Une fois le plugin activé, il faut se rendre sur la page de configuration des Champs Extras
et cliquer sur Importer / Exporter :

Exporter
L’exportation provoque la création d’une description des champs extras actifs sur votre site. Enregistrez ce contenu qui vous servira à recréer les champs extras sur un autre site. Cette description ne concerne que la déclaration des champs, mais en aucun cas leur contenu ; pour déplacer un site, vous devez donc depuis le site d’origine créer une sauvegarde SPIP et exporter les champs extras, puis sur le site de destination, dans l’ordre, activer les mêmes plugins, importer les champs extras, puis la sauvegarde SPIP.
Importer
L’importation utilise une description des champs extras réalisée par le formulaire d’exportation. Collez le contenu qui a été généré dans le cadre ci-dessous. Les champs extras ne seront créés que si les tables SQL auquels ils correspondent existent. Il est donc prudent d’activer les mêmes plugins que sur le site d’origine (au moins ceux qui créent de nouveaux objets éditoriaux tel que Agenda).
Discussions by date of activity
7 discussions
Test en cours SPIP 3.2
C’est OK pour ce qui est de l’import/export YAML
Pour l’export php en l’occurence, j’ai pas pu vérifier si il était exploitable mais en attendant il me sort quand même bien un fichier qui correspond plutôt bien à la réalité des champs présents.
EDIT: vérif faite via la doc de cextras 3, et si elle est toujours à jour, à priori c’est ok. je commit.
Maintenant si un dev pur jus me confirme que c’est toujours comme ça qu’on alimente la base en PHP, je commit le paquet.xml
(Bon ya quand même un truc qui me choque, c’est le
?>
manquant en fin de fichier mais je sais pas si c’est grave dans ce cas précis ?)Non !
L’export est intégré à champs extras (interfaces) de SPIP 3.
Plus besoin de ce plugin.
Par ailleurs, les fermetures
?>
ne sont pas conseillés si le fichier contient uniquement du PHP.Si tu peux revert ta compat sur ce plugin d’export ça serait chouette :)
En plus j’ai l’impression que tu as testé l’export PHP natif de CE3 et pas celui de ce plugin, car il n’avait pas d’export PHP :p …
Fait (r108110)
Désolé, j’avoue que quand le plugin a cessé de fonctionner en SPIP 3.2 je n’ai absoluement pas tilté que les options étaient pourtant bien là quand même (m’apprendra à commiter en pleine nuit blanche... >< )
Pour le
?>
final oui j’ai vu passer pas mal de commit depuis, visant à les supprimer mais j’avoue que le “pourquoi” m’échappe complètement. C’est documenté quelque part ?EDIT: j’en ai profité pour rajouter une petite mention en début de doc. Je te laisse la “crayonner” si tu veux la modifier/préciser/supprimer ... ;)
http://php.net/manual/fr/language.basic-syntax.phptags.php
Mettre une balise ? > fermante peut causer des problèmes (de headers notamment si jamais des caractères, espaces par exemple, se glissent après cette fermeture)
Cf http://php.net/manual/fr/language.basic-syntax.phptags.php
Reply to this message
Merci pour ce plugin :-)
Cependant, quelle est la procédure pour importer des champs extras d’un Spip 2 vers une nouvelle installation en Spip 3 ?
En fait, il semble simplement que tout cela soit très bien géré !
Je viens de faire le test :
- MAJ d’un site SPIP2 en SPIP3
- les données des champs extras sont conservés en base : affichage des valeurs en site public mais pas encore d’édition dans l’espace privé.
- installation du plugin Champs extras 3 (+ interface, saisie, Yaml)
- les champs extras (définition et données) sont restaurés et à nouveau éditable dans l’espace privé.
- Youpi :-)
Bravo et merci aux développeurs !
Reply to this message
Bonjour Matthieu
Je veux bien me lancer pour la migration de ce plugin vers SPIP 3.
D’après toi, est-ce que la migration est facile ?
Champs extra en SPIP3 fonctionne t’il de la même manière qu’en SPIP2 ?
Les définitions des champs extra en SPIP3 sont-elles stockées dans spip_meta comme dans SPIP2 ?
Reply to this message
Pas besoin. Les sauvegardes de SPIP 3 sont différentes de celles de SPIP 2 : elles sauvent vraiment toute la base (une sorte de clone - données ET structure) ce qui n’était pas le cas avant. Et la restauration restaure... tout !
Par ailleurs, si c’est migrer de sqlite -> sqlite, il suffit de copier/coller l’ancienne base (config/bases/nom.sqlite) dans le nouveau site, puis de lancer l’installation du nouveau site.
MM.
Avant même ta réponse, ci-dessous, j’ai fait des test et je suis arrivé à une conclusion y ressemblant beaucoup! :
ce plugin n’est plus nécessaire, car je viens de faire, en local, un essai réussi de transfert d’un site SPIP 3 beta 2, utilisant les champs extras :
- J’ai dupliqué les fichiers et dossiers du site à la racine d’un nouveau dossier en supprimant les fichiers créés par l’installation dans « /config » et en vidant à l’exception du dossier « /dump» le dossier « /tmp », comme lors d’une mise ne ligne par FTP.
- J’ai, ensuite, fait une installation de SPIP, puis une restauration de la base et j’ai la bonne surprise de voir que les champs extras avaient suivi.
Merci
Hervé Le Dantec
Bonjour
Ce plugin est toujours nécessaire en SPIP 3 dans un cas de figure très courant : la création d’un tout nouveau site dans lequel on veut récupérer la définition des champs extra d’un site plus ancien.
Reply to this message
Bonjour. J’ai testé deux fois ce plugin et à chaque fois le message d’erreur suivant est obtenu :
sur Spip 2.1.17 SVN
Reply to this message
Dans tous les cas, bien pratique quand on n’a pas accès à phpmyadmin ou autres et que l’on est sur du SPIP2. Donc un grand merci pour ce travail.
Reply to this message
une version spip 3 est-elle prévue?
Je développe un site spip 3 beta 2 en local, mais je veux être sûr de pouvoir exporter mes champs extras au moment de la mise en ligne du site chez l’hébergeur.
Éviter de passer par un gestionnaire SQLite comme « sqlite manager » (gestionnaire qui m’a, d’ailleurs, été conseillé par Matthieu Marcillaud) pour exporter la table spip_article (sans doute faisable) serait beaucoup plus simple.
merci d’avance
Reply to this message
Add a comment
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.
Follow the comments:
|
