Foren / National / Russian / Скины и дизайн / Маленькое пояснение по "хлебным крошкам"

Kort
#28853 11. März 2011, 07:45

"Хлебные крошки" aka навигационная цепочка как проблема уже обсуждались ранее на форумах. Предлагалось ввести свой отдельный тег и проч. В Cotonti Genoa 0.6.14 мы попытались решить проблему создания данного элемента, максимально сохранив при этом вид цепочки.

Сначала что мы имеем:

  1. В режиме list и page существуют теги LIST_PAGETITLE и PAGE_TITLE, которые выводят "крошки"
  2. Вывод в первой позиции крошек ссылки на главную страницу настраивается в разделе "Настройки скина"
  3. LIST_PAGETITLE и PAGE_TITLE формируются при помощи функции sed_build_catpath
  4. sed_build_catpath также "отвечает" за формирование селектов выбора разделов
  5. sed_build_catpath формирует "цепочки" и селекты с использованием разделителя PHP.cfg.separator

Что за проблема с крошками?

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

Как решили?

Использовалось самое простое решение: "обернуть сепаратор" SPAN'ом. В селектах они безболезненно сохранились, а в крошках их теперь можно легко скрыть средствами CSS. Простой пример:

HTML:

<p id="crumbs">{PAGE_TITLE}</p>

CSS:

#crumbs { overflow:auto; }

#crumbs a { display:block; float:left; }

#crumbs span { display:none }

Дальше ваша фантазия + CSS3.

SED.by - создание сайтов, разработка плагинов и тем для Котонти