Шаблоны
Все шаблоны расположены по пути engine/inc/maharder/admin/templates
. Для оформления используется шаблонизатор Twig с некоторыми дополнениями.
Структура
Основное
base.html
Основной файл, который отвечает за всё подключение всех стилей и скриптов.
Блоки:
Название | Описание |
---|---|
title | Блок заголовка |
content | Блок основного содержимого |
scripts | Блок содержимого дополнительных скриптов |
breadcrumb.html
Автоматическая генерация хлебных крошек
footer.html
Вывод подвала, а так-же генерация ссылок
menu.html
Вывод верхнего меню
sidebar.html
Вывод бокового меню для маленьких экранов
Подключение шаблонов
Все подключения находятся в папке engine/inc/maharder/admin/templates/templateIncludes
.
- Для общего блага и простоты использование рекомендуется использовать макросы
- Все элементы выводятся через шаблон
engine/inc/maharder/admin/templates/templateIncludes/segRow.html
boxes.html
Важный объект для создания табов.
Пример использования:
Параметры:
Twig | |
---|---|
Важным параметром является свойство boxes. Он перенимает объект в виде массива ссылок. Каждый элемент ссылки содержит четыре главных атрибута.
- id - Универсальный индикатор, который будет так-же установлен у сегмента или блока. У первого блока обязательно должен быть класс .active.
- id.link - Если указывается как часть табов, то нужно указывать #. Если же нужна ссылка в прямом смысле этого слова, то указывайте ссылку
- id.name - Название таба
- id.icon - Название класса иконки
Сегменты выглядят примерно так:
HTML | |
---|---|
segRow.html
Рекомендуется использовать лишь тогда, когда нет альтернативы или возможности вывести доп. информацию
Пример использования:
Параметры:
Twig | |
---|---|
Рекомендуются именно эти параметры для вывода дополнительной информации в сегмент отображения данных.
Параметр | Описание |
---|---|
type | Тип строки, для простого текста достаточно указать html |
id | Уникальное значение строки |
name | Название строки |
descr | Описание строки |
html | Произвольная информация |
Макросы
Функционал, который помогает в оформлении шаблонов, особенно с рекурсивными значениями.
- Намерено для них было использование расширение twig, чтобы отличить от вставок
- Рекомендуется использовать именно макросы, нежели вставки шаблонов из
templateIncludes
checkbox.twig
Выводит переключатель
Метод подключения:
Twig | |
---|---|
Использование:
Twig | |
---|---|
Параметры:
Twig | |
---|---|
Параметр | Описание |
---|---|
id | Уникальное значение элемента, которое будет использоваться в обозначении самого плагина. Указывать на латинице |
name | Русское название кнопки |
descr | Описание кнопки |
opts | Объект с настройками плагина |
input.twig
Выводит форму простого заполнения текста
Содержит:
- input - Простой и обычный текстовой ввод
- tags - Текстовой ввод с поддержкой тегов
- number - Численный ввод
- hidden - Скрытое значение
- file - Тип загрузки файла
Метод подключения:
Twig | |
---|---|
Использование:
На примере input
Twig | |
---|---|
Параметры:
- input - Простой и обычный текстовой ввод
- tags - Текстовой ввод с поддержкой тегов
- number - Численный ввод
- hidden - Скрытое значение
Twig | |
---|---|
Параметр | Описание |
---|---|
id | Уникальное значение элемента, которое будет использоваться в обозначении самого плагина. Указывать на латинице |
name | Русское название кнопки |
descr | Описание кнопки |
opts | Объект с настройками плагина |
Twig | |
---|---|
Параметр | Описание |
---|---|
id | Уникальное значение элемента, которое будет использоваться в обозначении самого плагина. Указывать на латинице |
name | Русское название кнопки |
descr | Описание кнопки |
opts | Объект с настройками плагина |
extra | Объект с дополнительными параметрами |
menu.twig
Содержит макрос для генерации меню
Метод подключения:
Twig | |
---|---|
Использование:
Twig | |
---|---|
Параметры:
Twig | |
---|---|
Параметр | Описание |
---|---|
items | Массив с ссылками |
_site | Указывается текущий объект / текущая страница |
_first | Указывается первый ли ряд меню или нет. Принимает значения: yes или no. По умолчанию: yes |
_child | Указывается дочерние эелемнты или нет. Принимает значения: yes или no. По умолчанию: no |
_fclass | Перечень классов для первого ряда |
pagination.twig
Содержит макрос для генерации пагинации
Метод подключения:
Twig | |
---|---|
Использование:
Twig | |
---|---|
Параметры:
Twig | |
---|---|
Параметр | Описание |
---|---|
total | Всего новостей / объектов |
current | Текущая страница |
pages_name | Название параметра страницы в ссылке страницы, по умолчанию: page |
first_last_page | Указывается сколько страниц показывать в начале и конце пагинации, если страниц много. По умолчанию: 2 |
active_pages | Указывается активный промежуток страниц и сколько страниц в нём должно быть отображено, если страниц много. По умолчанию: 3 |
search.twig
Содержит макрос для генерации поиска и фильтрации данных
ВНИМАНИЕ!
НАХОДИТСЯ В РАЗРАБОТКЕ!
Метод подключения:
Twig | |
---|---|
Использование:
Twig | |
---|---|
Параметры:
Twig | |
---|---|
Параметр | Описание |
---|---|
module | Главный модуль, поиск будет происходить через ajax контроллер DLE и файл maharder.php |
file | Файл, который будет отвечать за запросы |
_type | Тип меню, название класса |
_rmenu | Дополнительные ссылки на правой стороне меню |
_lmenu | Дополнительные ссылки на левой стороне меню |
select.twig
Содержит макрос для выпадающего меню
Метод подключения:
Twig | |
---|---|
Использование:
Twig | |
---|---|
Параметры:
Twig | |
---|---|
Параметр | Описание |
---|---|
id | Уникальное значение элемента, которое будет использоваться в обозначении самого плагина. Указывать на латинице |
name | Русское название списка |
descr | Описание списка |
opts | Объект с настройками плагина |
vals | Значения для формирования списка, к примеру массив: [name => value] |
textarea.twig
Содержит макрос для формы большого количества текста
Содержит:
- text - Простой элемент ввода большого количества текста
- editor - Похож на text, но к нему подключается редактор
Метод подключения:
Twig | |
---|---|
Использование:
Twig | |
---|---|
Параметры:
Twig | |
---|---|
Параметр | Описание |
---|---|
id | Уникальное значение элемента, которое будет использоваться в обозначении самого плагина. Указывать на латинице |
name | Русское название текстового поля |
descr | Описание поля |
opts | Объект с настройками плагина |
Перечень дополнений
- MobileDetectExtension (Дополнена / подправлена мной)
- DeclineExtension (Моё дополнение)
- AdminUrlExtension (Моё дополнение)
- MarkdownExtension
- CacheExtension
- IntlExtension
- CssInlinerExtension
- StringExtension
- HtmlExtension
- InkyExtension
- Translation
DeclineExtension
В любом месте в шаблоне нужно указать тег decline для склонения. Пример:
Twig | |
---|---|
Вместо count вставить переменную с количеством.
AdminUrlExtension
Дополнительные и глобальные ссылки и переменные в админпанеле и шаблонизаторе
Тег | Описание | Пример вывода |
---|---|---|
assets_url | Прямая ссылка до папки со стилями и скриптами | /engine/inc/maharder/admin/assets/ |
plugin_url | Ссылка текущей страницы, вместе с параметрами | /admin.php?mod=main&new=test |
dle_login_hash | Хеш пользователя DLE | 1234567890ABCDEFGabcdefg |
dle_config | Массив конфирурации DLE | |
_server | Массив сервисной информации, аналог \$_SERVER | |
_get | Массив отфильтрованногого GET-запроса сервера, либо null | |
_post | Массив отфильтрованногого POST-запроса сервера, либо null |
Дата создания: May 25, 2022