Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   Search in Tables + tt_news categories (http://forum.typo3.ru/showthread.php?t=1772)

Tod 04.09.2006 19:32

Search in Tables + tt_news categories
 
Попробовал использовать для поиска расширение Search in Tables. Все в общем, то неплохо, только вот хочется найти записи для новостей какой-то определенной категории... увы реализовать это не получилось.. вомзожно кто-то сталкивался с этим и сможет мне помочь?

Valery Romanchev 05.09.2006 01:30

Цитата:

Сообщение от Tod
Попробовал использовать для поиска расширение Search in Tables. Все в общем, то неплохо, только вот хочется найти записи для новостей какой-то определенной категории... увы реализовать это не получилось.. вомзожно кто-то сталкивался с этим и сможет мне помочь?

сейчас делаю новостной сайт на котором будет нормальный поиск в новостях (выбор категории, указание диапазона дат, выбор типа инф. материала и автора (это будет дополнительно прикручено к новостям))
Вплотную этим поиском планирую начать заниматься через 3 дня

Tod 06.09.2006 19:22

Реально не могу найти никакой альтернативы стандартному поиску, который очень примитивный и индексному, который на простых сайтах просто не в тему.
Посоветуйте какое-то толковое расширение))
В репозитории искал какие-то экстеншены, но увы понаходил или глючные или недоделанные... а хотелось бы чего-то более-менее стабильного))
Например тот же an_searhit мало того, что имеет документацию на немецком, так выдает какие-то не совсем корректные результаты с дикой кодировкой.
feseachintable неплох, в принципе, но там нет pagebrowsera, вываливается глюк при вводе в поиск одной буквы, результат выводится не только плагине с кодом result но и на form...
sg_search вроде по описанию подходит, но документация для него пока в разработке(
---
В общем, прошу посоветовать поиск не такой сложный как индексированный, но и не примитивный как стандартный.
...Если такой существует :confused:
ЗЫ: Valery Romanchev, я так понимаю вы будете "дорабатываеть" тот поиск, что в новостях имеется? или это будет как отдельный экст? и будет ли возможность его где-то скачать для общего использования ?

Tod 13.10.2006 01:40

Нашел достаточно оригинальное решения для поиска в разных категориях новостей с помощью feseachintable, может не супер оптимальное, но работоспособное.
В общем, в этом расширении задается не только таблица в которой ищем, а еще и страница, на которой располагаются записи... Поэтому достаточно разместить записи новостей из разных категорий на разные страницы и все вроде бы работает толково))
----
Остается один вопрос. Можно ли как-то быстро, путем добавления определенный строк в исходник расширения, "внедрить" туда стандартный pagebrowser.
Понимаю, что стоило бы порыться в исходниках некоторых расширений, посмотреть что там к чему, но может кто-то этим уже занимался)) поделитесь опытом.

Tod 06.12.2006 14:09

Оказывается проблема не решилась, я ошибся.
Вопрос поиска по категориям новостей с помощью feseachintable снова открыт))
Я думал задать 2 настройки для поиска по tt_news с указанием разных pid, но дело в том, что последняя запись в TS перекрывает первую.
--- PS. Нужна помощь профи)

Код:

plugin.tx_fesearchintable_pi1.searchTables.tt_news = 1
plugin.tx_fesearchintable_pi1.searchTables.tt_news {
name = Новости и продукты
fields = title,short,bodytext,pid
pidList = 25,26
orderBy = crdate DESC
selectAdditionalParams = AND 1=1

listStdWrap.wrap = | <br /><br />

listHeader = COA
listHeader {
          10 = TEXT
              10.value = Новости и продукты
              10.wrap = <h2 style="background-color:#EDEFEF; color:navy; padding: 4px; font-size:12pt">|</h2>
}

listItem = COA
listItem {
        stdWrap.wrap = <li>|</li>
              10 = TEXT
              10.field = title
              10.wrap = <strong style='color:#006699;'>|</strong><br>
              20 = TEXT
              20.field = short//teaser
              20.crop = 250|...&nbsp;|1
              20.stripHtml = 1
              20.wrap = |&nbsp;

              30 = TEXT
              30.value = <font size=1>Подробнее</font>
              30.typolink.parameter.data >
              30.typolink.parameter = 17
              30.typolink.additionalParams.dataWrap = &tx_ttnews[tt_news]={field:uid}&tx_ttnews[backPid]=5
             
            30.typolink.target = _blank
              30.typolink.wrap = <strong>|</strong>
              30.typolink.ATagBeforeWrap = 1
              30.typolink.useCacheHash = 1
}
}

