Exportateur de page

aem vous permet d’exporter une page en tant que page Web complète comprenant des images, des fichiers .js et .css.

Une fois configurée, vous demandez une exportation de page à partir de votre navigateur en remplaçant html par export.zip dans l’URL. Ceci génère un fichier d’archive (zip) contenant la page rendue au format html, ainsi que les ressources référencées. Tous les chemins de la page (par exemple, les chemins d’accès aux images) sont réécrits pour pointer vers les fichiers inclus dans l’archive ou vers les ressources du serveur. Le fichier d’archive (zip) peut ensuite être téléchargé à partir de votre navigateur.

NOTE

Selon votre navigateur et les paramètres, le téléchargement sera soit :

  • un fichier d’archive (<page-name>.export.zip)
  • un dossier (<page-name>); en fait, le fichier d'archive a déjà été développé

Exportation d’une page

La procédure ci-dessous décrit comment exporter une page et considère qu’il existe un modèle de de l’exportation pour votre site. Un modèle d’exportation définit la manière dont une page est exportée et est spécifique à votre site. Pour créer un modèle d’exportation, reportez-vous à la section Création d’une configuration d’exportateur de pages pour votre site.

Pour exporter une page, procédez comme suit :

  1. Accédez à la page requise dans la console Sites.

  2. Sélectionnez la page, puis ouvrez la boîte de dialogue Propriétés.

  3. Sélectionnez l’onglet Avancé.

  4. Développez le champ Exporter pour sélectionner un modèle d’exportation.
    Sélectionnez le modèle requis pour votre site, puis confirmez avec OK.

  5. Sélectionnez Enregistrer et fermer pour fermer la boîte de dialogue des propriétés de page.

  6. Demandez la page à exporter en remplaçant le suffixe html par export.zip dans l’URL.

    Par exemple :

    • localhost:4502/content/we-retail/language-masters/en.html

    Est accessible via :

    • localhost:4502/content/we-retail/language-masters/en.export.zip
  7. Téléchargez le fichier d’archive sur votre système de fichiers.

  8. Dans votre système de fichiers, décompressez le fichier si nécessaire. Une fois développé, il y aura un dossier portant le même nom que la page sélectionnée. Ce dossier contient :

    • le sous-dossier content, qui est la racine d’une série de sous-dossiers qui reflètent le chemin d’accès à la page dans le référentiel

      • dans cette structure, il y a le fichier html pour la page sélectionnée (<page-name>.html).
    • autres ressources (.js fichiers, .css fichiers, images, etc.) sont situés en fonction des paramètres définis dans le modèle d’exportation.

  9. Ouvrez le fichier HTML de la page (<unzip-dir>/<path>/<to>/<page>/<page-path>.html) dans votre navigateur pour vérifier le rendu.

Création d’une configuration de l’exportateur de page pour votre site

L’exportateur de pages est basé sur la structure Content Sync. Les configurations disponibles dans la boîte de dialogue Propriétés de la page sont des modèles d'exportation qui définissent les dépendances requises pour une page.

Lorsqu’une exportation de page est déclenchée, le modèle d’exportation est référencé et le chemin de page et le chemin de conception sont appliqués dynamiquement. Le fichier compressé est alors créé à l’aide de la fonctionnalité de synchronisation de contenu standard.

Une installation AEM prête à l’emploi inclut un modèle par défaut sous /etc/contentsync/templates/default.

  • Il s’agit du modèle de secours lorsqu’aucun modèle d’exportation n’est trouvé dans le référentiel.

  • Le modèle default montre comment une exportation de page peut être configurée, de sorte qu'il puisse servir de base pour un nouveau modèle d'exportation.

  • Pour vue de la structure des noeuds du modèle dans votre navigateur au format JSON, demandez l’URL suivante :
    http://localhost:4502/etc/contentsync/templates/default.json

La méthode la plus simple pour créer un nouveau modèle d'exportateur de pages consiste à :

  • copier le modèle default,

  • attribuez un nouveau nom, approprié à votre site,

  • puis effectuez les mises à jour requises.

