RUBRIQUES. Описание цикла

Цикл RUBRIQUES используется для отбора и вывода списка разделов (неожиданно, правда?)

<BOUCLEn(RUBRIQUES){critères...}>

Примечание. Цикл RUBRIQUES выводит только "активные" разделы, т.е. в которых есть опубликованные статьи, к котором добавлены файлы, сайты или содержат активные подразделы. Так сделано для того, что бы на сайте не показывались пустые разделы. Но в случае необходимости вы можете вывести "пустые" разделы, но об этом ниже.

Критерии

Для того, что бы выбрать разделы, которые необходимо показать, используются следующие критерии:

-   {id_rubrique} возвращает раздел с идентификатором id_rubrique. Так как у раздела идентификатор может иметь только одно значение, то это критерий выведет только один раздел (или не выведет ничего).

Примечание. Можно вывести несколько разделов использую критерий {id_rubrique IN xxx,yyy,zzz}

-   {id_secteur} возвращает все разделы, которые находятся в секторе с идентификатором id_secteur. Так же можно использовать критерий {branche}, который подробно описан в статье ARTICLES. Описание цикла, для вывода всех подразделов любого уровня вложенности.

-   {id_parent} выводит список подразделов, которые находятся в разделе, у которого id_parent=#ID_RUBRIQUE. Используется для вывода подразделов текущего раздела.

Поле базы id_parent содержит номер родительского раздела. Поэтому что бы вывести содержимое конкретного раздела, надо указать его номер в этом критерии.

Пример.

Цикл, который выводит подразделы, вложенные в текущий раздел.

