Как можно вывести строку поиска в XSLT-шаблоне? — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
м (1 версия)
 
Строка 32: Строка 32:
  
 
</xsl:template>
 
</xsl:template>
</source>[[Категория:Модуль Поиск]]
+
</source>
 +
[[Категория:Модуль Поиск]]

Текущая версия на 11:29, 8 сентября 2011

Как можно вывести строку поиска в XSLT-шаблоне? В <body> нашего первого обработчика (<xsl:template match="/">) по протоколу udata берем результат работы макроса поиска

<xsl:apply-templates select="document('udata://search/search_do')/udata" mode="searchform"/>

Далее в шаблоне дизайна прописываем еще два шаблона: Первый получает данные работы макроса %search insert_form()%[1] и выводит их списком:

<xsl:template match="udata[@module = 'search' and @method = 'search_do']" mode="searchform">

       <xsl:apply-templates select="document('udata://search/insert_form')/udata"/>

       <ul>
            <xsl:apply-templates select="items/item"/>
       </ul>
</xsl:template>


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

<xsl:template match="udata[@module = 'search' and @method = 'insert_form']">

    <form method="get" action="/search/search_do/">
           <input type="text" name="search_string" value="{last_search_string}"/>
           <input type="submit" value="Поиск"/>
    </form>

</xsl:template>