Blog29 août 20268 min de lecture

Comment intégrer une publication numérique sur votre propre site web

Le snippet iframe, la liste des domaines autorisés, le problème de hauteur dont personne ne parle, et toutes les raisons pour lesquelles une intégration peut renvoyer une erreur 404.

Publier une édition numérique, c'est deux décisions, pas une : la façon dont elle se lit, et l'endroit où elle vit. La plupart des outils répondent brillamment à la première et prennent silencieusement la seconde à votre place : votre catalogue se retrouve sur une page que vous ne possédez pas, sous une marque qui n'est pas la vôtre, face à une audience que vous ne pouvez pas facturer.

Ce guide traite de la seconde décision : faire vivre le lecteur à l'intérieur de votre propre site — et les quelques détails qui séparent une intégration propre d'une intégration qui casse sur mobile, se fait bloquer par votre CMS, ou renvoie un 404 un mardi parce que quelqu'un a renommé un domaine.

Pourquoi intégrer plutôt que de simplement publier un lien

Un lien vers une plateforme d'hébergement est franchement plus simple. Il ne coûte rien et prend dix secondes. Intégrer coûte une dizaine de minutes et vous rend :

  • La visite. Le trafic reste sur votre URL — là où vivent aussi votre navigation, votre formulaire de contact et vos boutons produits. Un lien envoie les lecteurs là où vous n'êtes pas.
  • Le contexte. Une intégration peut se placer juste sous la fiche produit à laquelle elle correspond, entre deux articles, ou dans la page d'un projet client.
  • La présentation. Largeur, hauteur, mise en page environnante, présence au-dessus ou en dessous de la ligne de flottaison.

Une réserve honnête sur la recherche : le contenu placé dans un iframe n'est pas systématiquement considéré comme du contenu de votre page. Si vous voulez que les moteurs voient de la substance, rédigez un vrai paragraphe et un sommaire directement dans la page, et laissez au lecteur intégré le soin de porter l'expérience. N'intégrez pas une publication sur une page vide en espérant des classements.

Étape 1 : activer l'intégration pour cette publication

L'intégration est généralement un réglage par publication plutôt que par compte — et c'est très bien ainsi : vous décidez numéro par numéro de ce qui a le droit d'apparaître sur votre site.

Dans Flipable, c'est l'interrupteur Embed activé sur la page de détail du catalogue. Quand il est désactivé, l'URL d'intégration de ce catalogue renvoie un 404 partout — exactement le comportement voulu tant qu'une publication est sous embargo ou a été retirée.

La publication doit aussi avoir terminé sa conversion. Un catalogue encore en cours de traitement, ou en échec, ne s'affichera pas — vous obtiendrez un message d'attente plutôt qu'un lecteur.

Étape 2 : mettre le domaine hôte sur liste blanche

Avant que le code ne fonctionne, le domaine doit être enregistré. Flipable tient une liste d'autorisation par espace de travail sous Paramètres → Domains & Embed → Domaines autorisés ; un iframe provenant de tout domaine hors de cette liste est refusé.

Deux choses à comprendre sur cette correspondance :

  • Un domaine couvre tous ses sous-domaines. Ajouter example.com autorise aussi www.example.com, shop.example.com et staging.example.com. Pour la plupart des sites, cela signifie qu'un seul enregistrement suffit.
  • La correspondance se fait sur le domaine racine, pas sur l'URL complète. blog.example.com et example.com sont la même entrée ; example.net en est une autre. Un microsite de campagne sur un autre domaine racine a donc besoin de sa propre entrée.

Les emplacements de domaines sont limités par le plan : un sur Free, Starter et Pro, deux sur Growth, trois sur Business. Si vous publiez sur trois domaines racines sans lien entre eux ou plus, prévoyez-le avant de signer des contrats clients — pas après.

Étape 3 : copier le code d'intégration et le coller en HTML

La page de détail de chaque catalogue vous fournit un snippet prêt à l'emploi dès que l'intégration est activée et qu'un token existe :

<iframe src="https://flipable.co/embed/{TOKEN}/{CATALOG_ID}"
        width="100%" height="600" frameborder="0" allowfullscreen></iframe>

Collez-le dans un endroit qui accepte le HTML brut, pas dans un champ de texte enrichi :

  • WordPress : un bloc HTML personnalisé
  • Webflow : un élément Embed
  • Shopify : une section Custom Liquid
  • Squarespace : un bloc Code
  • Site codé à la main : n'importe où dans le corps

Si votre CMS propose à la fois un mode d'édition « visuel » et un mode « HTML », utilisez le mode HTML. Les éditeurs de texte enrichi sont la première cause de mort silencieuse des intégrations : ils convertissent allègrement les guillemets droits en guillemets typographiques, et le navigateur lit ensuite n'importe quoi.

Étape 4 : corriger la hauteur avant que quelqu'un ne l'ouvre sur un téléphone

C'est l'étape qu'on saute, et c'est celle que les lecteurs remarquent.

La page intégrée remplit la hauteur que vous lui donnez. Un iframe avec height="600" signifie que le lecteur vit dans une fenêtre de 600 pixels — confortable sur ordinateur ; sur un téléphone, cela devient une boîte défilante à l'intérieur de votre page qui défile déjà. Deux zones de défilement concurrentes sur un écran tactile, c'est une véritable mauvaise expérience ; on incrimine la publication, pas le conteneur.

Un réglage par défaut plus robuste :

