[spip-dev] Filtre html2spip ?

Hello,

est-ce que quelqu'un a déjà été amené à créer un filtre transformant
un code HTML en syntaxe SPIP, pour reprendre des contenus existants,
par exemple ?

-Nicolas

Je me déclare comme hautement intéressé par ce genre de moulinette, ayant en projet un truc dans le genre, et ayant justement prévu d'en faire une (c'est pour récupérer le contenu de feu un journal sur les nouvelles technos et le relancer avec spip comme base).

   On pourrait peut-être mettre nos ressources en commun.

   Youpi ! C'est la saison des migrations ! ;o)

Greg

>est-ce que quelqu'un a déjà été amené à créer un filtre transformant
>un code HTML en syntaxe SPIP, pour reprendre des contenus existants,
>par exemple ?

Juste un vieux code de chez vieux, datant de spiplib-0.1 :slight_smile:

<?
//avant: $lefichier = file("/chemi/du/fichier.html");
//apres: print proprehtml($lefichier);

function proprehtml($leFichier){
    $leFichier = implode($leFichier,"");
    $leFichier = eregi_replace("<!--[^>]*-->","",$leFichier);
    $leFichier = eregi_replace("</?(HTML|HEAD|BODY)>","",$leFichier);
    $leFichier = eregi_replace("<(BODY|META)[^>]*>","",$leFichier);
    $leFichier = eregi_replace("<title>.*</title>","",$leFichier);
    $leFichier = eregi_replace("<P>","\n\n",$leFichier);
    $leFichier = eregi_replace("\n\n\n+","\n\n",$leFichier);
    $leFichier = ereg_replace("&emdash;","-",$leFichier);
    $leFichier = ereg_replace("&endash;","-",$leFichier);
    $leFichier = ereg_replace("\n-"," -",$leFichier);

$trans = get_html_translation_table (HTML_ENTITIES);
$trans = array_flip ($trans);
$leFichier = strtr($leFichier,$trans);

    $leFichier = eregi_replace("<I>","{",$leFichier);
    $leFichier = eregi_replace("</I>","}",$leFichier);
    $leFichier = eregi_replace("<B>","{{",$leFichier);
    $leFichier = eregi_replace("</B>","}}",$leFichier);
    $leFichier = eregi_replace("&#171;","«",$leFichier);
    $leFichier = eregi_replace("&#187;","»",$leFichier);

    return ($leFichier) ;
}
?>

-- Fil

On pourrait peut-être mettre nos ressources en commun.

Voilà un bout de code que j'ai commencé à faire juste pour voir la
faisabilité.

Le code HTML est celui pondu par un copier/coller fait depuis Word2002
vers une interface de publication web WYSIWYG sous IE6.

Je ne pense pas que ce soit le pire des cas, c'est plutôt propre
XMLement parlant ... :wink:

Si quelqu'un avance sur ce sujet, ça m'intéresse !

-Nicolas

index.php (7.3 KB)

Bonjour ;
J¹ai réussi (en fin) à monter un site en interne. Mais quand je¹essaie
d¹enregistrer un nouveau rédacteur, j¹ai ce message :

Problème de mail?: l'identifiant ne peut pas être envoyé.

Le site se trouve à l¹adresse : http://speciale.no-ip.info/

Quelqu¹un aurait une piste à suivre ?
Merci
Luis