Этикет при создании шаблонов

Тема в разделе "ExpressionEngine", создана пользователем [/root.], 4 сен 2007.

Статус темы:
Закрыта.
  1. [/root.]

    [/root.] Он самый

    Регистр.:
    20 май 2006
    Сообщения:
    368
    Симпатии:
    59
    Данная статья является моей точкой зрения на оформление и организацию шаблонов. Речь идет не о блоговых лэйаутах, поэтому некоторые вещи могут показатся несколько неоправданными.

    Система шаблонов ExpressionEngine является эталоном в своем классе. Более элегантного и удобночитаемого кода и тегов представить себе тяжело (опять же вкус и цвет отличный повод набить друг другу морды).

    Построение шаблонов можно разделить на два типа:
    - Группы темплейтов
    - Глобальные переменные (global variables)

    Группы - это основной метод построение внешнего вида. В стандартной поставке уже создана группа "site", которая включает в себя такие шаблоны как комментарии, главная страница, страница архивов и прочее. А так-же другую группу "search" в которой находится оформление выдачи поиска и related-оформления.

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

    Лично я всегда создаю группу global куда включаю элементы из дефолтной группы "site". Т.е основные шаблоны.

    RSS и прочие ленты выношу в группу export.
    Прочие элементы, которые нужно подключать через embed, но нельзя использовать в глобальных переменных выношу в группу includes (header, footer, файлы стилей).

    Основное отличие глобальных переменных от шаблонов - это полное отстутствие поддержки EE тегов и php кода. Следовательно глобальные перменные не создают нагрузку при подключении, в отличие от тех же шаблонов (embed).

    Для чего нужны глобальные переменные.
    С каждым годом проекты становятся все сложнее, поэтому нужно заранее заложить фундамент гибкого проектирования и масштабируемости.

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

    На выдаче мы имеем легкочитаемый код вида:
    Так-же учитывая, что в EE есть возможность сохранение шаблонов в файлы, вы всегда можете использовать любимый редактор с подсветкой синтаксиса, что сокращает время редактирование, если бы вы работали через админку и уменьшает нагрузку на БД.

    Глобальные переменные можно разделять нижнем подчеркиванием [ _ ] или обычным дефисом [ - ]. Шаблоны тем же самым, но и включая точку [ . ]. Поэтому сразу задайте себе стиль. Если используете глобальную переменную, то разделяйте одним способом, а шаблоны другим. Я например в глобальных переменных всегда использую подчеркивание - {html_close}, а в инклудах точку - {html.head}. Симпотично и логично.

    Небольшой совет: Не используйте большое количество инклудов. На мрачных хостингах или на проектах с большой посещаемостью - это приведет к ощутимой нагрузке (опять же в зависимости какой тип шаблона вы инклудите).

    Если есть вопросы или заметки, то прошу. Не стесняйтесь *_*
     
Статус темы:
Закрыта.