Новости Joomla

Вышли релизы Joomla 6.1 и Joomla 5.4.5: новые возможности и стабильность

Релиз Joomla 6.1.0

Проект Joomla! объявил о доступности Joomla 6.1 [Nyota] — новой минорной версии шестой серии, а также о выпуске релиза исправлений ошибок Joomla 5.4.5. Релиз 6.1 приносит ряд долгожданных функций, повышающих удобство управления контентом и защиту от спама.

👩‍💻 Компонент "CS Афиши" для Joomla.

👩‍💻 Компонент "CS Афиши" для Joomla.

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

В состав пакета расширений входят:
- Компонент "CS Афиши"
- Модуль "Календарь событий"
- Модуль "Предстоящие события"
- Библиотека "ImgResize"

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

Модуль "Календарь событий" отображает предстоящие и прошедшие мероприятие на календаре, с отображением мероприятий на конкретную дату во всплывающем окне.

Модуль "Предстоящие события" показывает список предстоящий событий по порядку их наступления.

P.S. Расширение платное, но плата символическая, чисто для отработки приема платежей. Ключи без ограничения по времени, купившие сейчас - смогут обновляться без ограничений.

Разработчик - участник нашего сообщества Дмитрий Денисов (@codersite).

Страница расширения
Демо

0 Пользователей и 1 Гость просматривают эту тему.
  • 1 Ответов
  • 3456 Просмотров
*

Physicist

  • Глобальный модератор
  • 984
  • 194 / 0
  • Рябов Денис
Page Speed Optimizer
« : 10.07.2023, 19:42:40 »
Расширение Page Speed Optimizer предназначено для оптимизации скорости работы вебсайтов. Сейчас это важный фактор ранжирования в выдаче, а также возможность существенно улучшить поведенческие факторы (тут могу сослаться на замечательный проект wpostats.com, который регулярно публикует новые успешные истории различных известных компаний). Цель расширения – достичь результата 100/100 в тесте PageSpeed Insight, причем, в том числе для теста мобильных устройств.

ВАЖНО: Для пользователей из России, Украины и Белоруссии можно получить бесплатно полную Pro версию в обмен на последующий отзыв на JED. Для этого напишите мне в личку или на support@mobilejoomla.com адрес вашего сайта, версию Joomla, и пару слов о проблемах производительности, которые хотите решить (от этого будут зависеть приоритеты при выпуске обновлений), а я в ответ вышлю вам купон на 100% скидку.

Теперь несколько слов о возможностях расширения, которые делают его действительно уникальным (возможности, относящиеся к Pro-версии, отмечены символом ★).

1) Кэш страниц

Как известно, в Joomla начиная с версии 1.5 имеется плагин System-Cache для кэширования страниц, но у него есть ряд недостатков: 1) при изменении контента или создании нового пользователи продолжают видеть кэшированную версию вплоть до истечения скора кэширования (поэтому его нельзя задавать очень большим), 2) этот плагин стартует после инициализации ядра Joomla и подключения к БД, что занимает довольно существенное время.

Что касается п.1, то это известная проблема ("В компьютерных науках есть только две сложные вещи: инвалидация кеша и присвоение имен" / Фил Карлтон), которую я когда-то на этом форуме пытался решить в рамках бота SystemCache для Joomla 1.0, где кэш автоматически сбрасывался при сохранении изменений на сайте.

В расширении Page Speed Optimizer используется самый продвинутый на настоящий момент подход – тегированный кэш. В рамках этого подхода с каждой страницей связывается определенный набор «тегов» - идентификаторов используемых на странице объектов, и при изменении одного из них кэш всех связанных страниц автоматически сбрасывается. В текущей версии в качестве «тега» выступает имя компонента, но уже почти завершено тестирование очередного обновления, в котором в качестве тегов выступают id конкретных статей и категорий. Кстати, поэтому убедительная просьба включить сбор и отправку статистики в настройках расширения, чтобы я знал, какие популярные нестандартные расширения нуждаются в аналогичной «тонкой настройке» кэширования.

Кроме того, работа с кэшем происходит до инициализации Joomla, что решает проблему 2 и существенно сокращает время получения страницы пользователем.

2) ★ Параллельная обработка

