Термины

Скин — набор шаблонов и дополнительных файлов (CSS, js, изображения и пр.) для оформления внешнего вида сайта

Шаблон — tpl-файл с HTML-разметкой и командами шаблонизатора Smarty

Тема — вариант оформления скина. Один скин может иметь несколько тем (а может только одну). Темы могут отличаться друг от друга как цветовыми схемами, так и исходными макетами.

Макет — шаблон, на основе которого строятся другие шаблоны темы (в общем случае в одной теме может быть несколько макетов). Макет, как правило, задает основную структуру HTML-страницы.

Блок — именованная область шаблона, окруженная тегами Smarty {block}...{/block}. Используется в системе наследования шаблонов. Блоки, определенные в шаблоне-родителе могут быть переопределены в шаблонах-потомках.

Виджет — информационные модули, выводимые на странице, как правило, независимые друг от друга. Виджеты могут быть «исполняемые» так и «шаблонные».

Исполняемый виджет — это виджет, у которого есть свой PHP-класс, вызываемый каждый раз, когда нужно отобразить виджет на экране.

Шаблонный виджет — это Smarty-шаблон, который вставляется в шаблон страницы.

15 комментариев

0
Скин
ну возможно стоит учесть что в скине не только css, js и изображения, а могу быть шрифты например ну и пр. удовольствия, который может запихнуть юзер!

Макет
по мне как верстальщику, макет всегда был картинкой :) по которому верстаешь, нет?

Блок
ну я то тебя понял, но пользователю могут не понять у них в крови уже что блок это блок в сайдбаре, может назовем «обёртка», что нить такое

Виджет
А тут можно 2 имя Виджет-аля-Блок
0
Скин — добавил «пр.»

Макет — в английском варианте это называется layout, и я на русский всегда переводил, как макет. Но можно назвать, скажем, «мастер-шаблон» или «шаблон темы». Тут не принципиально

Блок/Виджет — а вот тут я упрусь. «В крови» это только у немногочисленной кагорты ЛС-юзеров, которых Макс испортил неправильными и непродуманными терминами. Но мы рассчитываем на гораздо более широкий рынок, и я не вижу смысла «кривые» термины ЛС продолжать тиражировать: «блок», который в сайдбаре; «блок» шаблона, который у Смарти; «блочный хук», который совсем не первое и не второе. В топку это все. Устанавливаем свои правила и термины.
0
С виджетами согласен, что блоки это не правильно.
0
Термины «шаблон» и «макет» связаны рекурсией, для большей ясности предлагаю упростить или изменить формулировки.
0
А есть какие-то предложения? «Мастер-макет»/«Мастер-шаблон» тоже не годятся? Хотелось бы какой-то термин, который был бы для большинства верстальщиков интуитивно понятен. Ну или хотя бы чтоб не вызывал неверных ассоциаций.
0
надо создать блок-схему взаимосвязей, я вот сейчас понял что я не понимаю что такое макет в твоих глазах :)
0
я вот сейчас понял что я не понимаю что такое макет в твоих глазах
Smarty-шаблон /templates/skin/mono/themes/default/default.tpl — это макет по умолчанию скина mono
0
да я уже понял когда прочитал другие статьи.

то есть макеты, это:
страница профиль
страница список юзеров
страница топика

верно?
0
В скине mono макет только один, который я указал. В теории их может быть несколько у одного скина, но пока это не используется
0
Прежде, чем предлагать, я бы хотел убедиться, что я правильно уловил твои идеи и мы будем говорить об одном и том же на одном языке. Насколько я понимаю:
— скином предлагается именовать полный комплект tpl+js+css+img;
— шаблон: master-template, основа с базовой разметкой и универсальными блоками, существует в единственном экземпляре в пределах скина;
— тема: альтернативные css/img, переопределяющие умолчальное оформление скина;
— макет: описание представления конкретного документа, обладающего уникальной функциональностью — главная страница, профиль и т. д., количество макетов определяется задачами и особенностями приложения;
— блок: логическая сущность документа;
— виджет: функциональная сущность документа.
— шаблонный виджет реализует возложенный на него функционал на уровне frontend-технологий и смарти для доступа к доменной логике;
— исполняемый виджет кроме перечисленного использует дополнительный уровень — собственный доменный объект.

Чувствую себя java-архитектором
0
Классно сформулировал! Но поправлю:
— шаблон (он же «template»): tpl-файл Smarty
— макет (он же — «layout»): шаблон-основа с базовой разметкой и универсальными блоками, количество макетов в одном скине определяется задачами и особенностями приложения, хотя чаще всего существует в единственном экземпляре

А все остальное верно
0
Тогда есть два вопроса — для чего нужно столько глубоко проработанное соглашение и на кого оно ориентировано? Будет ли этот терминологический аппарат использоваться внутри команды разработки Альто или же он ориентирован на всех разработчиков, желающих создавать расширения? Или, может быть, он предназначен для самой широкой аудитории — для разработчиков-интеграторов, создающих сайты на безе движка, или даже для конечных пользователей, которые будут использовать Альто на своих сайтах?
0
В первую очередь — определиться с терминами внутри команды. Чтоб на одном языке говорили. Напр., как выяснилось, если я начну что-то про «макет» рассуждать, то ты или Сергей меня можете просто не понять.

В дальнейшем — использовать эти термины в документации по Альто, в инструкциях, справочных топиках и т.д. Т.е. в конечном счете это все расчитано на весьма широкую аудиторию
0
Макетирирование имеет отношение к проработке эскиза, из которого делают статичный прототип, который и называется макетом. То есть готовая для просмотра html-страница. Иногда макетом называют и сам эскиз. На мой взгляд, слово «макет» в контексте шаблонной логики выглядит чужеродным и малоуместным.
0
Так я потому и вынес на обсуждение все это. Если термин «шаблон» не вызывает нареканий, то, может, «мастер-шаблон»?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.