Site Template
Використовуться
module/templates/siteTemplate
Складається з 1 або 2-х файлів
news1.hbs- Шаблон у форматі html, hbsnews1.json- Налаштування у форматі json, yml
Приклад налаштування
{
"page": true, // чи шаблон є окремою сторінкою, чи треба брати дані
"table": "softpro.cases", // табличка з якої брати дані
"pk": "cases_id", // можна вказати іншу колонку не id
"alias":"url" // пошук по таблиці, де url = alias
}
Адміністративна панель
2 шаблони:
login35- для не авторизованихall35- шаблон авторизованих
Публічна частина
requestPath = /(ua|en)?/url?query#hash, де url це частина рядка запиту
Пріорітети вибору шаблону:
page: true- шаблон сторінки коли url = :name, або url = :name/idtable + id- шаблон сторінки при якому дані беруться з таблиці, де pk = :id, url = :name/:id, pk може бути будь яка колонка, по замовчюванню pk=Primary Key таблиціtable + alias- url буде порівнюватись з колонкоюaliasдля всіх шаблонів з aliassite.page_node + alias- default, перевіряє наявність сторінки в табличціsite.page_node, де url=:alias, де шаблон залежить від категорії в яку входить сторінка site.page_category
де :name - назва шаблону
!!! help "Форма категорії"
- `:category.page.form` - форма категорії сторінки сайту
- `select schema form site.page_category` - або з бази
Правила розробки
site.page_category+site.page_node- дозволяє створювати для різних типів контенту свої структури даних та шаблони - для новин, блогів послуг тощо. При чому окремі категорії можна винести в меню. Додаткові дані зберігаються в табличціsite.page_node_data- Для профільних даних треба використовувати
table+idабоtable+alias - Для статичних сторінок або списків використовуємо
page:true
Meta
Налаштування meta tags і формул для різних сторінок та шаблонів
База даних
site.page_node- сторінкиsite.page_node_data- дані сторінокsite.page_category- категоріїsite.meta- мета
Додаткова інформація
- CustomData - додаткові дані для різних категорій сторінок
- Filter - як вивести фільтри
- ContentList - вивід даних з БД
- Helper - більше про шаблони і додаткові інструменти
- Handlebars - шаблонізація