Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

[3.2][3.3] Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Все расширения, созданные нашим сообществом для phpBB, как находящиеся в разработке, так и прошедшие валидацию на официальном сайте phpbb.com, будут анонсированы тут. Вся техническая поддержка по этим расширениям оказывается в этом форуме.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3336
Стаж: 15 лет 1 месяц
Благодарил (а): 25 раз
Поблагодарили: 590 раз

[3.2][3.3] Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение Nekstati »

Название расширения: Lazy Loading Images
Автор: Nekstati
Описание расширения: Отложенная (т.н. ленивая) загрузка изображений: вложений, аватар, а также фотографий, вставленных с помощью ББкода. Это позволяет ускорить загрузку страниц и снизить расход трафика, т.к. изображения, которые находятся в нижней части страницы, будут загружаться только если пользователь прокрутит страницу до них. Расширение, в отличие от других подобных, не использует JavaScript и соответственно не имеет проблем совместимости со всевозможными лайтбоксами, спойлерами, а также с AJAX-отправкой сообщений через QuickReply Reloaded. Используется HTML-атрибут loading="lazy". Подробно о том, как это работает.
Внимание: после установки необходимо дополнительно очистить кэш, и лучше физически (опустошить папку /cache/production), иначе атрибут применяется не ко всем изображениям (я ещё не разобралась, почему так).
Язык: любой
Версия: 1.0.0
Версия phpBB: 3.2, 3.3
GitHub: https://github.com/Nekstati/phpBB-LazyLoad
Скачать: https://github.com/Nekstati/phpBB-LazyL ... s/main.zip
 
Как проконтролировать работу расширения 
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
1smerch1
phpBB 2.0.4
Сообщения: 435
Стаж: 6 лет 5 месяцев
Откуда: Россия
Благодарил (а): 183 раза
Поблагодарили: 15 раз

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение 1smerch1 »

Nekstati, а старый блог дорабатываете или новый вообще делаете? Если не секрет?
Спорт - сила
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3336
Стаж: 15 лет 1 месяц
Благодарил (а): 25 раз
Поблагодарили: 590 раз

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение Nekstati »

1smerch1, это порт старого User Blog MOD
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5283
Стаж: 19 лет 3 месяца
Откуда: Питер
Благодарил (а): 186 раз
Поблагодарили: 793 раза

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение Siava »

Nekstati, похоже не совсем совместимо при использовании в связке с BB3Spoiler и Extension Highslide.

Как отображается картинка, вставленная через IMG при выключенном Lazy Load:

Код: Выделить всё

<var title="https://pic.siava.ru/images/2016/02/22/DSC_0417.jpg" class="postImg" alt="Изображение">
   <img src="https://pic.siava.ru/images/2016/02/22/DSC_0417.jpg" class="postImg" alt="" style="cursor: pointer;" width="915" height="606">
</var>
При включенном:

Код: Выделить всё

<a class="highslide" href="https://pic.siava.ru/images/2016/02/22/DSC_0417.jpg" onclick="return hs.expand(this)">
   <img loading="lazy" src="https://pic.siava.ru/images/2016/02/22/DSC_0417.jpg" class="postimage" alt="Изображение" style="width: 422px; height: 280.034px;">
</a>
При включении почему-то уменьшается максимальная ширина до 422 (где-то средствами javascript). Пока не могу найти где это происходит.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3336
Стаж: 15 лет 1 месяц
Благодарил (а): 25 раз
Поблагодарили: 590 раз

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение Nekstati »

Siava писал(а): 17.04.2022 16:21 Extension Highslide
Даже копать это не буду (скрипт из 2011 года!), заменяйте на Татьянин ImgSliders. Если и там проблема, буду копать.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12425
Стаж: 12 лет 8 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2477 раз

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение Татьяна5 »

Siava писал(а): 17.04.2022 16:21 Extension Highslide
Этот и ещё несколько экстов расставляют классы по факту загрузки изображения. Тут же изображения загружаются не сразу

Отправлено спустя 2 минуты 35 секунд:
Nekstati писал(а): 17.04.2022 16:44ImgSliders
Алгоритмически то же самое по этой части
Аватара пользователя
hd321kbps
phpBB 2.0.3
Сообщения: 353
Стаж: 12 лет
Откуда: Россия, Крым, Армянск
Благодарил (а): 182 раза
Поблагодарили: 349 раз

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение hd321kbps »

В браузерах на базе Chromium. Кто-то проверял? У меня только в Firefox работает.
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3336
Стаж: 15 лет 1 месяц
Благодарил (а): 25 раз
Поблагодарили: 590 раз

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение Nekstati »

hd321kbps, в первом посте есть исчерпывающее видео.

Хром и его клоны отличаются от Firefox лишь тем, что они раньше начинают упреждающую загрузку изображений, например если Firefox сразу грузит то, что ниже нижней границы экрана на 1000 пикселей, то Хром - на 2000-3000 (цифры приблизительные). То есть в Хроме будет эффект, если на странице как минимум штук 20 миниатюр или штук 10 полноразмерных фоток.

 
Снимок экрана 2022-04-28 122048.png
Снимок экрана 2022-04-28 122319.png

"Ленивую загрузку" такого широко распространённого типа, когда фотки начинают загружаться лишь при попадании их в зону видимости и процесс загрузки становится заметен для пользователя, считаю злом. :twisted: Если вам надо такое - ищите другие расширения, они есть, минимум два.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
romeo_piter
phpBB 2.0.21
Сообщения: 1316
Стаж: 15 лет
Благодарил (а): 159 раз
Поблагодарили: 21 раз

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение romeo_piter »

Всем привет.
После установки расширения форум выпал в белый экран. Каюсь, совместимость не посмотрел, у меня 3.1.
Подскажите, пожалуйста, как откатиться?
Расширение успешно установилось, далее вот это:

Код: Выделить всё

Fatal error: Uncaught Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: The service "nekstati.lazyload.subscriber" has a dependency on a non-existent service "language". in /var/www/***/data/www/***.ru/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php:58 Stack trace: #0 /var/www/***/data/www/***.ru/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php(42): Symfony\Component\DependencyInjection\Compiler\CheckExceptionOnInvalidReferenceBehaviorPass->processReferences(Array) #1 /var/www/***/data/www/***.ru/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php(36): Symfony\Component\DependencyInjection\Compiler\CheckExceptionOnInvalidReferenceBehaviorPass->processDefinition(Object(Symfony\Component\DependencyInjection\Definitio in /var/www/***/data/www/***.ru/vendor/symfony/dependency-injection/Symfony/Component/DependencyInjection/Compiler/CheckExceptionOnInvalidReferenceBehaviorPass.php on line 58
И всё ((

Отправлено спустя 7 минут 13 секунд:
Папку с расширением переименовал, жизнеспособность форуму вернул.
Как теперь его корректно удалить? Или, возможно, заставить работать на 3.1? )
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16367
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1744 раза

Re: Lazy Loading Images — Отложенная (ленивая) загрузка изображений

Сообщение rxu »

romeo_piter писал(а): 22.07.2023 8:50 как откатиться
В условном "phpMyAdmin" открываете БД форума, в таблице phpbb_ext (префикс ваш) находите строку nekstati/lazyload и меняете в ней значение ext_active на 0. Затем через ftp или через панель управления удаляете содержимое папки cache (кроме .htaccess и index.htm).
Затем сможете через админраздел удалить данные расширения и удалить его с сервера.
Изображение

Вернуться в «Анонсы и поддержка расширений для phpBB»