Перейти к основному содержимому

Загрузчик шаблона

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

Действия над шаблонами

В загрузчике можно выполнять определенные действия при удалении, выключении, удалении и установке шаблона:

ThemeLoader.php
public function install()
{
// Я буду вызван только при установке
}

public function disable()
{
// Я буду вызван только при отключении
}

public function activate()
{
// Когда меня включат, я появлюсь
}

public function uninstall()
{
// О нет, меня удалили, надо что-то сделать...
}

Переопределение модулей

Загрузчик имеет возможность переопределять шаблоны модулей. Это позволяет править интерфейсы модулей без прямого изменения их интерфейсов:

ThemeLoader.php
public function register(\Flute\Core\Template\Template $templateService)
{
$this->addCustomPath(mm('Monitoring', "Resources/Views/monitoring/default.blade.php"), tt('modules/monitoring/index'));
}

Первым аргументом выступает путь до интерфейса модуля, а вторым - путь внутри шаблона

Компоненты

В загрузчике предусмотрена возможность расширять BladeOne путем добавления компонентов.

Компоненты - это директивы, которые можно использовать как на примере ниже:

ThemeLoader.php
public function register(\Flute\Core\Template\Template $templateService)
{
$this->addComponentLayout('navigation', 'components/navigation');
}

И в самом шаблоне (вызовет components/navigation):

layout.blade.php
@navigation

Подгрузка переводов

В загрузчике можно добавить переводы для шаблона используя функцию loadTranslations():

ThemeLoader.php
public function register(\Flute\Core\Template\Template $templateService)
{
$this->loadTranslations();
}
к сведению

Все переводы должны быть внутри шаблона в папке i18n/