Pour créer un modèle entièrement nouveau :

  1. Dans CRXDE Lite, créez un noeud sous /etc/contentsync/templates :

    • Name: un nom approprié à votre site ; par exemple, <mysite>. Le nom s’affiche dans la boîte de dialogue des propriétés de la page lors du choix du modèle d’exportateur de page.

    • Type: nt:unstructured

  2. Sous le noeud de modèle, appelé ici mysite, créez une structure de noeud à l’aide des noeuds de configuration décrits ci-dessous.

Activation d'un modèle d'exportateur de pages pour vos pages

Une fois votre modèle configuré, vous devez le rendre disponible :

  1. Dans CRXDE, accédez à la page requise dans la branche /content. Il peut s’agir d’une page individuelle ou de la page racine d’une sous-arborescence.

  2. Sur le noeud jcr:content de la page, créez la propriété :

    • Name: cq:exportTemplate
    • Type: String
    • Value: chemin d’accès au modèle ; par exemple : /etc/contentsync/templates/mysite

Nœuds de configuration de l’exportateur de page

Le modèle se compose d’une structure de noeud, dans la mesure où il utilise la structure Content Sync. Chaque nœud possède une propriété type qui définit une action spécifique dans le processus de création du fichier compressé.

Les nœuds ci-dessous peuvent être utilisés pour créer un modèle de d’exportation :

  • pageLe nœud page est utilisé pour copier le code HTML de la page dans le fichier compressé. Il possède les caractéristiques suivantes :

    • C’est un nœud obligatoire.
    • Se trouve sous /etc/contentsync/templates/<mysite>.
    • Est défini avec la propriété Namedéfinie sur page.
    • Le type de noeud est nt:unstructured

    Le nœud page possède les propriétés suivantes :

    • Propriété type définie avec la valeur pages.

    • Il ne comporte pas de propriété path, car le chemin d’accès actuel à la page est copié dynamiquement dans la configuration.

  • rewriteLe nœud rewrite définit la façon dont les liens sont réécrits dans la page exportée. Les liens réécrits peuvent pointer vers les fichiers inclus dans le fichier compressé ou vers les ressources sur le serveur.

  • designLe nœud design est utilisé pour copier la conception utilisée pour la page exportée. Il possède les caractéristiques suivantes :

    • Il est facultatif.
    • Se trouve sous /etc/contentsync/templates/<mysite>.
    • Est défini avec la propriété Name définie sur design.
    • Le type de noeud est nt:unstructured.

    Le nœud design possède les propriétés suivantes :

    • Propriété type définie sur la valeur copy.

    • Il ne possède pas de propriété path, car le chemin de page actif est dynamiquement copié dans la configuration.

  • generic
    Un noeud générique est utilisé pour copier des ressources telles que clientlibs
    .js ou .css des fichiers au fichier zip. Il possède les caractéristiques suivantes :

    • Il est facultatif.
    • Se trouve sous /etc/contentsync/templates/<mysite>.
    • Il ne possède pas de domaine spécifique.
    • Le type de noeud est nt:unstructured.
    • A une propriété type et des propriétés type connexes.

    Par exemple, le noeud de configuration suivant copie les fichiers mysite.clientlibs.js dans le fichier zip :

    "mysite.clientlibs.js": {
        "extension": "js",
        "type": "clientlib",
        "path": "/etc/designs/mysite/clientlibs",
        "jcr:primaryType": "nt:unstructured"
    }
    

Mise en œuvre d’une configuration personnalisée

Des configurations personnalisées sont également possibles.

Pour répondre à certaines exigences spécifiques, vous devrez peut-être implémenter un gestionnaire de mise à jour personnalisé.

Exportation d’une page par programmation

Pour exporter une page par programmation, vous pouvez utiliser le service OSGi PageExporter. Ce service permet ce qui suit :

  • exporter une page et écrire la réponse du servlet HTTP ;
  • exporter une page et enregistrer le fichier compressé à un emplacement spécifique.

Le servlet lié au sélecteur export et à l’extension zip utilise le service PageExporter.

Dépannage

Si vous rencontrez un problème de téléchargement du fichier zip, vous pouvez supprimer le noeud /var/contentsync dans le référentiel et envoyer à nouveau la demande d’exportation.

Sur cette page