Convertisseur de texte
HTML ◄--► BBcode

Ajouter rapidement le convertisseur de texte
à votre site ou application

Vue d'ensemble

L’API de Keetag vous permet d'intégrer facilement le convertisseur dans votre site web, logiciel, application mobile, extension de navigateur ou tout autre support. Schématiquement, elle fonctionne de la même façon que toutes les API :

  1. Un script intégré à votre site/logiciel/application/extension... appelle la page de l'API ;
  2. Le texte est converti ;
  3. Votre script récupère le texte retourné par la page de l'API.

Vous pouvez ensuite faire ce que vous voulez avec le texte converti : l'afficher dans votre application, l'enregistrer...

Les méthodes de mise en place de ce script sont décrites ci-dessous.

Mise en place rapide avec la librairie KeetagCaller
(en deux étapes)

Si votre site est en PHP, le moyen le plus simple et rapide d'appeler l'API est d'utiliser la librairie KeetagCaller. Si vous avez besoin d'un autre langage (Python, Javascript...), consultez la section Mise en place rapide sans librairie.

1 Téléchargez la librairie KeetagCaller et placez-la sur votre serveur

2 Intégrez le convertisseur dans votre site sur ce modèle. Vous aurez besoin de connaître l'ID du langage de départ et de celui d'arrivée, pour cela consultez la liste des langages pris en charge.

<?php
// Includes the Keetag library
require 'KeetagCaller.php';
$keetag = new KeetagCaller();

// Example of text to convert. In your real site, you will probably replace
// this hard coded text with something like $_POST['text_to_convert']
$text_to_convert = 'Hello <b>World</b>! Use the powerful <a href="https://keetag.net">Keetag converter</a> to implement formatting tags on your site very easily.';
// The text is in HTML, so we set "1" (ID of the HTML language on Keetag)
$orig_language_id   = 1;
// We want to convert the text to BBcode, so we set "2" (ID of the BBCode language)
$destin_language_id = 2;

// Converts the text
$result = $keetag->convert_text($text_to_convert, $orig_language_id, $destin_language_id);

// Displays the text after conversion
echo $result['converted_text'];


Astuce : vous pouvez également définir les langages de départ et d'arrivée une fois pour toutes avec set_option(). Ainsi, vous n'aurez pas besoin de les préciser en paramètre à chaque appel de convert_text() :

<?php
// Sets the original et destination languages
$keetag->set_option('orig_language_id',   $orig_language_id);
$keetag->set_option('destin_language_id', $destin_language_id);

// Converts the text, with only one parameter
$result = $keetag->convert_text($text_to_convert);

// Displays the text after conversion
echo $result['converted_text'];

Mise en place rapide sans librairie
(en quatre étapes)

Les exemples de code sont en PHP, mais vous pouvez bien sûr les transposer dans le langage de votre choix.

1 Commençons par définir les 3 variables qui serviront pour la conversion. Pour connaître les ID des langages de départ et d'arrivée, consultez la liste des langages pris en charge.

// Example of text to convert. In your real site, you will probably replace
// this hard coded text with something like $_POST['text_to_convert']
$text_to_convert = 'Hello <b>World</b>! Use the powerful <a href="https://keetag.net">Keetag converter</a> to implement formatting tags on your site very easily.';
// The text is in HTML, so we set "1" (ID of the HTML language on Keetag)
$orig_language_id   = 1;
// We want to convert the text to BBcode, so we set "2" (ID of the BBCode language)
$destin_language_id = 2;

2 Votre texte sera envoyé à la page de l'API grâce à la méthode POST. Pour faire cela sans recourir à un formulaire HTML, utilisez la fonction stream_context_create() en PHP (ou son équivalent dans un autre langage). Vous pouvez copier le code ci-dessous sans le modifier :

$stream = stream_context_create([
    'http' => [
        'method'  => 'POST',
        // Important : sets a user agent
        'header'  => "Content-type: application/x-www-form-urlencoded\r\n"
                    ."User-Agent: Mozilla/4.0 (compatible; MSIE 6.0)\r\n",
        // Your datas for the conversion are applied here
        'content' => http_build_query([
            'text_to_convert'       => $text_to_convert,
            'orig_language_id'      => $orig_language_id,
            'destin_language_id'    => $destin_language_id
            ])
        ]
    ]);

Remarquez que ce code envoie un user agent. Ceci est indispensable quel que soit le langage que vous utilisez. Si vous ne le faites pas, le serveur retournera une erreur « 403/forbidden » et votre script ne pourra pas accéder à l'API.

3 Vous devez à présent envoyer ces données à la page de l'API. En PHP, utilisez la fonction native file_get_contents() :

$json = file_get_contents('https://keetag.net/en/api/v1/converter', FALSE, $stream);

Vous pouvez utiliser un outil plus performant comme cURL s'il est disponible sur votre plateforme.

4 Ce que vous venez de récupérer est un flux texte au format JSON. Pour le manipuler avec PHP, transformez-le en array avec la fonction json_decode() :

$result = json_decode($json, TRUE);

Si votre version de PHP ne contient pas la fonction json_decode() (versions antérieures à PHP 5.2), vous pouvez l'y ajouter grâce à cette astuce [lien de secours] (utilisation du package « Services_JSON »).

Le texte converti se trouve dans la clé "converted_text" :

echo $result['converted_text'];