Migration d’un blog Webflow: automatiser le transfert de contenu à grande échelle

04
·
02
·
2025
Migration d’un blog Webflow: automatiser le transfert de contenu à grande échelle

Quand un site évolue, la gestion de son contenu devient un enjeu clé. Adapter une architecture, restructurer les relations entre les données et assurer une transition fluide ne se résument pas à un simple copier-coller.

Récemment, nous avons accompagné une entreprise dans la refonte de son blog Webflow, impliquant plus de 1'000 articles à migrer vers une structure plus optimisée. L’enjeu principal ? Aligner chaque élément sur un nouveau modèle sans altérer la cohérence des contenus ni nécessiter un travail manuel laborieux.

Repenser la structure des données

L’ancien site organisait ses articles à travers des catégories et sous-catégories distinctes, stockées comme des références indépendantes. La nouvelle structure consolidait ces informations dans un champ multi-référence unique, nécessitant une refonte complète de l’organisation des données.

Autre défi : certains articles ne disposaient pas de titres cohérents, certains étant nommés par de simples numéros. Une standardisation était donc essentielle avant toute migration pour garantir une base homogène et exploitable.

Face à ces contraintes, un traitement manuel aurait représenté des semaines de travail fastidieux, avec un risque élevé d’erreurs et d’incohérences. Il fallait donc une approche capable d’automatiser ces ajustements tout en assurant une transition fluide et sans perte d’informations.

Automatiser avec l’API Webflow et Python

L’objectif était clair : extraire, transformer et injecter les données sans intervention humaine, en s’appuyant sur l’API Webflow v2 et un script conçu sur mesure.

1. Extraction des données

Première étape : récupérer l’ensemble des articles avec leurs métadonnées grâce à une requête API.

import requests

def get_items(collection_id, headers):
    url = f"https://api.webflow.com/v2/collections/{collection_id}/items"
    response = requests.get(url, headers=headers)
    if response.status_code == 200:
        return response.json().get("items", [])
    else:
        print(f"Erreur lors de la récupération des articles : {response.status_code}")
        return []

Cette extraction a permis d’identifier toutes les relations existantes, de corriger d’éventuelles anomalies et de préparer les contenus pour leur intégration dans le nouveau modèle.

2. Transformation des données

L’adaptation des données a été réalisée en harmonisant les titres, en réattribuant les catégories et en consolidant les sous-catégories sous un format exploitable.

def transform_data(item):
    name = item["fieldData"]["titel"] if item["fieldData"]["name"].isdigit() else item["fieldData"]["name"]
    subcategories = [
        item["fieldData"].get("subcat-1"),
        item["fieldData"].get("subcat-2"),
        item["fieldData"].get("subcat-3"),
        item["fieldData"].get("subcat-4")
    ]
    return {"name": name, "slug": item["fieldData"]["slug"], "subcategories": list(filter(None, subcategories))}

Grâce à ce traitement, chaque article a été nettoyé et réorganisé avant son importation, garantissant une transition fluide.

3. Envoi vers le nouveau site

Une fois les articles transformés, il a suffi d’une requête POST pour injecter l’ensemble des contenus sur la nouvelle plateforme Webflow.

def post_item(collection_id, headers, data):
    url = f"https://api.webflow.com/v2/collections/{collection_id}/items"
    response = requests.post(url, headers=headers, json={"fields": data})
    if response.status_code == 200:
        print(f"Article ajouté : {data['name']}")
    else:
        print(f"Erreur lors de l’envoi : {response.status_code} - {response.text}")

Résultat : tous les articles ont été migrés en quelques heures, sans manipulation manuelle.

Résultats : gain de temps et fiabilité

Grâce à cette approche automatisée :

  • Une migration finalisée en une journée, contre plusieurs semaines en traitement manuel.
  • Zéro perte de données, toutes les relations et contenus ont été préservés.
  • Un script réutilisable pour d’autres projets similaires.

Un Processus applicable à d’autres cas

Cette migration illustre une réalité souvent sous-estimée : avec les bons outils, un processus perçu comme complexe devient fluide et structuré. En s’appuyant sur l’API Webflow, Python et l’automatisation, il est possible de rationaliser un projet, d’éliminer les tâches répétitives et de se concentrer sur des aspects plus stratégiques. La question n’est plus de savoir si l’automatisation est nécessaire, mais comment l’exploiter efficacement.

Contactez-nous

Pour garantir une réponse parfaitement adaptée à vos exigences spécifiques en matière de conception de site web, nous vous invitons à nous contacter pour obtenir une proposition personnalisée.