diff --git a/medias_fonctions.php b/medias_fonctions.php
index 2f9ba73a5c806ad493ab89fc0dc534e6150b7f11..08bc29431c5b166099dbc7d2e491856284e851f1 100644
--- a/medias_fonctions.php
+++ b/medias_fonctions.php
@@ -412,6 +412,29 @@ function medias_trouver_modele_emb($extension, $mime_type, $modele_base = 'file'
 	return $modele_base;
 }
 
+/**
+ * Determiner si un media doit etre mis en autolien dans les modeles document
+ * Par defaut utilisé uniquement sur les media image, mais le filtre peut être surchargé pour étendre son fonctionnement
+ *
+ * @param string $media
+ * @param string $extension
+ * @param int $largeur
+ * @param int $hauteur
+ * @param int|null $id_document
+ * @return bool
+ */
+function media_determine_autolien(string $media, string $extension, int $largeur, int $hauteur, ?int $id_document=0): bool {
+	if ($media !== 'image') {
+		return false;
+	}
+	if (!defined('_IMAGE_TAILLE_MINI_AUTOLIEN')) {
+		define('_IMAGE_TAILLE_AUTOLIEN', 800);
+	}
+	if ($largeur >= _IMAGE_TAILLE_AUTOLIEN or $hauteur >=_IMAGE_TAILLE_AUTOLIEN) {
+		return true;
+	}
+	return false;
+}
 
 /**
  * Liste les classes standards des modèles de documents SPIP.
diff --git a/modeles/image.html b/modeles/image.html
index f79fadc17b06d89b8fc3f6d54b1289ce97111c99..2adc217188bace1406baba6b1c38843719ae1a0f 100644
--- a/modeles/image.html
+++ b/modeles/image.html
@@ -4,7 +4,7 @@
 
 ]
 <BOUCLE_image (DOCUMENTS) {media=image} {id_document=#ENV{id,#ENV{id_document}}} {inclus=image} {mode?} {tout}>
-[(#SET{autolien,#LARGEUR|>={800}|ou{#HAUTEUR|>={800}}|oui})]
+[(#SET{autolien,#MEDIA|media_determine_autolien{#EXTENSION,#LARGEUR,#HAUTEUR,#ID_DOCUMENT}|oui})]
 [(#SET{image,[(#ENV{largeur}|ou{#ENV{hauteur}}|?{
 		[(#FICHIER|image_reduire{#ENV{largeur,10000},#ENV{hauteur,10000}})],
 		[<img src='(#URL_DOCUMENT)'[ width="(#LARGEUR)"][ height="(#HAUTEUR)"]/>]})]})]
diff --git a/modeles/image_emb_svg.html b/modeles/image_emb_svg.html
index 274e6e970e0abf06ebf5a790758cb72e71add799..2999d54aa49e4f31b6fb6b7a51b3d6a8ce005aef 100644
--- a/modeles/image_emb_svg.html
+++ b/modeles/image_emb_svg.html
@@ -4,7 +4,7 @@
 
 ]
 <BOUCLE_image (DOCUMENTS) {media=image} {id_document=#ENV{id,#ENV{id_document}}} {inclus=image} {mode?} {tout} {extension=svg}>
-[(#SET{autolien,#LARGEUR|>={800}|ou{#HAUTEUR|>={800}}|oui})]
+[(#SET{autolien,#MEDIA|media_determine_autolien{#EXTENSION,#LARGEUR,#HAUTEUR,#ID_DOCUMENT}|oui})]
 [(#SET{image,[(#ENV{largeur}|ou{#ENV{hauteur}}|?{
 		[(#FICHIER|image_reduire{#ENV{largeur,10000},#ENV{hauteur,10000}}|extraire_attribut{src})],
 		[(#FICHIER)]})]})]