# Réutiliser une structure d’un site à l’autre

Un paquet emporte un type de contenu avec ses champs, ses types référencés et ses modèles dans un fichier. Cet article vous apprend à exporter un paquet, puis à l’importer sur un autre site après avoir lu ce qu’il ferait.

## Avant de commencer

- Exporter et importer demandent d’être administrateur du site.
- Un paquet emporte les types, leurs champs et leurs modèles de contenu. Il n’emporte aucun contenu, ni les biens, ni les villes, ni les offres saisis.
- Les médias qu’un modèle affiche restent sur le site d’origine. Sur le nouveau site, reposez-les dans le modèle.

## Exporter un type

1. Dans le menu de l’administration, ouvrez **Types de contenu**.
2. Dans le tableau **Types de contenu** ou **Catégories**, sur la ligne du type, cliquez sur **Exporter**. La fenêtre **Exporter :** suivie du nom du type s’ouvre.
3. Décochez ce que vous ne voulez pas emporter. Tout est coché au départ.
4. Si l’encadré **Vérifiez ces points avant de télécharger le paquet.** s’affiche au-dessus du bouton, lisez chacune de ses lignes. La section Lire les avertissements de l’export les détaille.
5. Cliquez sur **Télécharger le paquet**. Vous recevez un fichier `.json` daté, par exemple `lovely-content-model-2026-10-11.json`.

| Section | Contenu |
| --- | --- |
| **Champs de contenu** | Les champs que le type utilise, avec leur clé entre parenthèses. |
| **Types référencés** | Les types que ses champs de référence citent, par exemple les catégories Ville et Type de bien. |
| **Modèles** | Ses modèles de contenu. Le modèle par défaut porte la mention **par défaut**. |

Une section vide ne s’affiche pas. Un lien ne part que si ses deux extrémités partent : décocher le champ Surface retire son usage par le type.

## Lire les avertissements de l’export

La fenêtre signale ce que le paquet laisserait de côté, avant le téléchargement. L’encadré **Vérifiez ces points avant de télécharger le paquet.** donne une ligne par cas. Il se met à jour à chaque case cochée ou décochée et disparaît quand il n’y a plus rien à signaler.

| Avertissement | Effet sur le paquet |
| --- | --- |
| Le modèle « … » affiche le champ « … », absent de l’export. | Le modèle part quand même, sans ce champ. |
| Sur « … », le champ « … » n’est affiché que sous une condition qui lit « … », absent de l’export. | Le champ part avec sa condition. Sur un site qui n’a pas le champ lu par la condition, ce champ reste masqué. |
| La configuration de « … » n’a pas pu être lue et a été laissée de côté. | Le type ne part pas dans le paquet. |

**Conseil :** Pour un paquet complet, recochez les champs que vos modèles et vos conditions lisent, jusqu’à ce que l’encadré disparaisse. Les avertissements ne bloquent pas le téléchargement : le paquet part tel que vous l’avez coché.

## Importer un paquet

**Attention :** N’importez un paquet que d’une source de confiance. Rien n’est écrit avant que vous ayez lu le rapport, mais ce que vous acceptez devient la structure de votre site.

1. Dans le menu **Types de contenu**, à côté du titre **Champs de contenu**, cliquez sur **Importer un paquet**. La fenêtre **Importer un paquet** s’ouvre.
2. Choisissez le fichier `.json`, puis cliquez sur **Lire le paquet**. Le rapport **Contenu de ce paquet** s’affiche. Rien n’est encore écrit.
3. Lisez la colonne **Sur ce site** de chaque ressource.
4. Pour chaque ressource **Déjà là, différent**, choisissez dans **Que faire** entre **Garder le mien** et **Remplacer par le leur**. **Garder le mien** est coché au départ.
5. Cliquez sur **Appliquer**. Le compte rendu **Import terminé** liste ce qui a été écrit et ce qui a été gardé.

| État | Effet de l’import |
| --- | --- |
| **N’existe pas encore** | La ressource est créée. |
| **Déjà là, identique** | Rien n’est écrit. La ressource du site est réutilisée. |
| **Déjà là, différent** | Vous gardez votre définition ou la remplacez par celle du paquet. |

Il n’y a jamais de fusion réglage par réglage. **Remplacer par le leur** remplace la définition entière, y compris ce que vous y aviez modifié. Une ressource du site que le paquet n’apporte pas reste en place.

## Comprendre un refus

L’import vérifie le paquet avant d’écrire quoi que ce soit. Il nomme chaque problème.

| Écran | Cause | Correction |
| --- | --- | --- |
| **Paquet refusé**, à la lecture | Le fichier n’est pas un paquet, ou une clé est malformée. Le paquet entier est refusé. | Exportez de nouveau le paquet depuis le site d’origine. |
| **Rien n’a été écrit.** et une ligne par ressource, à la lecture | Le paquet déclare une propriété ou une valeur que le format n’accepte pas, par exemple après une modification à la main. Aucun bouton **Appliquer** n’apparaît. | Corrigez ou exportez de nouveau le paquet. |
| **Paquet refusé**, à l’application | Vos choix donnent une structure que le site ne peut pas tenir. Par exemple, vous gardez votre champ alors qu’un type du paquet l’utilise autrement. Remplacer un champ par un champ d’un autre type est refusé de la même façon : un champ ne change jamais de type. | Changez votre choix sur la ressource nommée, puis relancez l’import. |
| **Import interrompu** | L’écriture d’une ressource a échoué. Le compte rendu liste ce qui avait été écrit avant. | Lisez le compte rendu, puis relancez l’import. |

Un type peut arriver avec des champs que votre site n’a pas : le paquet les apporte.

## Mettre à jour une structure importée

Appliquez la nouvelle version du paquet comme un import ordinaire. Une ressource identique est réutilisée. Une ressource modifiée, d’un côté ou de l’autre, apparaît en **Déjà là, différent**. Un champ qui a changé de type dans la nouvelle version fait refuser l’import.

Réimporter un paquet sur le site dont il vient ne change rien : tout apparaît en **Déjà là, identique**. Vous vérifiez ainsi qu’un paquet est complet.

## Voir aussi

- [Créer un type de contenu](https://lovelyrender.com/fr/documentation/types-de-contenu/)
- [Ajouter des champs à un type](https://lovelyrender.com/fr/documentation/champs-de-contenu/)
- [Partir d’un modèle de contenu](https://lovelyrender.com/fr/documentation/modeles-de-contenu/)
- [Récupérer votre site](https://lovelyrender.com/fr/documentation/recuperer-votre-site/)
