Я разрабатываю простой веб-сайт без динамического контента, что я хочу быть легким и портативным — никакой PHP или другие сценарии серверной стороны, необходимые или требуемые. Я сталкиваюсь с вопросом, который я имел несколько раз прежде.
Я хотел бы иметь возможность записать общие элементы (голова, нога, навигация) однажды и записать отдельные страницы на сайте с содержанием только, затем выполнить эту таинственную утилиту для компиляции всего это в ряд файлов HTML, готовых к загрузке. Страница могла бы быть записана как это:
Title: Our Services Top Navigation: Yes Scripts: jquery, lightbox <p> Example, Inc. offers a wide range of…
Было бы замечательно, если бы механизм также имел логику, которая позволяет мне включать или исключить элементы (как Top Navigation
выше) от каждой страницы, и автоматизируют задачи как маркировка текущей страницы в navbar:
<a href="/services"{page == 'services' ? ' class="current"' : ""}>Services</a>
Есть ли какие-либо механизмы там как это?
Для этого я бы направился прямо к Template-Toolkit . Он поставляется с утилитой ttree для создания статического сайта.
Вы можете обработать последнюю часть вашего вопроса примерно так:
[%
INCLUDE 'navbar.tt'
page = 'services'
%]
Честно говоря, здесь такие вещи, как PHP, пригодились бы... включать общие элементы
Вариант 1: использовать язык и наслаждаться им.
Вариант 2: Используйте язык, чтобы сделать сайт... но затем наведите гусеницу на ваш сайт, чтобы захватить сгенерированный "статический" контент. например WinHTTPTrack
Шаблоны Adobe Dreamweaver делают то, что вам нужно, если вам подходит платный инструмент.
Обычно вы создаете страницу шаблона, где определяете, какие части доступны для редактирования, а затем создаете все свои страницы на основе шаблона. Если вы измените шаблон и сохраните его, все связанные страницы будут обновлены.
Система шаблонов также может определять атрибуты по умолчанию и изменять их на определенной странице. Вы можете использовать это для маркировки текущей страницы, хотя для этого ИМХО пара строк кода jquery намного лучше.
Вы можете написать программу на любом знакомом вам языке, который выводит статические html-файлы. У вас может быть базовая структура, а затем для настраиваемого материала вы включаете ее из отдельного файла.