diff --git a/dist/sommaire.html b/dist/sommaire.html
index 7c044e95787b246aea43d9652604818b28fca2b9..9e06b88bab25808c07d65a3476d512f84c3bec31 100644
--- a/dist/sommaire.html
+++ b/dist/sommaire.html
@@ -130,7 +130,7 @@
 		<ul>
 	<BOUCLE_syndic(SYNDIC_ARTICLES) {par date} {inverse} {0,8}>
 		<li class="menu-item">
-		<a href="#URL_ARTICLE">[(#TITRE*)]</a>
+		<a href="#URL_ARTICLE">#TITRE</a>
 		</li>
 	</BOUCLE_syndic>
 		</ul>
diff --git a/inc-compilo-index.php3 b/inc-compilo-index.php3
index 42987c1ead940ece8e6ee8628bb6deb1dd04578a..c171e5efc7956fe3d54685fb61a8de4b90b752dc 100644
--- a/inc-compilo-index.php3
+++ b/inc-compilo-index.php3
@@ -279,7 +279,7 @@ function champs_traitements ($p) {
 		if (!$ps)
 			$ps = $table_des_traitements[$p->nom_champ][0];
 	}
-		 
+
 	if (!$ps) return $p->code;
 
 	// Si une boucle sous-jacente (?) traite les documents, on insere ici
@@ -296,6 +296,18 @@ function champs_traitements ($p) {
 	if ($p->boucles[$p->id_boucle]->sql_serveur)
 		$p->code = 'supprime_img(' . $p->code . ')';
 
+
+	// Passer |safehtml sur les boucles "sensibles"
+	switch ($p->type_requete) {
+		case 'forums':
+		case 'signatures':
+		case 'syndic_articles':
+			$ps = str_replace('%s', 'safehtml(%s)', $ps);
+			break;
+		default:
+			break;
+	}
+
 	// Remplacer enfin le placeholder %s par le vrai code de la balise
 	return str_replace('%s', $p->code, $ps);
 }
@@ -321,22 +333,8 @@ function applique_filtres($p) {
 
 	// Securite
 	if ($p->interdire_scripts
-	AND $p->etoile != '**') {
-
-		switch ($p->type_requete) {
-			// Passer |safehtml sur les boucles "sensibles"
-			case 'forums':
-			case 'signatures':
-			case 'syndic_articles':
-				$code = "safehtml($code)";
-				break;
-
-			// et |interdire_scripts sur les autres
-			default:
-				$code = "interdire_scripts($code)";
-				break;
-		}
-	}
+	AND $p->etoile != '**')
+		$code = "interdire_scripts($code)";
 
 	return $code;
 }