Convertisseur BBCode en HTML

Le BBCode était le balisage léger de l’ère des forums, [b]gras[/b], [url], [quote], [code]. Chaque forum phpBB, vBulletin, XenForo et SMF l’utilisait, et des millions de messages sur ces plateformes existent encore. Ce convertisseur analyse le BBCode et produit un HTML propre et valide que vous pouvez coller dans un CMS moderne, un site statique ou un pipeline Markdown vers HTML qui ne comprend pas les balises de forum.

Comment convertir le BBCode

  1. 1

    Collez votre BBCode

    Messages entiers ou extraits. Les balises imbriquées sont gérées.

  2. 2

    Le parseur tokenise les balises d'ouverture et de fermeture

    Les paires correspondantes `[tag]...[/tag]` produisent l'élément HTML correspondant.

  3. 3

    Les attributs de balise sont mappés

    Des choses comme `[color=red]`, `[size=18]` ou `[url=https://...]` deviennent des styles en ligne ou des attributs `href`.

  4. 4

    Copiez le HTML

    Prêt pour un article de blog, une page de documentation ou une migration de forum.

Balises prises en charge

BBCode Sortie HTML
[b]texte[/b] <strong>texte</strong>
[i]texte[/i] <em>texte</em>
[u]texte[/u] <u>texte</u>
[s]texte[/s] <del>texte</del>
[url]lien[/url] <a href="lien">lien</a>
[url=lien]texte[/url] <a href="lien">texte</a>
[img]lien[/img] <img src="lien">
[quote]q[/quote] <blockquote>q</blockquote>
[code]c[/code] <pre><code>c</code></pre>
[list][*]a[*]b[/list] <ul><li>a</li><li>b</li></ul>
[color=red]t[/color] <span style="color:red">t</span>
[size=18]t[/size] <span style="font-size:18px">t</span>

Remarques de sécurité

Le BBCode est sûr par conception ; l’HTML ne l’est pas. Convertir le BBCode soumis par les utilisateurs en HTML est le moment classique où un forum a introduit XSS en 2005. Si vous publiez la sortie convertie :

  • Échappez tout texte brut à l’intérieur des balises BBCode.
  • Mettez sur liste blanche les balises que votre convertisseur émet, ne transmettez pas les balises inconnues en tant qu’HTML brut.
  • Validez les URL dans [url] et [img] pour bloquer les schémas javascript: et data:.

Cet outil ne réécrit pas les URL que vous fournissez, vérifiez-les donc avant de publier la sortie convertie.

Migration d’un forum entier

Pour déplacer des milliers de messages, exécutez le convertisseur comme un pipeline : exportez les messages en tant que BBCode → passez par ce convertisseur → importez le HTML. Vérifiez quelques dizaines de messages avec des imbrications inhabituelles ou des codes emoji personnalisés qui peuvent ne pas être dans l’ensemble de balises standard.

Ce que le BBCode ne mappe pas proprement

  • Émoticônes personnalisées de forum (:D et :)), laissez tel quel et rendez-les avec CSS, ou pré-traitez-les séparément.
  • Balises spécifiques aux plugins (comme [spoiler], [youtube]) ne sont pas reconnues, elles sont donc émises en tant que texte littéral.
  • Balises non fermées restent en texte littéral : le parseur ne tente pas de les fermer ni de les réparer.

Questions fréquentes

Oui : publications de la communauté Steam, forums vBulletin et XenForo, certains wikis et de nombreuses installations phpBB héritées. Il survit également en tant que balisage sous-jacent dans quelques panneaux de contrôle de serveurs de jeux.

Pas cet outil, utilisez le convertisseur HTML en BBCode. Revenir en arrière est plus sujet à perte car l’HTML est beaucoup plus expressif que le BBCode.

Les balises inconnues passent en tant que texte littéral, car le convertisseur ne reconnaît que les balises listées dans le tableau ci-dessus.

L’imbrication fonctionne quand les balises sont différentes, par exemple [b] dans [quote]. Une balise imbriquée dans elle-même, comme une citation dans une citation, est fermée au premier tag de fermeture et le reste demeure du texte ; aplatissez ce genre de message avant de convertir.

Outils similaires

Outil disponible dans d’autres langues