diff --git a/article-dist.html b/article-dist.html
index 87c71cffd6a88f4bfd15ca76f5760798d73e72b4..af9c7549c18f98232429bcd94deb9da1dd24a1f2 100644
--- a/article-dist.html
+++ b/article-dist.html
@@ -197,6 +197,7 @@
 [<div class="ps">(#PS)</div>]
 [<div class="notes">(#NOTES)</div>]
 
+
 <BOUCLE_documents_joints(DOCUMENTS) {id_article} {mode=document} {doublons} {"<br>"}>
 [(#LOGO_DOCUMENT|#URL_DOCUMENT)][<br>(#TITRE)][ - (#DESCRIPTIF)]
 </BOUCLE_documents_joints>
@@ -270,7 +271,7 @@
 	[(#DATE|affdate)][, <:par_auteur:> <A HREF="mailto:#EMAIL">(#NOM)</A>]
 	</div>
 	<div class="forum-item">
-	#TEXTE
+	[(#TEXTE*|traiter_raccourcis)]
 	[<div class="forum-titre"><a href="(#URL_SITE)" class="spip_out">#NOM_SITE</a></div>]
 	[<div class="forum-repondre-message"><a href="forum.php3?(#PARAMETRES_FORUM)"><:repondre_message:></a></div>]
 	</div>
diff --git a/ecrire/articles.php3 b/ecrire/articles.php3
index bdb008508ecff7fc64365e09459c19bba0cc4dc0..dffa056fabe2f147f15cd77a0b7fd2feb3f9d9e8 100644
--- a/ecrire/articles.php3
+++ b/ecrire/articles.php3
@@ -206,7 +206,7 @@ if ($titre && !$ajout_forum && $flag_editable) {
 	// recoller les champs du extra
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		$add_extra = ", extra = '".addslashes(extra_recup_saisie("article", $id_secteur))."'";
+		$add_extra = ", extra = '".addslashes(extra_recup_saisie("articles", $id_secteur))."'";
 	} else
 		$add_extra = '';
 
@@ -1493,7 +1493,7 @@ else {
 
 	if ($champs_extra AND $extra) {
 		include_ecrire("inc_extra.php3");
-		extra_affichage($extra, "article");
+		extra_affichage($extra, "articles");
 	}
 }
 
diff --git a/ecrire/articles_edit.php3 b/ecrire/articles_edit.php3
index e228947e35706dff0d2338bb9b16dd3f5b754ca6..4eee4828ba73d56df3167a7e1a425e6834a7e263 100644
--- a/ecrire/articles_edit.php3
+++ b/ecrire/articles_edit.php3
@@ -455,7 +455,7 @@ echo "<P><HR><P>";
 
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		extra_saisie($extra, 'article', $id_secteur);
+		extra_saisie($extra, 'articles', $id_secteur);
 	}
 
 	if ($date)
diff --git a/ecrire/auteur_infos.php3 b/ecrire/auteur_infos.php3
index 07254a66c2ad5b493e76f9bc78cb9417ba94fd48..9d6455992813a80ad30ec5399db351be229eae3b 100644
--- a/ecrire/auteur_infos.php3
+++ b/ecrire/auteur_infos.php3
@@ -156,7 +156,7 @@ if ($statut) { // si on poste un nom, c'est qu'on modifie une fiche auteur
 	// recoller les champs du extra
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		$extra = extra_recup_saisie("auteur");
+		$extra = extra_recup_saisie("auteurs");
 		$add_extra = ", extra = '".addslashes($extra)."'";
 	} else
 		$add_extra = '';
@@ -282,7 +282,7 @@ echo "</TEXTAREA>\n";
 
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		extra_saisie($auteur['extra'], 'auteur', $auteur['statut']);
+		extra_saisie($auteur['extra'], 'auteurs', $auteur['statut']);
 	}
 
 fin_cadre_relief();
diff --git a/ecrire/auteurs_edit.php3 b/ecrire/auteurs_edit.php3
index 25fdcd3f9d41d04edd2347a24ff1f499b0417a95..733f1cfefd965a8245412dc9a36970ff7174a3c0 100644
--- a/ecrire/auteurs_edit.php3
+++ b/ecrire/auteurs_edit.php3
@@ -128,7 +128,7 @@ if (strlen($email) > 2 OR strlen($bio) > 0 OR strlen($nom_site_auteur) > 0 OR ($
 
 	if ($champs_extra AND $extra) {
 		include_ecrire("inc_extra.php3");
-		extra_affichage($extra, "auteur");
+		extra_affichage($extra, "auteurs");
 	}
 
 	echo "</FONT>";
diff --git a/ecrire/breves_edit.php3 b/ecrire/breves_edit.php3
index b8486ae88f8b095e086a84a0ccf92943bdb90aea..e661105017b4e98f851bfeaea22dc8bb7359c3cb 100644
--- a/ecrire/breves_edit.php3
+++ b/ecrire/breves_edit.php3
@@ -175,7 +175,7 @@ if ($connect_statut=="0minirezo" OR $statut=="prop" OR $new == "oui") {
 
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		extra_saisie($extra, 'breve', $id_secteur);
+		extra_saisie($extra, 'breves', $id_secteur);
 	}
 
 	if ($connect_statut=="0minirezo" AND acces_rubrique($id_rubrique)) {
diff --git a/ecrire/breves_voir.php3 b/ecrire/breves_voir.php3
index a349db13fd3a2543e02ebe71323b0cf294576d2e..eae0fe06e080ee8afd1189ea5aaf5838eb33c45f 100644
--- a/ecrire/breves_voir.php3
+++ b/ecrire/breves_voir.php3
@@ -83,7 +83,7 @@ if ($titre AND $modifier_breve) {
 	// recoller les champs du extra
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		$add_extra = ", extra = '".addslashes(extra_recup_saisie("breve"))."'";
+		$add_extra = ", extra = '".addslashes(extra_recup_saisie("breves"))."'";
 	} else
 		$add_extra = '';
 
@@ -343,7 +343,7 @@ if ($les_notes) {
 	// afficher les extra
 	if ($champs_extra AND $extra) {
 		include_ecrire("inc_extra.php3");
-		extra_affichage($extra, "breve");
+		extra_affichage($extra, "breves");
 	}
 
 if ($connect_statut=="0minirezo" AND acces_rubrique($id_rubrique) AND ($statut=="prop" OR $statut=="prepa")){
diff --git a/ecrire/inc_extra.php3 b/ecrire/inc_extra.php3
index 1c381f44fe5db812ef940d036bb17a47e654cb9c..0ac1d848a1cddb227660a6bc7e7c8e7b0418a422 100644
--- a/ecrire/inc_extra.php3
+++ b/ecrire/inc_extra.php3
@@ -16,13 +16,13 @@
 //
 
 $GLOBALS['champs_extra'] = Array (
-	'auteur' => Array (
+	'auteurs' => Array (
 			"sexe" => "ligne|brut",
 			"age" => "ligne|propre|&Acirc;ge du capitaine",
 			"biblio" => "bloc|propre|Bibliographie"
 		),
 
-	'article' => Array (
+	'articles' => Array (
 			"isbn" => "ligne|typo|ISBN"
 		)
 	);
@@ -37,14 +37,14 @@ $GLOBALS['champs_extra'] = Array (
 // - pour les mots-cles en fonction du groupe de mots
 
 $GLOBALS['champs_extra_proposes'] = Array (
-	'auteur' => Array (
+	'auteurs' => Array (
 		// tous : par defaut
 		'tous' =>  'age|sexe',
 		// une biblio pour les admin (statut='0minirezo')
 		'0minirezo' => 'age|sexe|biblio'
 		),
 
-	'article' => Array (
+	'articles' => Array (
 		// tous : par defaut
 		'tous' => '',
 		// 1 : id_secteur=1;
@@ -62,7 +62,7 @@ if (defined("_ECRIRE_INC_EXTRA")) return;
 define("_ECRIRE_INC_EXTRA", "1");
 
 // a partir de la liste des champs, generer la liste des input
-function extra_saisie($extra, $type='article', $ensemble='') {
+function extra_saisie($extra, $type, $ensemble='') {
 	$extra = unserialize($extra);
 
 	// quels sont les extras de ce type d'objet
@@ -131,7 +131,7 @@ function extra_saisie($extra, $type='article', $ensemble='') {
 }
 
 // recupere les valeurs postees pour reconstituer l'extra
-function extra_recup_saisie($type='article') {
+function extra_recup_saisie($type) {
 	$champs = $GLOBALS['champs_extra'][$type];
 	if (is_array($champs)) {
 		$extra = Array();
@@ -142,6 +142,20 @@ function extra_recup_saisie($type='article') {
 		return '';
 }
 
+// Retourne la liste des filtres a appliquer pour un champ extra particulier
+function extra_filtres($type, $nom_champ) {
+	$champ = $GLOBALS['champs_extra'][$type][$nom_champ];
+	if (!$champ) return array();;
+	list(, $filtre, ) = explode("|", $champ);
+	if ($filtre && $filtre != 'brut' && function_exists($filtre))
+		return array($filtre);
+	return array();
+}
+
+function extra_champ_valide($type, $nom_champ) {
+	return isset($GLOBALS['champs_extra'][$type][$nom_champ]);
+}
+
 // a partir de la liste des champs, generer l'affichage
 function extra_affichage($extra, $type) {
 	$extra = unserialize ($extra);
diff --git a/ecrire/inc_filtres.php3 b/ecrire/inc_filtres.php3
index a058632e5245d1e375ad076b37473426a51e16a7..945cac9e1496aab5d175502713f45598156ad15d 100644
--- a/ecrire/inc_filtres.php3
+++ b/ecrire/inc_filtres.php3
@@ -72,10 +72,35 @@ function liens_ouvrants ($texte) {
 
 // Corrige les caracteres degoutants utilises par les Windozeries
 function corriger_caracteres($texte) {
-	if (lire_meta('charset') != 'iso-8859-1')
-		return $texte;
-	// 145,146,180 = simple quote ; 147,148 = double quote ; 150,151 = tiret long
-	return strtr($texte, chr(146).chr(180).chr(150).chr(151), "'".'"--');
+	static $trans;
+	if (!$trans) {
+		// 145,146,180 = simple quote ; 147,148 = double quote ; 150,151 = tiret long
+		$this->trans['iso-8859-1'] = array(
+			chr(146) => "'",
+			chr(180) => "'",
+			chr(147) => '"',
+			chr(148) => '"',
+			chr(150) => '-',
+			chr(151) => '-',
+			chr(133) => '...'
+		);
+		$this->trans['utf-8'] = array(
+			chr(194).chr(146) => "'",
+			chr(194).chr(180) => "'",
+			chr(194).chr(147) => '"',
+			chr(194).chr(148) => '"',
+			chr(194).chr(150) => '-',
+			chr(194).chr(151) => '-',
+			chr(194).chr(133) => '...'
+		);
+	}
+	$charset = lire_meta('charset');
+	if (!$trans[$charset]) return $texte;
+	if ($GLOBALS['flag_strtr2']) return strtr($texte, $trans[$charset]);
+	reset($trans[$charset]);
+	while (list($from, $to) = each($trans[$charset])) 
+		$texte = str_replace($from, $to, $texte);
+	return $texte;
 }
 
 // Transformer les sauts de paragraphe en simples passages a la ligne
@@ -414,7 +439,7 @@ function d_apostrophe($texte) {
 
 function aligner($letexte,$justif) {
 	$letexte = eregi_replace("<p([^>]*)", "<p\\1 align='$justif'", trim($letexte));
-    if($letexte<>"" AND !ereg("^[[:space:]]*<p", $letexte)) {
+	if ($letexte AND !ereg("^[[:space:]]*<p", $letexte)) {
 		$letexte = "<p class='spip' align='$justif'>" . $letexte . "</p>";
 	}
 	return $letexte;
@@ -440,9 +465,9 @@ function centrer($letexte) {
 // Recuperation de donnees dans le champ extra
 // Ce filtre n'a de sens qu'avec la balise #EXTRA
 //
-function extra ($letexte,$champ) {
+function extra($letexte, $champ) {
 	$champs = unserialize($letexte);
-	return interdire_scripts($champs[$champ]);
+	return $champs[$champ];
 }
 
 ?>
diff --git a/ecrire/inc_texte.php3 b/ecrire/inc_texte.php3
index b19ffec42121b47df5261d0980ae3226dde66aff..b7a14901addf2cbd13e080e31470ad8246f8bd85 100644
--- a/ecrire/inc_texte.php3
+++ b/ecrire/inc_texte.php3
@@ -390,12 +390,8 @@ function typo($letexte) {
 	else
 		$letexte = typo_en($letexte);
 
+	$letexte = corriger_caracteres($letexte);
 	$letexte = str_replace("'", "&#8217;", $letexte);
-
-	// "pas encore mur!"
-	// $letexte = ereg_replace('"([^" &;]([^"]*[^" &;])?)"', "&#8220;\\1&#8221;", $letexte);
-
-	//$letexte = corriger_caracteres($letexte);
 	$letexte = echappe_retour($letexte, $les_echap, "SOURCETYPO");
 
 	return $letexte;
diff --git a/ecrire/lang/public_fr.php3 b/ecrire/lang/public_fr.php3
index 14ad0473a5d23bb8248f971b93c64289b537d67d..36f02b4016d033f99b4afb2303e9aeac065dc2a2 100644
--- a/ecrire/lang/public_fr.php3
+++ b/ecrire/lang/public_fr.php3
@@ -87,7 +87,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
 
 
 // R
-'repondre_article' => 'Répondre à cet article',
+'repondre_article' => 'R&eacute;pondre &agrave; cet article',
 'repondre_breve' => 'R&eacute;pondre &agrave; cette br&egrave;ve',
 'repondre_message' => 'R&eacute;pondre &agrave; ce message',
 'resultats_recherche' => 'R&eacute;sultats de la recherche',
diff --git a/ecrire/mots_edit.php3 b/ecrire/mots_edit.php3
index 2dee0a50cb7a0776a0b0668344f7f6f93cb2ad34..8d43e388ee15cf0fa07f37f6653db16dd40f5d8d 100644
--- a/ecrire/mots_edit.php3
+++ b/ecrire/mots_edit.php3
@@ -46,7 +46,7 @@ if ($connect_statut == '0minirezo') {
 		// recoller les champs du extra
 		if ($champs_extra) {
 			include_ecrire("inc_extra.php3");
-			$add_extra = ", extra = '".addslashes(extra_recup_saisie("mot"))."'";
+			$add_extra = ", extra = '".addslashes(extra_recup_saisie("mots"))."'";
 		} else
 			$add_extra = '';
 
@@ -269,7 +269,7 @@ if ($connect_statut =="0minirezo"){
 
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		extra_saisie($extra, 'mot', $id_groupe);
+		extra_saisie($extra, 'mots', $id_groupe);
 	}
 
 	echo "<DIV align='right'><INPUT TYPE='submit' NAME='Valider' VALUE='"._T('bouton_valider')."' CLASS='fondo'>";
diff --git a/ecrire/naviguer.php3 b/ecrire/naviguer.php3
index 88ef7200b39c15d30871f665489dff6c2d6c102f..c14c146f40665d8c991bbefc1fd39730ec058ae8 100644
--- a/ecrire/naviguer.php3
+++ b/ecrire/naviguer.php3
@@ -159,7 +159,7 @@ if ($titre) {
 
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		$add_extra = ", extra = '".addslashes(extra_recup_saisie("rubrique"))."'";
+		$add_extra = ", extra = '".addslashes(extra_recup_saisie("rubriques"))."'";
 	} else
 		$add_extra = '';
 
@@ -378,7 +378,7 @@ echo "</table>\n";
 
 	if ($champs_extra AND $extra) {
 		include_ecrire("inc_extra.php3");
-		extra_affichage($extra, "rubrique");
+		extra_affichage($extra, "rubriques");
 	}
 
 
diff --git a/ecrire/rubriques_edit.php3 b/ecrire/rubriques_edit.php3
index e6551508fdd586e27bea3068b804ec5fbe70d3ff..836cfe7a49138ba595ca27effe854d99155e8eee 100644
--- a/ecrire/rubriques_edit.php3
+++ b/ecrire/rubriques_edit.php3
@@ -204,7 +204,7 @@ echo "</TEXTAREA>\n";
 
 	if ($champs_extra) {
 		include_ecrire("inc_extra.php3");
-		extra_saisie($extra, 'rubrique', $id_secteur);
+		extra_saisie($extra, 'rubriques', $id_secteur);
 	}
 
 echo "<P align='right'><INPUT TYPE='submit' NAME='Valider' VALUE='"._T('bouton_valider')."' CLASS='fondo'>";
diff --git a/inc-calcul-squel.php3 b/inc-calcul-squel.php3
index c7506502a1d3784df1fecd3d1a43f2337a91052f..8a9859afd18bf7e3e8d714a3818bee254e970ce0 100644
--- a/inc-calcul-squel.php3
+++ b/inc-calcul-squel.php3
@@ -709,18 +709,17 @@ function parser_champs_etendus($texte) {
 						$champ->fonctions[] = $f;
 					}
 				}
+				if ($fonctions) {
+					$fonctions = explode('|', ereg_replace("^\|", "", $fonctions));
+					reset($fonctions);
+					while (list(, $f) = each($fonctions)) $champ->fonctions[] = $f;
+				}
 				if ($champs_posttraitement[$nom_champ]) {
 					reset($champs_posttraitement[$nom_champ]);
 					while (list(, $f) = each($champs_posttraitement[$nom_champ])) {
 						$champ->fonctions[] = $f;
 					}
 				}
-
-				if ($fonctions) {
-					$fonctions = explode('|', ereg_replace("^\|", "", $fonctions));
-					reset($fonctions);
-					while (list(, $f) = each($fonctions)) $champ->fonctions[] = $f;
-				}
 				$champs_count++;
 				$champ->id_champ = $champs_count;
 				$champs[$champs_count] = $champ;
@@ -1033,8 +1032,7 @@ function calculer_champ($id_champ, $id_boucle, $nom_var)
 	//
 	// Liste des auteurs d'un article
 	//
-
-
+	
 	case 'LESAUTEURS':
 		$milieu = '
 		if ($i = $contexte["id_article"]) {
@@ -1182,24 +1180,24 @@ function calculer_champ($id_champ, $id_boucle, $nom_var)
 		break;
 
 	case 'EXTRA':
-		// cas particulier : on ne peut pas appliquer interdire_scripts directement
-		// sur la balise, sinon on casse le unserialize(). Donc on ne l'applique qu'en
-		// absence de filtres (et aussi dans le filtre extra{"xxx"})
-		if (!$fonctions) {
-			$fonctions[] = 'interdire_scripts';
-		} /* else {
-			// gerer la notation [(#EXTRA{toto})]
-			$filtres = Array();
-			reset ($fonctions);
-			while (list(,$filtre) = each($fonctions)) {
-				if (ereg("^{(.*)\}$", trim($filtre), $regs))
-					$filtres[] = 'extra{"'.$regs[1].'"}';
-				else
-					$filtres[] = $filtre;
-			}
-			$fonctions = $filtres;
-		} */
 		$code = 'trim($pile_boucles[$id_instance]->row[\'extra\'])';
+		if ($fonctions) {
+			// Gerer la notation [(#EXTRA|isbn)]
+			include_ecrire("inc_extra.php3");
+			reset($fonctions);
+			list($key, $champ_extra) = each($fonctions);
+			$type_extra = $boucles[$id_boucle]->type_requete;
+			if (extra_champ_valide($type_extra, $champ_extra)) {
+				unset($fonctions[$key]);
+				$code = "extra($code, '".addslashes($champ_extra)."')";
+			}
+			// Appliquer les filtres definis par le webmestre
+			$filtres = extra_filtres($type_extra, $champ_extra);
+			if ($filtres) {
+				reset($filtres);
+				while (list(, $f) = each($filtres)) $code = "$f($code)";
+			}
+		}
 		break;
 
 	//
@@ -1355,35 +1353,34 @@ function calculer_champ($id_champ, $id_boucle, $nom_var)
 		$milieu = '
 		$spip_lang = $GLOBALS["spip_lang"];
 		$'.$nom_var.' = "<"."?php include_local(\'inc-forum.php3\'); lang_select(\'$spip_lang\'); ";
-		switch ($pile_boucles[$id_instance]->type_requete) {
+		$'.$nom_var.' .= "';
+		switch ($boucles[$id_boucle]->type_requete) {
+		default:
 		case "articles":
-			$'.$nom_var.' .= "echo retour_forum(0, 0, $contexte[id_article], 0, 0); ";
+			$milieu .= 'echo retour_forum(0, 0, $contexte[id_article], 0, 0); ';
 			break;
 
 		case "breves":
-			$'.$nom_var.' .= "echo retour_forum(0, 0, 0, $contexte[id_breve], 0); ";
+			$milieu .= 'echo retour_forum(0, 0, 0, $contexte[id_breve], 0); ';
 			break;
 
 		case "forums":
-			$'.$nom_var.' = "<"."?php include_local(\'inc-forum.php3\');
-				echo retour_forum(0, $contexte[id_forum], 0, 0, 0); ?".">";
+			$milieu .= 'echo retour_forum(0, $contexte[id_forum], 0, 0, 0); ';
 			break;
 
 		case "rubriques":
-			$'.$nom_var.' = "<"."?php include_local(\'inc-forum.php3\');
-				echo retour_forum($contexte[id_rubrique], 0, 0, 0, 0); ?".">";
+			$milieu .= 'echo retour_forum($contexte[id_rubrique], 0, 0, 0, 0); ';
 			break;
 
 		case "syndication":
-			$'.$nom_var.' = "<"."?php include_local(\'inc-forum.php3\');
-				echo retour_forum(0, 0, 0, 0, $contexte[id_syndic]); ?".">";
+			$milieu .= 'echo retour_forum(0, 0, 0, 0, $contexte[id_syndic]); ';
 			break;
 
 		default:
-			$'.$nom_var.' .= "echo retour_forum(\'$contexte[id_rubrique]\', \'$contexte[id_forum]\', \'$contexte[id_article]\', \'$contexte[id_breve]\', \'$contexte[id_syndic]\'); ";
+			$milieu .= 'echo retour_forum(\'$contexte[id_rubrique]\', \'$contexte[id_forum]\', \'$contexte[id_article]\', \'$contexte[id_breve]\', \'$contexte[id_syndic]\'); ';
 			break;
 		}
-		$'.$nom_var.' .= "lang_dselect(); ?".">";
+		$milieu .= '"; $'.$nom_var.' .= "lang_dselect(); ?".">";
 		';
 		break;
 
diff --git a/inc-calcul.php3 b/inc-calcul.php3
index 501eb67c8010c8bbceb863003fcc5af2ef61e6f6..c819582a9c157d1984893aa845f6ed09e7e30596 100644
--- a/inc-calcul.php3
+++ b/inc-calcul.php3
@@ -335,9 +335,10 @@ function executer_squelette($squelette, $contexte) {
 		$use_cache = false;
 		if (file_exists($squelette_cache)) {
 			$t = filemtime($squelette_cache);
-			if ((filemtime("$squelette.html") < $t)
-			AND (filemtime("inc-calcul-squel.php3") < $t)
-			AND (!file_exists("mes_fonctions.php3") OR (filemtime("mes_fonctions.php3") < $t))) {
+			if (filemtime("$squelette.html") < $t
+			AND filemtime("inc-calcul-squel.php3") < $t
+			AND (!file_exists("mes_fonctions.php3") OR filemtime("mes_fonctions.php3") < $t)
+			AND (!file_exists("ecrire/mes_options.php3") OR filemtime("ecrire/mes_options.php3") < $t)) {
 				$use_cache = true;
 			}
 		}
diff --git a/inc-champ-squel.php3 b/inc-champ-squel.php3
index 4e2297f479960419542ce650d6cc433b0478adeb..4c21dcfd0c4987b9ac2e0752069912a109d4a95d 100755
--- a/inc-champ-squel.php3
+++ b/inc-champ-squel.php3
@@ -118,6 +118,11 @@ function init_champs_squel() {
 		$champs_pretraitement[$val][] = 'trim';
 		$champs_posttraitement[$val][] = 'interdire_scripts';
 	}
+	$c = array('EXTRA');
+	reset($c);
+	while (list(, $val) = each($c)) {
+		$champs_posttraitement[$val][] = 'interdire_scripts';
+	}
 
 	// Textes courts : ajouter le traitement typographique
 	$c = array('NOM_SITE_SPIP', 'SURTITRE', 'TITRE', 'SOUSTITRE', 'NOM_SITE', 'LIEN_TITRE', 'NOM');