<iframe src="https://flipable.co/embed/{TOKEN}/{CATALOG_ID}"
        title="Catalogue automne/hiver"
        style="width:100%;height:clamp(500px,75vh,900px);border:0"
        allowfullscreen></iframe>
  • clamp() offre une fenêtre utilisable aux téléphones, laisse grandir les ordinateurs et évite aux tablettes un bandeau rachitique.
  • frameborder est obsolète ; border:0 est la façon moderne de faire.
  • Définissez un title explicite. C'est le nom accessible du cadre, et cela ne coûte rien.
  • Pour une page plein cadre, height:100vh fonctionne — mais prévoyez un en-tête collant, ou passez à 100dvh pour que la barre du navigateur mobile ne mange pas le bas du lecteur.

Puis regardez le résultat sur un vrai téléphone, en portrait et en paysage, avant d'envoyer le lien à qui que ce soit d'important.

Étape 5 : décider où il se charge dans la page

Si la publication est la raison d'être de la page, placez-la sur le premier écran et ne la chargez pas en différé. Si elle accompagne la page — une fiche technique au creux d'une longue description produit — ajoutez loading="lazy" pour que les visiteurs qui ne scrolleront jamais jusque-là ne la téléchargent jamais.

Une conséquence à connaître : les vues sont comptées quand le lecteur se charge réellement. Une intégration différée sous la ligne de flottaison affichera donc moins de vues que la page elle-même, parce qu'une partie des visiteurs ne l'a jamais atteinte. Ce n'est pas un bug de comptage, c'est une description de comportement. Jugez la performance d'une intégration à l'aune de la profondeur de défilement de la page qui l'héberge.

Ce qui protège réellement une publication

Trois mécanismes — et cela vaut la peine de savoir précisément jusqu'où chacun va :

  • Une URL impossible à deviner. Le chemin d'intégration porte un token au niveau de l'espace de travail. Personne ne peut deviner l'adresse d'intégration d'un catalogue ; une URL est donc de fait un secret — traitez-la comme tel et ne la collez pas dans des forums publics.
  • Une liste de domaines plus frame-ancestors. Seuls les hôtes autorisés peuvent encadrer la publication ; le navigateur en est informé via une Content-Security-Policy construite à partir de votre propre liste de domaines, si bien que l'intégration non autorisée échoue au lieu de simplement paraître fausse.
  • Un interrupteur d'arrêt par catalogue. Désactiver l'intégration casse immédiatement toutes les intégrations de cette publication, où qu'elles soient. C'est votre bouton d'arrêt d'urgence.

Et maintenant la limite, dite franchement : une liste d'autorisation n'est pas un paywall. Ouvrir l'URL d'intégration directement dans un onglet du navigateur, plutôt que dans un iframe, est permis — la vérification de domaine porte sur qui peut encadrer votre contenu, pas sur qui peut le lire. Si une publication est réellement derrière un abonnement, protégez la page qui contient l'intégration avec votre propre authentification. Le travail de l'outil s'arrête à « qui peut encadrer ceci » ; « qui peut lire ceci » relève de votre site.

Quand ça ne marche pas, vérifiez dans cet ordre

  1. L'intégration est désactivée pour ce catalogue. Symptôme : un 404 dans le cadre. Cause la plus fréquente, et de loin.
  2. Le domaine hôte n'est pas sur liste blanche. Relisez le domaine racine exact dans la barre d'adresse de votre navigateur, sur la page qui intègre.
  3. Mauvais ID de catalogue ou token copié depuis un autre espace de travail. Ces chaînes sont longues et opaques ; en coller le milieu est facile.
  4. Conversion encore en cours, ou échouée. Symptôme : un message d'attente ou une bannière d'erreur sur la page du catalogue.
  5. Votre propre site bloque les cadres. Un frame-src strict dans votre Content-Security-Policy, ou un plugin de sécurité qui fait la même chose, bloquera les iframe tiers — y compris le vôtre.
  6. Décalage HTTPS. Intégrer un lecteur HTTPS dans une page HTTP est permis ; c'est l'inverse qui fait râler les navigateurs. Réparez le certificat.
  7. Le CMS a défiguré le balisage. Affichez la source de la page en ligne et vérifiez que les attributs sont toujours correctement entre guillemets.

Check-list avant décollage

  • Intégration activée pour cette publication précise
  • Domaine racine sur liste blanche (les sous-domaines sont inclus)
  • Snippet collé dans un bloc HTML, pas dans un champ de texte enrichi
  • Attribut title défini sur le cadre
  • Hauteur testée sur un téléphone, en portrait et en paysage
  • Intégrations sous la ligne de flottaison en loading="lazy"
  • La page contient du vrai texte si vous voulez être indexé
  • Analytics vérifiés le lendemain, pas le trimestre suivant

Testez sur une seule publication

Le plus rapide pour savoir si l'intégration convient à votre site est de faire passer un seul PDF existant — un catalogue, un domaine, une page, vérifiés sur un téléphone. C'est délibérément la forme du plan gratuit : une publication, 100 pages par catalogue, un domaine d'intégration, avec un petit badge « Powered by Flipable » sur le lecteur. Le badge, c'est notre publicité — c'est pourquoi le plan est si généreux. Si le badge pose problème dans vos travaux clients, c'est précisément ce que retirent les plans payants.

intégrationiframesite webSEOflux de publication

Autres articles

Prêt à publier votre propre catalogue interactif ?