Один мастер-шаблон или несколько шаблонов?

У меня есть группа страниц на сайте, которая статически генерируется с помощью nanoc; каждая группа представляет один вид документа и имеет собственный шаблон. Каждый шаблон группы немного отличается. Например, основной шаблон:

<html>
<body>
    <--header-->
    <--news-->
    <--content-->
    <--sidebar-->
</body>
</html>

И тогда какой-то другой шаблон, возможно, не будет иметь news раздел, но будет иметь footer:

<html>
<body>
    <--header-->
    <--content-->
    <--sidebar-->
    <--footer-->
</body>
</html>

и так далее. Что было бы лучше сделать:

[A] иметь один главный шаблон и затем иметь флаг для включения / выключения определенных импортов

или же

[B] иметь много небольших шаблонов, которые включают в себя общие фрагменты HTML?

1 ответ

Решение

У меня есть относительно большой сайт на Nanoc, и я делаю [B], в основном. У меня довольно сложная вложенная иерархия раскладок. Страницы статей выглядят примерно так (не эти фактические теги, я просто использую псевдо-xml, чтобы указать, как размещаются макеты):

<default>
  <content>
    <article>
      <post> <!-- or image, or link, or quote, or ... -->
        <%= yield %>
      </post>
    </article>
  </content>
</default>

Хотя тег или страница архива будут:

<default>
  <content>
    <list>
      <%= yield %>
    </list>
  </content>
</default>

Каждая страница на моем сайте использует default раскладка. Большинство страниц используют contentЗа исключением нескольких страниц, которые не содержат хрома... Все остальное - это комбинация тех или иных макетов. Я думаю, что у меня есть около 25 макетов в общей сложности:)

Другие вопросы по тегам