|
|
|
_ответ
|
Безымянный
|
13.06.2001 16:23 |
Держи...
CFG'шник с данными - _sections.cfg в корне#Таблица с номерами разделов и подразделов
primary secondary title file
010 000 Главная страница /
020 000 Чипсы /chipsy/
030 000 Пиво /pivo/
030 010 Балтика /pivo/baltika/
030 020 Клинское /pivo/baltika/
030 030 Grolsh /pivo/grolsh/
030 040 Berliner Kindl /pivo/kindl/
030 050 Kö^;lsch /pivo/kolsh/
040 000 Водка /vodka/
050 000 Девчёнки /girls/
050 010 Катя /girls/katya/
050 020 Маша /girls/masha/
050 030 Таня /girls/tanya/ Primary - это номер раздела. Secondary - номер страницы в нём.
макрос в _macro.cfg:@page[primary;secondary;body] Основной шаблон
<html><body><h1>Менюха:</h1><hr>
^context[sections;
^load[named;sections.cfg]
<br><font size=-1><ul>
^menu[
# Если не требуется скрывать ветви списка,
# отличные от текущей, закомментируй
# следующую строку (и ещё одну чуть ниже,
# она там отмечена таким же комментарием):
^if[(^item[primary]!=$primary)
&&(^item[secondary]!=0);;
# Проверяем, требуется ли этой строчке меню
# тэг <ul> впереди:
^if[(^item[secondary]!=0)
&&(^item[prev;secondary]==0);
<ul>;^rem[Не требуется..]]
# Если мы дошли до строки меню, соответствующей
# текущей странице, просто выделяем её название
# болдом. Иначе - ставим ссылку:
<li>^if[(^item[primary]==$primary)&&
(^item[secondary]==$secondary);
<b>^item[title]</b>;
<A HREF="^item[file]">^item[title]</A>
]</li>
# Проверяем, требуется ли предыдущей строчке
# тэг </ul> позади:
^if[(^item[secondary]!=0)
&&(^item[next;secondary]==0);
</ul>;^rem[Не требуется..]]
# Если не требуется скрывать ветви списка,
# отличные от текущей, закомментируйте
# одну следующую строку:
]
]
</ul></font>
]
<hr>
$body
</body></html>Если хочешь выводить название текущего раздела вместо<h1>Менюха</h1> вставь<h2>^rem[Название текущего раздела]
^context[sections;
^load[named;sections.cfg]
^locate[primary;$primary]
<b>^item[title]</b>
^menu[
^if[^item[secondary]!=0;
^if[(^item[primary]==$primary)&&(^item[secondary]==$secondary); >^; <b>^item[title]</b>;]
;]
]
]</h2> Создай структуру директорий/
/chipsy/
/pivo/
/pivo/baltika/
/pivo/baltika/
/pivo/grolsh/
/pivo/kindl/
/pivo/kolsh/
/vodka/
/girls/
/girls/katya/
/girls/masha/
/girls/tanya/ разложи по ней файлы index.html такого формата:^macro[page;010;000;
<p>Съешь ещё немножко этих мягких французских булок, да выпей чаю. Съешь ещё этих мягких французских булок, да выпей чаю.</p>
] макрос сопоставляет цифру раздела и подраздела тому, что написано в _sections.cfg - и соответственно рисует меню.
То есть файл /pivo/baltika/index.html должен содержать что-то типа:^macro[page;030;010;
<p>Балтика по сравнению с Берлинер Киндлом не катит!!!</p>
] Уф-ффф!
|