EasyFavicon - фавиконки из RealFaviconGenerator не выходя из админки

EasyFavicon

Приветствую всех форумчан! После двух бесплатных компонентов — modSizeControl и EasySettings — пришло время первого платного. Встречайте компонент, который избавляет от самой скучной рутины при запуске сайта — установки фавиконки.

Список профилей EasyFavicon

Давайте честно, как это обычно происходит: открываем RealFaviconGenerator, загружаем логотип, настраиваем, скачиваем архив, распаковываем, заливаем по FTP, копируем теги в шаблон, а потом ещё правим site.webmanifest, потому что там MyWebSite вместо названия сайта. А через полгода заказчик просит новогоднюю фавиконку, и всё по новой. А после Нового года — обратно.

EasyFavicon делает всё это из админки:

  1. Выбираете картинку в медиа-хранилище MODX.
  2. Настраиваете фавиконку в родном редакторе RealFaviconGenerator.
  3. Возвращаетесь в MODX, а там файлы уже лежат в каталоге сайта, манифест заполнен, а разметка стоит в <head> каждой страницы.
Никаких архивов, FTP и копирования тегов.

Возможности


  • Сборка в редакторе RealFaviconGenerator. Никакого самописного конструктора: вы работаете в редакторе сервиса со всеми его настройками, а компонент забирает результат.
  • Профили. Несколько наборов на одном сайте, один из них активный. Архив каждой сборки сохраняется, поэтому переключение возвращает на сайт и разметку, и файлы. Основная, новогодняя, к распродаже — меняются одним кликом.
  • Контексты. У языковой версии или поддомена может быть своя фавиконка: отмечаете у профиля контексты, и в них выводится он, а в остальных — общий. Файлы у RealFaviconGenerator называются одинаково, поэтому компонент следит, чтобы профили разных контекстов не делили один каталог и не затирали друг другу иконки.
  • Автовставка. Плагин сам добавляет разметку перед </head>, шаблоны трогать не нужно. Если хочется самому решать, где выводить — есть сниппет.
  • Манифест. name, short_name, start_url, id и lang в site.webmanifest заполняются данными сайта. То, что вы вписали в редакторе сервиса, не перезаписывается.
  • Кеш браузера. К ссылкам добавляется метка сборки, так что после смены профиля никто не будет разглядывать старую иконку.
  • Просмотр результата: превью в браузерах и на мобильных, разметка и список файлов.
Результат сборки

Быстрый старт


Для работы нужен API-ключ RealFaviconGenerator. Он бесплатный, получить его можно на realfavicongenerator.net/api и вписать в системную настройку easyfavicon.api_key. Кнопка «Системные настройки» на странице компонента откроет нужный раздел сразу с фильтром. И да, EasyFavicon — независимый компонент: с RealFaviconGenerator я никак не связан, просто пользуюсь их замечательным сервисом, как и многие из вас.

Дальше Пакеты → EasyFavicon → Новый профиль. Мастер из двух шагов: картинка, затем название и каталог (по умолчанию /favicon/).

Мастер создания профиля

Нажимаете «Создать и собрать», настраиваете иконки в редакторе, жмёте Generate — и браузер возвращает вас в менеджер уже с установленной фавиконкой. Всё. В шаблон ничего добавлять не нужно.

А если хочу сам выводить разметку?


Можно. Выключаете настройку easyfavicon.auto_inject и вызываете сниппет в <head>:

[[EasyFavicon]]
или на fenom

{'EasyFavicon' | snippet : ['profile' => 'Новогодняя']}
Без параметра profile выводится активный профиль контекста страницы, пути учитывают base_url, так что сайт в подкаталоге тоже не проблема.

Интерфейс


Как и в EasySettings, страница компонента выглядит как родная часть менеджера и в MODX 3, и в MODX 2: те же кнопки, окна, уведомления и подтверждения. В списке есть поиск, сортировка по столбцам и меню действий по правому клику, как в таблицах MODX.

Меню строки по правому клику

EasyFavicon в MODX 2

Переводы: русский и английский.

Про безопасность


Компонент распаковывает архив в открытый каталог сайта, поэтому к этому отнёсся серьёзно. Вернуться из редактора можно только в ту сессию менеджера, где сборку начали, скачивание идёт только с realfavicongenerator.net, а из архива на сайт попадают только файлы набора: png, ico, svg, webmanifest и компания. Страница и все процессоры требуют право settings.

Требования


  • MODX Revolution 2.4+ или 3.x.
  • PHP 7.4+ с расширениями zip, json и curl (или allow_url_fopen).
На этом думаю пока что достаточно, подробнее про профили, манифест и настройки — на сайте с документацией.

В следующей, заключительной статье серии — про то, на что посетители жмут «Принять», не читая.

Спасибо всем за внимание и мира над головой.

Баха Волков
Баха Волков
2 часа назад
modx.pro
17

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0