<BOUCLE_parent(RUBRIQUES) {id_rubrique}>
    Раздел №#ID_RUBRIQUE содержит такие подразделы:
    <BOUCLE_children(RUBRIQUES) {id_parent=#ID_RUBRIQUE}>
        #TITRE <br /> 
    </BOUCLE_children>
</BOUCLE_parent>

Цикл _parent выводит информацию о текущем разделе. Более всего нас интересует значение #ID_RUBRIQUE, которое мы используем в следующем цикле, что бы указать, для какого раздела надо вывести все дочерние элементы.

-   {racine} выводит список разделов в корне сайта. Полностью идентично записи {id_parent=0}.

-   {id_enfant} возвращает раздел, который содержит подраздел, номер которого указанный в критерии id_enfant. Так же можно записать как {id_rubrique=#ID_PARENT}. Критерий выводит только одну запись или ничего, в случае если этот раздел - корневой.

-   {meme_parent} выводит список разделов, у которых номер родителя (id_parent) такой же как у текущего раздела.

-   {id_mot}, {titre_mot=xxx} возвращает список разделов, к которым добавлен ключ с указанным номером или же с заданным названием.

<BOUCLE_rubs(RUBRIQUES) {id_mot=2}>
    #TITRE
</BOUCLE_rubs>


-   {id_groupe}, {type_mot=yyyy} выводит список разделов, к которым добавлены ключи из группы ключей с указанным номером или названием.

<BOUCLE_rubs(RUBRIQUES) {id_groupe=1}>
    #TITRE
</BOUCLE_rubs>

-   {recherche} выводит список разделов, которые найдены поисковой системой SPIP по ключевым словам, заданным в поиске. Подробнее о работе поисковой системы. О проблеме с кирилическим поиском в статье ARTICLES. Описание цикла.

-   {lang} выводит все разделы, язык которых равен значению из окружения (из URL или внешнего цикла) или же главному языку сайта (если в окружении значение lang не задано.

-   {tout} выведет все разделы, включая пустые разделы.
-  Однако, данный фильтр необходим в очень специфических случаях или же при отладке сайта.

Критерии, доступные в SPIP 3

{feuille} позволяет вывести разделы без подразделов - самые нижние элементы дерева разделов.

{noeud} позволяет отобрать разделы у которых есть подразделы.

{!racine} выводит все разделы, кроме корневых. Т.е. у которых {id_parent!=0}.

{profondeur=1} выводит разделы 2го уровня (0 уровень - это корень сайта - сектор, 1 - разделы, которые находятся в секторе) .

Критерии, используемые для вывода статей

Вы можете использовать универсальные критерии.

-   {exclus} используется для того, что бы исключить текущий раздел из результатов вывода. Полезен с критерием meme_parent.

Теги, выводимые из

-  Теги, получаемые из базы данных

Информация, которую выводят данные теги, хранится в базе данных. Поэтому их можно использовать для сортировки выводимых элементов (например , {par titre} выведет разделы по названиям разделов по алфавиту).

-  #ID_RUBRIQUE выводит номер раздела.

-  #TITRE выводит название раздела. Начиная с версии SPIP 3.0 при выводе названия к нему автоматически применяется фильтр |supprimer_numero.

-  #DESCRIPTIF выводит содержимое поля "описание". Поле можно включить в настройках сайта.

-  #TEXTE выводит содержимое поля "текст" текущего раздела.

-  #ID_SECTEUR выводит номер сектора, в котором находится текущий раздел.

-  #ID_PARENT выводит номер раздела, в котором находится текущий раздел. Если у нас раздел второго уровня вложенности, то #ID_PARENT==#ID_SECTEUR.

-  #LANG выводит язык раздела.

-  Вычисляемые (генерируемые) теги

В отличии от статических тегов, значение вычисляемых не хранится в базе данных, а генерируется SPIPом. Поэтому мы не можем использовать их для сортировки вывода.

-  #NOTES выводит сноски (значение генерируется на основе поля "текст" раздела - SPIP анализирует и находит всю информацию о сносках и выводит ее).

-  #INTRODUCTION выводит первые 600 символов поля "текст". Подробнее о теге #INTRODUCTION.

-  #URL_RUBRIQUE выводит URL страницы раздела. Особенности такие же, как и для #URL_ARTICLE.

-  #DATE выводит дату последнего опубликованного элемента в текущем разделе или его подразделах - статьи, ленты новостей ...

-  #FORMULAIRE_FORUM выводит форму комментариев к разделу. Больше информации в статье "Les formulaires".

-  #PARAMETRES_FORUM выводит список всех переменных, необходимых для работы формы (подробнее. Пример:

[ <a href="forum.php3?(#PARAMETRES_FORUM)">Оставить комментарий </a> ]

-   #FORMULAIRE_SITE (since SPIP 1.4 ) выводит форму, которая позволяет посетителям предлагать ссылки на сайты для текущего раздела. Ссылки публикуются только после утверждения администратором.

Форма выводится на сайте только в том случае, если в настройках сайта включена опция "Каталог сайтов".

Логотипы

-  #LOGO_RUBRIQUE выводит логотип раздела. Если добавлена картинка в поле "Логотип при наведении мышкой" (включается в настройках системы), то логотип выводится со скриптом, который заменяет одно лого на другое при наведении мышки.

Если у раздела нет логотипа, то выведется или логотип родительского раздела, или раздела уровнем выше, в случае, если у родительского раздела тоже не будет логотипа.

Синтаксис логотипа:

[(#LOGO_RUBRIQUE|alignment|address)]

Где:

  • alignment выравнивание (left или right)
  • address - URL на который перейдет посетитель, если нажмет на логотип.

Начиная с версии SPIP 2.1 можно использовать следующую запись:

#LOGO_RUBRIQUE{#URL_RUBRIQUE,left}

Как получить больше информации о логотипе

Если вам необходимо вывести URL логотипа, то вы можете применить фильтр |lien:

[ (#LOGO_ARTICLE|lien) ]

А начиная с версии SPIP 2.1 можно писать так:

[ (#LOGO_ARTICLE*) ]

Если вам необходимо вывести название файла логотипа, вы можете применить фильтр |fichier:

[ (#LOGO_ARTICLE|fichier) ]

А начиная с версии SPIP 2.1 можно писать так:

[ (#LOGO_ARTICLE**) ]

Все логотипы хранятся в корне папки IMG/ и имеют фиксированные названия. Для логотипа раздела название формируется следующим образом: rubonXXX.ext, где XXX - номер раздела, а ext - расширение файла.

Вывод определенного логотипа

И еще два тега, которые иногда сильно выручают (особенно в тех случаях, когда нам необходимо два логотипа для вывода в разных шаблонах):

-  #LOGO_ARTICLE_NORMAL вывод изображения логотипа
-  #LOGO_ARTICLE_SURVOL вывод изображения логотипа при наведении мышкой

[SPIP 2.1]

Note: there is a new syntax for the LOGO_XX tags.

Автор Serge Markitanenko Publié le : Mis à jour : 20/06/15

Traductions : عربي, català, Deutsch, English, Español, français, italiano, Nederlands, русский, українська