Задача заключается в том, что для элементов с {field:pid}=25 требуются параметры
30.typolink.parameter = 27
30.typolink.additionalParams.dataWrap = &tx_ttnews[tt_news]={field:uid}&tx_ttnews[backPid]=5
а для {field:pid}=25 требуются
30.typolink.parameter = 16
30.typolink.additionalParams.dataWrap = &tx_ttnews[tt_news]={field:uid}&tx_ttnews[backPid]=7

...как только я не извращадся через CASE, IF, Conditions ничего не получилось((

Tod 06.12.2006 20:11

В общем, еще "чуток" посидел... получилась такая фишка.
Если кому-то нада - ее код:
Код:

            30 = COA
       
        30.1 = TEXT
        30.1 {
          value = <font size=1>Подробнее</font>
              typolink.parameter.data >
              typolink.parameter = 16
              typolink.additionalParams.dataWrap = &tx_ttnews[tt_news]={field:uid}&tx_ttnews[backPid]=7
              typolink.target = _blank
              typolink.wrap = <strong>|</strong>
              typolink.ATagBeforeWrap = 1
              typolink.useCacheHash = 1

              if {
                      value.field = pid
                      equals = 25
                }
              }
             

        30.2 = TEXT
        30.2 {
          value = <font size=1>Подробнее</font>
              typolink.parameter.data >
              typolink.parameter = 27
              typolink.additionalParams.dataWrap = &tx_ttnews[tt_news]={field:uid}&tx_ttnews[backPid]=5
              typolink.target = _blank
              typolink.wrap = <strong>|</strong>
              typolink.ATagBeforeWrap = 1
              typolink.useCacheHash = 1

              if {
                      value.field = pid
                      equals = 26
                }
              }


void 07.12.2006 04:40

А чем правда CASE не устраивал?
30 = CASE
30.key.field = pid
30.26 = TEXT
...
30.25 = TEXT
...

Tod 07.12.2006 13:54

та чем я только не пытался)) и CASE, но никак не хотело работать.
потом получилось так, как есть.
В след. раз буду делать через CASE, спасибо за совет.

simon.kms 13.01.2008 10:45

Цитата:

Сообщение от Tod (Сообщение 7595)
Остается один вопрос. Можно ли как-то быстро, путем добавления определенный строк в исходник расширения, "внедрить" туда стандартный pagebrowser.
Понимаю, что стоило бы порыться в исходниках некоторых расширений, посмотреть что там к чему, но может кто-то этим уже занимался)) поделитесь опытом.

Получилось ли добавить pagebrowser к этому поисковому плугину?

p.bogomolenko 31.03.2008 20:34

Цитата:

Сообщение от Valery Romanchev (Сообщение 7076)
сейчас делаю новостной сайт на котором будет нормальный поиск в новостях (выбор категории, указание диапазона дат, выбор типа инф. материала и автора (это будет дополнительно прикручено к новостям))
Вплотную этим поиском планирую начать заниматься через 3 дня

Скажите пожалуйста, а Вы все-таки завершили данную работу? Если да, то не могли бы вы подробнее описать алгоритм реализации данной функциональности!


Часовой пояс GMT +4, время: 18:37.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot