Enable lazy loading of media thumbnails
authorAlexander Ebert <ebert@woltlab.com>
Sun, 16 Jan 2022 14:18:03 +0000 (15:18 +0100)
committerAlexander Ebert <ebert@woltlab.com>
Sun, 16 Jan 2022 14:18:03 +0000 (15:18 +0100)
wcfsetup/install/files/lib/data/media/ViewableMedia.class.php

index 40bb353fd17fb9866415086b1cb6dbae8092abad..3b12914abc27294bac8e0ebd0f91841b66d39cca 100644 (file)
@@ -209,7 +209,14 @@ class ViewableMedia extends DatabaseObjectDecorator
             throw new \InvalidArgumentException("Unknown thumbnail size '" . $size . "'");
         }
 
-        return '<img src="' . StringUtil::encodeHTML($this->getThumbnailLink($size)) . '" alt="' . StringUtil::encodeHTML($this->altText) . '" ' . ($this->title ? 'title="' . StringUtil::encodeHTML($this->title) . '" ' : '') . 'style="width: ' . $this->getThumbnailWidth($size) . 'px; height: ' . $this->getThumbnailHeight($size) . 'px;">';
+        return \sprintf(
+            '<img src="%s" alt="%s" width="%d" height="%d" loading="lazy" %s>',
+            StringUtil::encodeHTML($this->getThumbnailLink($size)),
+            StringUtil::encodeHTML($this->altText),
+            $this->getThumbnailWidth($size),
+            $this->getThumbnailHeight($size),
+            ($this->title ? 'title="' . StringUtil::encodeHTML($this->title) . '" ' : '')
+        );
     }
 
     /**