SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

290 Plugins, 198 contribs sur SPIP-Zone, 95 visiteurs en ce moment

Accueil > Améliorations de l’espace privé > Champs extra > Import-Export champs extra > Importer / Exporter des descriptions de champs extras

Importer / Exporter des descriptions de champs extras

27 juin 2011 – par Matthieu Marcillaud, Yffic – 15 commentaires

5 votes

Vous utilisez le plugin Champs Extra 2 et vous devez changer de serveur, ce plugin est fait pour vous. Il est même indispensable, sans lui impossible de restaurer la sauvegarde de votre site d’origine, car les nouveaux champs créés ne le sont pas encore sur votre site destination et spip ne peut donc y insérer les données.

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).

Voir en ligne : https://plugins.spip.net/ie_extras

Dernière modification de cette page le 15 janvier 2018

Retour en haut de la page

Vos commentaires

  • Le 18 décembre 2017 à 03:37, par Loiseau2nuit En réponse à : Importer / Exporter des descriptions de champs extras

    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.

    1. <?php
    2. if (!defined("_ECRIRE_INC_VERSION")) return;
    3.  
    4. function monplugin_declarer_champs_extras($champs = array()) {
    5.  
    6.         // Table : spip_auteurs
    7.         if (!is_array($champs['spip_auteurs'])) {
    8.                 $champs['spip_auteurs'] = array();
    9.         }
    10.  
    11.         $champs['spip_auteurs']['auteur_baseline'] = array(
    12.                         'saisie' => 'input',
    13.                         'options' => array(
    14.                                 'nom' => 'auteur_baseline',
    15.                                 'label' => 'Fonction ?',
    16.                                 'sql' => 'text NOT NULL DEFAULT \'\'',
    17.                                 'traitements' => '_TRAITEMENT_RACCOURCIS',
    18.                                 'rechercher' => 'on',
    19.                                 'explication' => 'Une phrase pour nous dire qui vous êtes',
    20.                         ),
    21.                 );
    22.  
    23.  
    24.  
    25.         // Table : spip_forum
    26.         if (!is_array($champs['spip_forum'])) {
    27.                 $champs['spip_forum'] = array();
    28.         }
    29.  
    30.         $champs['spip_forum']['notification'] = array(
    31.                         'saisie' => 'textarea',
    32.                         'options' => array(
    33.                                 'label' => 'Notification',
    34.                                 'cols' => 40,
    35.                                 'rows' => 5,
    36.                                 'sql' => 'text DEFAULT \'\' NOT NULL',
    37.                                 'nom' => 'notification',
    38.                         ),
    39.                 );
    40.  
    41.         $champs['spip_forum']['notification_email'] = array(
    42.                         'saisie' => 'textarea',
    43.                         'options' => array(
    44.                                 'label' => 'Notification_email',
    45.                                 'cols' => 40,
    46.                                 'rows' => 5,
    47.                                 'sql' => 'text DEFAULT \'\' NOT NULL',
    48.                                 'nom' => 'notification_email',
    49.                         ),
    50.                 );
    51.  
    52.  
    53.         // Table : spip_syndic
    54.         if (!is_array($champs['spip_syndic'])) {
    55.                 $champs['spip_syndic'] = array();
    56.         }
    57.  
    58.         $champs['spip_syndic']['input_1'] = array(
    59.                         'saisie' => 'input',
    60.                         'options' => array(
    61.                                 'nom' => 'input_1',
    62.                                 'label' => 'Ligne de texte',
    63.                                 'size' => 40,
    64.                                 'sql' => 'text DEFAULT \'\' NOT NULL',
    65.                         ),
    66.                 );
    67.  
    68.  
    69.         // Table : spip_documents
    70.         if (!is_array($champs['spip_documents'])) {
    71.                 $champs['spip_documents'] = array();
    72.         }
    73.  
    74.         $champs['spip_documents']['oembed'] = array(
    75.                         'saisie' => 'textarea',
    76.                         'options' => array(
    77.                                 'label' => 'Oembed',
    78.                                 'cols' => '40',
    79.                                 'rows' => '5',
    80.                                 'sql' => 'text DEFAULT \'\' NOT NULL',
    81.                                 'nom' => 'oembed',
    82.                         ),
    83.                 );
    84.  
    85.         $champs['spip_documents']['doc_img_alt'] = array(
    86.                         'saisie' => 'input',
    87.                         'options' => array(
    88.                                 'nom' => 'doc_img_alt',
    89.                                 'label' => 'Attribut ALT de l\'image',
    90.                                 'explication' => 'Si votre document est une image, permet de renseigner l\'attribut ALT',
    91.                                 'type' => 'text',
    92.                                 'size' => '40',
    93.                                 'autocomplete' => 'defaut',
    94.                                 'sql' => 'text DEFAULT \'\' NOT NULL',
    95.                                 'rechercher_ponderation' => '2',
    96.                         ),
    97.                 );
    98.  
    99.         return $champs;
    100. }

    Télécharger

    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 ?)

    Répondre à ce message

  • Le 12 février 2014 à 12:53, par Hervé BERNARD En réponse à : Importer / Exporter des descriptions de champs extras

    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 ?

    • Le 12 février 2014 à 18:40, par Hervé BERNARD En réponse à : Importer / Exporter des descriptions de champs extras

      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 !

    Répondre à ce message

  • Le 12 février 2013 à 01:08, par bruno31 En réponse à : Importer / Exporter des descriptions de champs extras

    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 ?

    Répondre à ce message

  • Le 29 février 2012 à 12:32, par marcimat En réponse à : Importer / Exporter des descriptions de champs extras

    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.

    • Le 29 février 2012 à 14:40, par Fennec72 En réponse à : Importer / Exporter des descriptions de champs extras

      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

    • Le 8 novembre 2012 à 16:49, par bruno31 En réponse à : Importer / Exporter des descriptions de champs extras

      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.

    Répondre à ce message

  • Le 19 août 2012 à 20:08, par Thomas Weiss En réponse à : Importer / Exporter des descriptions de champs extras

    Bonjour. J’ai testé deux fois ce plugin et à chaque fois le message d’erreur suivant est obtenu :

    Problème d’analyse des données... Mauvais copier coller ?

    sur Spip 2.1.17 SVN

    Répondre à ce message

  • Le 5 juillet 2012 à 07:31, par Globy En réponse à : Importer / Exporter des descriptions de champs extras

    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.

    Répondre à ce message

  • Le 29 février 2012 à 11:20, par Fennec72 En réponse à : Importer / Exporter des descriptions de champs extras

    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

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?
  • [Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • ScolaSPIP 4

    19 janvier 2016 – 382 commentaires

    ScolaSPIP est plugin-squelette responsive personnalisable pour sites Web d’établissements scolaires basé sur SPIPr Présentation de ScolaSPIP Ce plugin pour SPIP 3 est développé par la Dane de l’académie de Versailles pour les webmestres de cette (...)

  • Jeux pour SPIP 3

    27 juillet 2012 – 53 commentaires

    Un portage pour SPIP 3 du plugin Jeux a été fait. Explications et nouveautés. Cet article concerne une mise à jour du plugin Jeux dont la description complète est disponible ici : Des jeux dans vos articles !. Le code du plugin Jeux est un code (...)

  • Plugin Vidéo(s)

    23 novembre 2010 – 704 commentaires

    Interface de gestion et modèle d’insertion des vidéos : Dailymotion Vimeo Youtube Modèle de la balise HTML5 video avec alternative flash html5media : Lecture HTML5/Flash pour tout navigateur des fichiers MP4/H264/Ogg/WebM/Mkv Support mobile, iPad, (...)

  • Vidéo Accessible

    6 avril 2011 – 168 commentaires

    Un plugin pour faciliter la diffusion de vidéos accessibles. Accessibilité des vidéos Accessibilité de la vidéo Afin d’être pleinement accessible, une vidéo (composée d’images et de sons) doit répondre à plusieurs critères. Le critère de base est (...)

  • Groupes de mots clés arborescents

    26 juillet 2012 – 37 commentaires

    Ce plugin permet de gérer une arborescence de groupes de mots clés. Les sous groupes de mots héritent des propriétés du groupe racine (sur quoi peut on le lier ? peut il y avoir un ou plusieurs mots). Les formulaires de liens qui permettent de lier (...)