По крайней мере, была бета-версия Template Toolkit на php. Но оригинал на perl - это, по сути, другой язык. Это довольно мощно.
Оригинал есть на CPAN. Текущая версия, я думаю, 2.25.
В моей системе веб-строительства контент и разметка почти полностью разделены.
Это основная страница перед добавлением контента:
[% PROCESS header.inc
Title = "Sherwood's Forests -- Seedling Sales"
Desc = "Sherwood's Forests Pre-season orders for little Trees."
%]
<DIV id="content">
[% FILTER multimarkdown %]
# Seedling Sales 2014
<div markdown="1" class=picr>
![Picture alternate text][/base-absolute/path/to/image.jpg]
</div>
Please be patient
#### This file is still germinating
[% PROCESS Copyright.inc %][% END %]
</div>
[% INCLUDE footer.inc %]
Весь контент проходит между строкой ФИЛЬТР, а нижний Контент записывается в разметке. позволяет мне разместить изображение в правой части столбца. CSS полностью жидкий, поэтому экран все еще можно использовать (почти) на iPhone.
Большая часть магии находится в header.inc. Он читает файл fileindex.txt, который, по сути, является деревом меню для всего веб-сайта. Нет java. Все статические сайты.
Fileindex.text выглядит так:
ABBAB:f:/Home/Business_Stuff/Inventory.html:3:Inventory.html:Inventory
ABCAB:f:/Home/Business_Stuff/Ordering.html:3:Ordering.html:Ordering
ABDAB:f:/Home/Business_Stuff/Prices.html:3:Prices.html:Prices
ABJAB:f:/Home/Business_Stuff/Business_Stuff.html:3:Business_Stuff.html:Business Stuff
ADAAA:d:/Home/Services:2:Services:Services
ADJAB:f:/Home/Services/Christmas_Trees.html:3:Christmas_Trees.html:Christmas Trees
ADKAB:f:/Home/Services/Custom_Growing.html:3:Custom_Growing.html:Custom Growing
ADLAB:f:/Home/Services/Nature_Walks.html:3:Nature_Walks.html:Nature Walks
Алфавитный указатель в начале определяет порядок сортировки индекса. d или f - это каталог или файл. Число - это количество уровней ниже в иерархии меню. Затем файловая составляющая полного пути. Наконец, текст, используемый для имени ссылки. Кое-что из этого дублируется более ранними изменениями, но исправлять это не стоило. «Пока не оптимизируйте». Последнее поле позволяет указать имя ссылки, отличное от имени файла. Это мало используется.
Сам файл fileindex.txt создается Perl-программой MakeFileIndex. Он использует два источника информации: результаты поиска. запустить в исходном дереве и файл tt2seq, который имеет необязательные переопределения в порядке пунктов меню.
Я хочу добавить новую страницу на свой сайт.
Скопируйте первый файл в соответствующий каталог. Измените содержимое этого файла моим новым содержимым. Если он должен отображаться не в алфавитном порядке, я должен добавить строки в tt2seq, чтобы контролировать это. Запустите MakeFileIndex. Запустите ttree -a (утилита в Template Toolkit). Это обновит все пункты меню в каждом файле.
Убедитесь, что страница выглядит так, как я хочу. Если нет, то заново отредактируйте. Повторите запуск ttree для файла, который я только что отредактировал. Когда я буду счастлив, синхронизируйтесь с моим сервером.
В итоге, время, которое я трачу на механику, крошечное по сравнению со временем, которое уходит на написание.
Если я решаю переупорядочить сайт, я просто перемещаю файлы по дереву каталогов и перестраиваю. Это НЕ исправляет какие-либо внутренние ссылки в блоках содержимого.
Созданный таким образом сайт называется http://sherwoods-forests.com. Это старомодный сайт. Акцент делается на содержании, а не на шипении. Но это хорошая система для создания статических страниц.
person
Sherwood Botsford
schedule
29.01.2014