Заметка из разряда - "Всякие интересности в OctoberCMS"
В ноябре 2020 г. был замечен интересный pull-request в репозиторий OctoberCMS:
This PR adds support for defining quick actions in the main navigation in the Backend. Quick actions in this case are defined as the single-purpose icon links located to the left of the user menu - the only one currently available in an October CMS install is the link to preview the website.
Другими словами этот PR добавляет "быстрые действия" в основной навигации в панели управления, расположенные слева от ссылки для предварительного просмотра сайта.
Небольшой How-To
Для того, чтобы новая фича заработала - нам нужна новая установка OctoberCMS из композера:
composer create-project october/october myoctober
и обновиться до последней версии через тот же composer:
composer update
Создадим тестовый плагин для эксперимента
Для создания тестового плагина QuickActions выполним в консоли:
php artisan create:plugin sandbox.quickactions
Далее, отредактируем файл Plugin.php, добавим в него следующее:
public function registerQuickActions()
{
return [
'help' => [
'label' => 'Read the documentation ',
'icon' => 'icon-question-circle',
'url' => Backend::url('read-the-docs'),
],
];
}
Voila, теперь в панели управления мы увидим такое новшество:
Пойдем дальше, добавим кастомную svg-иконку. Очень часто в проектах мы используем ресурс https://www.svgrepo.com/ как источник иконок.
Добавим быструю ссылку для связи с разработчиками сайта. Для иконки возьмем первую попавшуюся из этого набора https://www.svgrepo.com/vectors/mail/multicolor/ и добавим ее в наш плагин в папку:
plugins/sandbox/quickactions/assets/svg
Далее отредактируем метод registerQuickActions()
в файле Plugin.php
public function registerQuickActions()
{
return [
'help' => [
'label' => 'Read the documentation',
'icon' => 'icon-question-circle',
'url' => Backend::url('read-the-docs'),
],
'mail' => [
'label' => 'Send email to developers',
'iconSvg' => '/plugins/sandbox/quickactions/assets/svg/mail.svg',
'url' => Backend::url('mail-to-devs'),
],
];
}
Смотрим что получилось:
В своих проектах мы пока не применяли данную возможность, но надеемся, что кому-то это пригодится!
Оригинал статьи в нашем блоге