---
url: https://docs.juniper.bot/message-templates/shared-templates.md
description: Руководство по глобальным шаблонам для продвинутых пользователей
---

[панели управления]: ../guide#configure

# Глобальные шаблоны { #shared-templates }

::: tip Бонусная возможность
Данная функциональность доступна только на сервере с [бонусом за поддержку](https://juniper.bot/donate)!
:::

## Что это и зачем это нужно? { #why }

Глобальные шаблоны — это вспомогательные шаблоны сообщений, позволяющие написать переиспользуемый код, который можно вызывать в других шаблонах сообщений.

Глобальные шаблоны создаются и настраиваются в [панели управления] сервера во вкладке с названием "Команды".

## Пример { #example }

Допустим, у Вас есть одинаковый [макрос](advanced/tags#macro) во многих пользовательских командах. Вы можете вынести этот макрос в глобальный шаблон:

1. Зайдите в настройки глобальных шаблонов в [панели управления] и нажмите кнопку "Добавить шаблон";
2. В открывшемся окне введите название глобального шаблона (запомните его) и его описание, а в поле шаблона вставьте объявление этого макроса;
3. Сохраните шаблон.
4. Во всех пользовательских командах, где используется этот макрос, полностью замените его объявление на [тэг вставки](advanced/tags#include) глобального шаблона:
   ```template
   {% include 'название' %}
   ```
   где название — название глобального шаблона, которое вы указали при его создании.

Таким образом, вынесение макроса в глобальный шаблон позволит вносить в него правки только в одном месте, вместо однообразного редактирования во всех шаблонах сообщений.

## Рекомендации { #recommendations }

Делайте глобальные шаблоны короткими и простыми, выносите в них только нужный код и максимально оптимизируйте его.

Например, не следует делать один "мастер-шаблон" с полной коллекцией из десятков макросов, которые вы используете по разным командам.
Макросы, объявленные в глобальном шаблоне, но неиспользуемые в конкретной команде — всё равно отбирают у этой команды время на компиляцию и выполнение шаблона, увеличивая время реакции на команду.

## Ограничения { #limitations }

::: warning Ограничения
Глобальные шаблоны имеют некоторые ограничения:

1. Максимум 5 вставок глобальных шаблонов за команду;
2. Конкретную вставку можно вызвать только один раз.
   :::