Так как время генерации страницы является одним из ключевых факторов для PageSpeed, то в идеале мы не должны тратить время на оптимизацию изображений, скриптов и стилей прямо во время генерации страницы. Поэтому в PageSpeed Optimizer можно задать количество фоновых процессов, которые будут заниматься такой оптимизацией, и в результате даже новые неоптимизированные страницы будут обрабатываться достаточно быстро, а к моменту запроса браузера все оптимизированные ресурсы скорее всего уже будут готовы.

Более того, можно использовать единый «пул» процессов для оптимизации сразу нескольких сайтов на сервере, чтобы не допускать 100% нагрузки во время оптимизации и всегда иметь свободное ядро для обработки входящих запросов.

3) Оптимизация изображений

В расширении по максимуму используются все имеющиеся в PHP возможности по оптимизации изображений (включая поддержку форматов WebP и Avif). Например, даже при использовании встроенной в PHP библиотеки GD2 для оптимизации изображений формата JPEG, из полученного файла затем корректно удаляется строка с мета-данными (выглядит как “CREATOR: gd-jpeg v1.0 (using IJG JPEG v90), quality = 80”), и такой перфекционизм там повсюду.

Также можно использовать расширение ★ php_imagick, которое позволяет использовать более оптимальный цветовой сэмплинг 4:2:0 и ряд других оптимизаций. Или воспользоваться специальными программами, такими как JPEGoptim и OptiPNG (если установлены на сервере).

4) Ленивая загрузка изображений

Page Speed Optimizer поддерживает ленивую загрузку как через атрибут loading="lazy", так и при помощи JavaScript. В последнем случае можно использовать внедренную в страницу размытую версию изображения, которая будет выводиться вплоть до загрузки полного изображения (обычно это хорошо работает при медленном интернет-соединении).

Также отмечу, что в отличии от большинства других скриптов для ленивой загрузки изображений, в которых в атрибуте src записывается картинка-заглушка, наш подход является “SEO-friendly”, т.к. он оставляет исходное значения атрибута src для индексации, и меняет только атрибут srcset.

5) Above-the-fold CSS

Для главной страницы можно сгенерировать и использовать Above-the-fold CSS, загружая остальные стили в фоновом режиме, таким образом сводя время до первой отрисовки страницы к минимуму. Above-the-fold CSS – это минимальный набор CSS-стилей, необходимых для отрисовки верхней видимой на экране части страницы. Для генерации этих стилей у на есть собственный сервер, который открывает сайт в более 10 наиболее популярных расширениях экрана (включая смартфоны, планшеты, ноутбуки и стационарные компьютеры, а также с учетом значений breakpoint в наиболее популярных CSS-фреймворках). Собственно, в основном для этой цели в расширении Page Speed Optimizer и нужен APIKey (его можно увидеть в своем аккаунте на нашем сайте mobilejoomla.com).

6) Формат brotli

Если установлено расширение php_brotli, то страницы, скрипты, стили и svg-изображения будут также сжаты и в этом формате, который обеспечивает гораздо большее сжатие, чем стандартный gzip.

7) ★ Загрузка внешних ресурсов

В расширении Page Speed Optimizer есть возможность загрузки внешних ресурсов (скрипты, стили, изображения) для того, чтобы отдавать их со своего сайта (избежав лишних DNS-запросов и воспользовавшись преимуществами HTTP/2). При этом корректно учитываются «времена жизни» в HTTP-заголовках, и данные обновляются в соответствии с ними.

Поддержка

Поддерживается Joomla! 2.5-4.3, PHP 5.6+ (рекомендуется PHP 8.1+ для поддержки формата avif, а поэтому в качестве версии Joomla рекомендуется 4.x, т.к. предыдущие версии официально PHP8.1 не поддерживают).

В зависимости от ваших запросов, в будущем могут быть добавлены поддержка CDN, кэширование в Redis (для этого всего уже есть черновые реализации), и много-много других возможностей.

В общем, пробуйте, пишите о своем опыте, и вместе мы сделаем лучшее в мире расширения для оптимизации производительности.

PS. Данное расширение является ответвлением от расширения Mobile 3.1, поэтому если вы его используете, то почти всё вышеперечисленное у вас уже есть.

С надеждой на любую обратную связь,
Денис (aka Physicist)
*

dron

  • Завсегдатай
  • 1581
  • 16 / 10
Re: Page Speed Optimizer
« Ответ #1 : 11.07.2023, 07:26:57 »
Это очень круто! Спасибо большое. Обязательно потестим.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться