8 Crear el vostre propi tema

Vista general

Per defecte, Zabbix ofereix una sèrie de temes predefinits. Podeu seguir el procediment passa per passa indicada aquí per crear-ne un de vostre.

Passa 1: Creeu el vostre tema

Per crear el vostre propi tema:

  1. Creeu un fitxer CSS des de zero o copieu un tema existent (com ara blue-theme.css, dark-theme.css, o un altre) del directori assets/styles/ i modifiqueu-lo.
  2. Deseu el tema (per exemple, custom-theme.css) al directori assets/styles/.
Passa 2

Afegiu el vostre tema a la llista de temes que retorna el mètode APP::getThemes(). Podeu fer-ho anul·lant el mètode ZBase::getThemes() a la classe APP com segueix:

  1. Obriu l'arxiu include/classes/core/APP.phpi busqueu la classe APP:
class APP extends ZBase {

}
  1. Dins la classe, abans del darrer símbol }, afegiu el següent mètode:
      public static function getThemes() {
          return array_merge(parent::getThemes(), [
              'custom-theme' => _('Custom theme')
          ]);
      }

on:

-custom-theme - l'identificador intern del vostre tema i ha de coincidir amb el nom del vostre fitxer CSS sense l'extensió .css; -Custom theme` - el nom de la pantalla que veureu a la interfície.

Per afegir diversos temes, només cal enumerar-los sota el primer tema, separats amb una coma. Una altra coma després de la darrera entrada és opcional.

Per exemple:

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

Per canviar els colors del gràfic, s'ha d'afegir un registre del tema nou a la taula de base de dades graph_theme.

Exemple d'afegir un registre a una base de dades MySQL/MariaDB:

    mysql -u zabbix -p
    # Enter password:
mysql> USE zabbix;
mysql> INSERT INTO graph_theme (
    graphthemeid,
    theme,
    backgroundcolor,
    graphcolor,
    gridcolor,
    maingridcolor,
    gridbordercolor,
    textcolor,
    highlightcolor,
    leftpercentilecolor,
    rightpercentilecolor,
    nonworktimecolor,
    colorpalette
)
VALUES (
    5,
    'custom-theme',
    'FFFFFF',
    'FFFFFF',
    'CCD5D9',
    'ACBBC2',
    'ACBBC2',
    '1F2C33',
    'CC745E',
    '5ECCAB',
    'CC745E',
    'EBEBEB',
    '329F7E,C2583D,346D91,B26E44,CC6C91,7A6DC2,C4AA56,7C2731,BF75B8,73A350,B04833,633A60,879CCC,7FAD6C,324978,3F5C3D,795C94,D66B58,732230,809C5D,C79DD1'
);
Passa 3

A la interfície Zabbix, podeu definir el tema per defecte o canviar el vostre tema al perfil d'usuari.