8 Создание своей темы

Обзор

По умолчанию Zabbix поставляется с некоторым количеством предустановленных тем. Вы можете выполнить процедуру шаг за шагом, приведенную здесь для того, чтобы создать свою собственную тему. Не стесняйтесь поделиться результатами своей работы с сообществом Zabbix, если создали что-то действительно приятное.

Шаг 1

Для того чтобы создать свою тему, вам необходимо создать CSS файл и сохранить его как styles/themes/mytheme/main.css. Вы можете скопировать эти файлы из другой темы и создать свою тему на основе этой теме или начать с нуля. Правила в файле main.css будут распространяться на эту тему, которая указана в базовых Zabbix CSS файлах, расположенных в папке styles. Любые специфичные для темы изображения необходимо поместить в папку styles/themes/mytheme/images.

Шаг 2

Добавьте свою тему в список тем, которые возвращаются методом Z::getThemes(). Вы можете это сделать переопределив метод ZBase::getThemes() в классе Z. Переопределись метод можно, добавив следующий код до закрывающей скобки в include/classes/core/Z.php:

  public static function getThemes() {
             return array_merge(parent::getThemes(), [
                 'custom-theme' => _('Custom theme')
             ]);
         }

Обратите внимание, что указанное вами имя в первых кавычках должно совпадать с именем папки, в которой сохранены файлы этой темы.

Для добавления нескольких тем, просто перечислите их после первой темы, например:

  public static function getThemes() {
             return array_merge(parent::getThemes(), [
                 'custom-theme' => _('Custom theme'),
                 'anothertheme' => _('Another theme'),
                 'onemoretheme' => _('One more theme')
             ]);
         }

Обратите внимание, что каждая тема исключая последнюю должна заканчиваться запятой.

Чтобы изменить цвета графиков, необходимо добавить запись в таблицу graph_theme базы данных.

Шаг 3

Активируйте новую тему.

В веб-интерфейсе Zabbix вы можете задать эту тему по умолчанию или изменить свою тему в профиле пользователя.

Наслаждайтесь новым видом веб-интерфейса!