ПредишенСледващото

В примера с оформление, има три вида навигация: менюта на едно ниво, менюта на няколко нива, както и галета.

Навигация на сайта се формира от следните характеристики:

  • nc_browse_level () - отнемане на определен меню ниво гнездене;
  • nc_browse_path () - изходните галета;
  • nc_browse_path_range () - изходните галета (с параметри);
  • nc_browse_sub () - отнемане на определен участък от менюто;
  • nc_cond_browse_sub () - отнемане на определен участък от менюто (с условието);
  • nc_browse_cc () - изходната секция на информация меню блок;
  • nc_browse_catalogue () - отнемане на меню сайтове.

Нека разгледаме примерите за всяка от функциите.

Има три функции за показване на менюто:

  • nc_browse_level (ниво $, $ browse_template).
    Заключение определено ниво на вложени менюта.
  • nc_browse_sub ($ browse_parent_sub, $ browse_template, $ ignore_check = 0, $ where_cond = "", ниво $ = 0)
    Изход от менюто специален раздел.
  • nc_cond_browse_sub ($ browse_parent_sub, $ browse_template, $ where_cond = "")
    Изход от менюто специален раздел за състоянието. Функцията е специален случай на предишната.

менюто на едно ниво

Първият тип меню в оформлението-пример - едно ниво:

В кода състоянието на менюто, е както следва:

Можете да използвате първия или втория функцията за формирането на менюто на едно ниво.

Функцията трябва да преминат необходимите параметри:

  • $ Ниво - ниво брой секции (най-високото ниво съответства на стойност 0);
  • $ Browse_template - навигация шаблон изход.

навигация шаблон изход е едномерен масив тип $ browse_template:

Шаблоните навигация следните макро променливи са налични:

  • % NAME - име на елемента (точка);
  • % URL - път към списъка;
  • % PARENT_SUB - брой на секцията майка (за информация);
  • % КЛЮЧОВА ДУМА - раздел ключова дума (само за информация);
  • % Под - брой дял;
  • % COUNTER - брой показва елемент от списъка (като се започне от нула);
  • % NEXT_LEVEL - Показване на следващото ниво на менюто. Използва се в строителството на меню на много нива.
  • Imya_polya_v_sistemnoy_tablitse% - случайна променлива, дадени в "Категории" блок в таблиците на системата.

Някои от променливите са предназначени само за да се образува в менюто.

Твърда форма навигация може да има елементи:

Промяна browse_template масива $ в съответствие с даден HTML-кода:

Поставете масива в шаблона за навигация дисплей.

Шаблонът вместо HTML-код списък на функцията:

Броят 0 в менюто с функции показва нивото на изход. В този случай, то ще бъде показано на всички включени предмети са основната преграда.

навигационна функция - CMS netcat

Секциите на фигура маркирани в сиво не са оттеглени.

Сега фрагмент горната част на сайта е, както следва:

менюта няколко нива

В страничната колона на сайта е представена от менюто на няколко нива:

навигационна функция - CMS netcat

В случай, че ще бъде необходимо страничната колона, за да донесе на хоризонталната подменю (т.е. само на едно ниво), то е възможно да се използва една и съща функция, но с параметър, който е равен на 1, 2 и т.н., в зависимост от нивото на вмъкване ..:

В този случай, на изхода на определен подраздел и да използвате функцията за сключването му:

Функция може да се използва, за да се образува менюта на едно ниво, както и мулти-ниво. Функцията трябва да преминат необходимите параметри:

  • $ Browse_parent_sub - ID на дяла от родителското трябва да се появяват елементи от менюто. дял на корен е номериран 0.
  • $ Browse_template - навигация шаблон изход. Функцията трябва да премине променлива с изходното ниво на менюто и шарката на масив.

Можете също да укажете незадължителните параметри:

  • $ Ignore_check = 0 - ако е настроено на 1, всички раздели с увреждания ще бъдат премахнати.
  • $ Where_cond = "" - опция определя допълнителни условия за подбор на подразделението на масата.
  • $ Ниво = 0

Използването на избираеми параметри ще бъдат описани по-долу.

Кодът в менюто изход все още изглежда така:

AMIS изход от менюто на няколко нива:

От менюто е на няколко нива, новият макро променлива% NEXT_LEVEL добавя към шаблона за навигация.

В оформлението, вместо списък на HTML код на поканата функция:

където 299 - брой на дяла от родителското изходните участъци. В картата на сайта си, той изглежда така:

навигационна функция - CMS netcat

Помислете например, в кои случаи можете да използвате nc_browse_sub на $ where_cond () и nc_cond_browse_sub ().

Да предположим, че картата на сайта има около петнадесет позиции в корен дял. Някои от елементите, които искате да покажете най-горното меню, някои най-отдолу. В зависимост от дизайна, менюто може да се намира в различни места и може да има повече от две.

Без използването на условията на параметър $ where_cond задачата става много по-сложно. Решението е просто - в системните таблици, в "секции" Блокиране трябва да добавите ново поле.

навигационна функция - CMS netcat

Полетата трябва да са толкова, колкото вида менюта.

В резултат на това в раздела разширени настройки във всяка секция ще бъде опция, която трябва да бъде настроен на правилната стойност.

навигационна функция - CMS netcat

Функцията за изход сега трябва да добавите параметър $ where_cond на, съдържащ името на полето. Например,

Подобен вложка да се направи и за други случаи на менюто на дисплея.

Използването s_browse_ функции

Ако ви липсват тези макро променливи, или искате да използвате PHP среда можете да използвате функциите, с s_browse_ префикс. ги предоставят данни вътрешен $ масив [] и изпълнени от Оценка () шаблони, което ви позволява да прехвърляте по образец в PHP код (екраниран). Array $ данни [] съдържа всички данни от текущата таблица Подразделение подраздели изход функция.
Например:

Само на допълнителни заявки могат да бъдат използвани в шаблона. Например, трябва да се покаже броя на елементите в секции. За това искане се добавя в края на шаблона:

където XX - брой на компонента, свързан към секциите.

Обърнете внимание на знаците пред наклонени черти и $ ", те са необходими, тъй като обработката на масива и вложените функция трябва да се извършва в рамките на s_browse_ функция, а не по време на инициализация на масива $ browse_sub на.

Важно: s_browse_ функции достъпно macrovariable% NEXT_LEVEL.

Важно: s_browse_ функции не автоматично да избират нивото на шаблона, както това е направено в% NEXT_LEVEL, така че е необходимо да се премине определено ниво на шаблон функцията прави, например

За да се покаже на следващото ниво на масива, е необходимо да се регистрирате функция покана за следващото ниво в рамките на шаблона и се пресява така prozoshel разговор в рамките на сегашното ниво на функции.

Също следващото ниво шаблон $ left_menu1 [1], няма да бъде на разположение в s_browse_sub функция обхват, така че трябва да го отворите, чрез глобализацията:

Пълен например в продължение на 3 нива на влагане:

Важно: ако шаблона за навигация е описан в компонента за шаблон (префикс / системни настройки), трябва също да предяви модел масив от видимостта на полето компонент като цяло:

Карта на сайта

Списък на всички секции (карта на сайта) се показва на сайта също е много проста. което трябва да се създаде нов раздел, за да го свържете към оформлението дизайн на следващия съдържанието на картата на сайта:

  • навигация шаблон изход регистър:
  • на мястото на O карта, за да се регистрирате извикване на функция:

В този пример всеки шаблон елемент предизвиква функция отново със същия модел, но броят на текущата секция се прехвърля в изходната секция ID. По този начин имате една единствена страница ще показва пълна йерархия структурата на сайта.

галета

Последно навигация елемент на страницата - галета. Се формира от функции:

  • nc_browse_path ($ browse_template)
    Изходна по предварително определен рисунък
  • nc_browse_path_range ($ от, $ до $ browse_template, $ обратен = 0, $ показват = 0)
    Изходна с конкретни параметри на

променливи $ browse_template също трябва да се уточни масив от данни. В кода галета са показани в реда:

Необходимо е да се създаде набор от изход:

и да предпише сключване на разпределение:

Общо показвания

навигационни елементи адаптирани и сега е в "шаблони навигация О" се намира на 4 блока спектър:

Горната част на оформлението е значително намалена и сега изглежда така:

  • nc_browse_sub () - Отваряне на списъка на предварително определени секции подраздели в съответствие с $ шаблона на модел
  • nc_browse_catalogue () - отнемане на списъка с обекти
  • nc_browse_level () - отнемане на менюто (списък от теми) на определено ниво
  • nc_browse_messages () - генерира списък на страници с обекти
  • nc_browse_path () - пътя на изхода "галета"
  • nc_browse_path_range () - изход пътя ( "галета") определения диапазон

Свързани статии

Подкрепете проекта - споделете линка, благодаря!