diff --git a/action/desordonner_liens_documents.php b/action/desordonner_liens_documents.php
index 86b619dbcbbcbcd422b2ed933d4436abfa8413bc..d3e04e33953af2f50446bf93726d3d09685a62bf 100644
--- a/action/desordonner_liens_documents.php
+++ b/action/desordonner_liens_documents.php
@@ -72,7 +72,13 @@ function desordonner_liens_documents($document, $objet, $id_objet) {
 	} else {
 		[$image, $mode] = explode('/', $document);
 		$image = ($image == 'I');
-		$typdoc = sql_in('docs.extension', ['gif', 'jpg', 'png'], $image ? '' : 'NOT');
+		include_spip('inc/filtres_images_lib_mini');
+		if (function_exists('_image_extensions_logos')) {
+			$extensions = _image_extensions_logos();
+		} else {
+			$extensions = $GLOBALS['formats_logos'];
+		}
+		$typdoc = sql_in('docs.extension', $extensions, $image ? '' : 'NOT');
 
 		$obj = 'id_objet=' . intval($id_objet) . ' AND objet=' . sql_quote($objet);
 
diff --git a/formulaires/editer_document.php b/formulaires/editer_document.php
index 3dda66365d4401c2145784ddd31e9292e3d8592d..1a5fc005acf3d404e645d5054cb00b896f1d8036 100644
--- a/formulaires/editer_document.php
+++ b/formulaires/editer_document.php
@@ -65,7 +65,13 @@ function formulaires_editer_document_charger_dist(
 	);
 	$valeurs['type_document'] = $row['type_document'];
 	$valeurs['_inclus'] = $row['inclus'];
-	if (in_array($valeurs['extension'], ['jpg', 'gif', 'png', 'svg'])) {
+	include_spip('inc/filtres_images_lib_mini');
+	if (function_exists('_image_extensions_logos')) {
+		$extensions = _image_extensions_logos();
+	} else {
+		$extensions = $GLOBALS['formats_logos'];
+	}
+	if (in_array($valeurs['extension'], $extensions)) {
 		$valeurs['apercu'] = get_spip_doc($valeurs['fichier']);
 	}
 
diff --git a/medias_autoriser.php b/medias_autoriser.php
index 2d3c2e15acd08576a4f8f5f977ba80f27ed0a093..df908fa3e9f7a8807e826695cb42bf9a528a3e27 100644
--- a/medias_autoriser.php
+++ b/medias_autoriser.php
@@ -79,9 +79,15 @@ function autoriser_document_tailler_dist($faire, $type, $id, $qui, $options) {
 	}
 
 	// (on ne le propose pas pour les images qu'on sait
-	// lire : gif jpg png), sauf bug, ou document distant
+	// lire : gif jpg png webp svg), sauf bug, ou document distant
+	include_spip('inc/filtres_images_lib_mini');
+	if (function_exists('_image_extensions_logos')) {
+		$extensions = _image_extensions_logos();
+	} else {
+		$extensions = $GLOBALS['formats_logos'];
+	}
 	if (
-		in_array($document['extension'], ['gif', 'jpg', 'png'])
+		in_array($document['extension'], $extensions)
 		and $document['hauteur']
 		and $document['largeur']
 		and $document['distant'] !== 'oui'