Всплывающие подсказки¶
Можно добавить к полям форм всплывающую подсказку с пояснением. Всплывающие подсказки работают только в панели администратора.
Пример:
http://example.com/admin.php?dispatch=products.update&product_id=817
Поле List price.
Добавление подсказок к обычным полям формы¶
Подсказки автоматически добавляются пост-контроллером, если найдена языковая переменная, соответствующая названию поля.
Правила разбора:
При парсинге в тексте темплейта ищутся конструкции вида:
<label ...>...{$lang.LANGVAR_NAME}...</label>
Пример:
<label for="product_product_code">{$lang.product_code}:</label>
<label for="product_list_price">{$lang.list_price} ({$currencies.$primary_currency.symbol}) :</label>
Когда такая конструкция найдена, для переменной LANGVAR_NAME
ищется языковая переменная с подсказкой.
Переменные могут быть двух типов:
- учитывающие только название переменной;
- учитывающие название переменной и шаблон, в котором она расположена.
Подсказки, учитывающие только название переменной¶
Эти подсказки добавляются только с учетом LANGVAR_NAME
. Они должны выглядеть как ttc_LANGVAR_NAME
. Если такая переменная задана, то подсказка будет показываться во всех формах, где есть LANGVAR_NAME
.
Подсказки, учитывающие название переменной и шаблон¶
Переменные для таких подсказок выглядят как: tt_TEMPLATE_NAME_LANG_VAR_NAME
. В результате подсказки будут выводится только в заданном темплейте. Это позволяет избежать вывода одинаковых подсказок для одинаковых названий полей на разных страницах.
TEMPLATE_NAME
- включает полный путь к темплейту + название темплейта, без расширения tpl. Названия папок и названия темплейта, связываются через ‘_’.
Например нужно задать подсказку для поля List price, которое располложено на странице редактирования продукта:
http://example.com/admin.php?dispatch=products.update&product_id=817
Но подсказка не должна отображаться еще где-то, кроме этой страницы.
Заголовок List price задается переменной list_price
. Сам заголовок расположен в темплейте views/products/update.tpl. Таким образом, получаем языковую переменную:
tt_views_products_update_list_price = tt_ + TEMPLATE_NAME + _ + LANGVAR_NAME = tt_ + views_products_update + _ + list_price
Отображение языковых пременных для подсказок¶
Чтобы при добавлении подсказок к полям формы не приходилось постоянно искать названия языковых переменных по темплейтам и вычислять названия подсказок с учетом темплейта, существует возможность включить отображение всех подсказок для языковых переменных. Для его включения к URL выбранной страницы нужно добавить параметры stt
- для отображения подсказок и сс
- для очистки кэша.
Например, если мы хотим включить вывод всех подсказок на странице:
http://example.com/admin.php?dispatch=products.update&product_id=817
Нужно открыть URL:
http://example.com/admin.php?dispatch=products.update&product_id=817&stt&cc
Тогда ко всем полям формы добавятся всплывающие подсказки с двумя языковыми переменными. Если значение переменной задано, то оно также будет указано в подсказке.
Для поля List price текст подсказки будет выглядеть так:
ttc_list_price: tt_views_products_update_list_price: Manufacturer suggested retail price.
Чтобы отключить режим вывода подсказок, нужно очистить кэш на странице:
http://example.com/admin.php?dispatch=products.update&product_id=817&cc
Добавление подсказок к настройкам модулей¶
Подсказки к настройкам модулей задаются в файле addon.xml
.
Для добавления подсказки к полю, нужно указать ее значение в теге <tooltip> внутри тега настройки.
Перевод подсказки задается внутри тега <tt_translations> аналогично переводу названия опции.
Пример, добавление подсказки Hello для настройки Allow login to the admin area from specified IPs only модуля Administration panel settings:
<item id="admin_reverse_ip_access">
<name>Allow login to the admin area from specified IPs only</name>
<type>checkbox</type>
<default_value></default_value>
<translations>
<item lang="es">Permitir el acceso al área de administración sólo de las IPS especificadas</item>
</translations>
<tooltip>Hello</tooltip>
<tt_translations>
<item lang="es">Hola</item>
</tt_translations>
</item>