Как отобразить окно поиска на боковой панели всей веб-страницы typo3

Мы разработали сайт с typo3 v8.7.11. Мы хотим отобразить поле поиска в разделе боковой панели, для этого мы установили расширение indexed_search. B

Как отобразить поле поиска во всех разделах боковой панели веб-интерфейса?


person raj    schedule 19.03.2018    source источник
comment
Используете ли вы FLUIDTEMPLATE для рендеринга вашего веб-сайта (меню, контента и т. Д.)?   -  person Thomas Löffler    schedule 19.03.2018
comment
@Томас. да. Примечание: мы создаем ТЕМУ распространения.   -  person raj    schedule 20.03.2018


Ответы (4)


у вас есть несколько вариантов:

  1. скопируйте HTML-код формы из плагина поиска в обычное содержимое и вставьте его в свой шаблон страницы (html-).

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

  3. сделать специальную страницу, не видимую в FE, где вы вставляете плагин поиска и включаете этот специальный CE в рендеринг каждой страницы (используйте объект CONTENT в typoscript, чтобы выбрать этот специальный CE)

  4. включить и настроить плагин в typoscript. (см. ответ Томаса Лёффлера)

Я предпочитаю вариант 2, поскольку он наиболее гибкий и не требует каких-либо специальных идентификаторов страниц или контента, которые могут меняться со временем (вариант 3). Он также может обрабатывать любые типы CE.
Вариант 1 требует ручного исправления, если, например, есть изменения в рендеринге плагина после обновления.
Вариант 4 не может унаследовать каждый плагин или CE. Если вы можете настроить плагин с помощью typoscript, это прекрасный вариант, потому что вам не нужна никакая запись (из tt_content)

для варианта 2:

temp.inheritedContent = CONTENT
temp.inheritedContent {
    table = tt_content
    select.orderBy = sorting
    // -- use your own column id: --
    select.where = colPos = 100
    select.languageField = sys_language_uid
    slide = -1
}
person Bernd Wilke πφ    schedule 19.03.2018

Мой совет - создать объект TypoScript, который фактически включает плагин, например:

lib.headerSearch = USER
lib.headerSearch {
    userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
    extensionName = IndexedSearch
    pluginName = Pi2
    vendorName = TYPO3\CMS
    switchableControllerActions {
        Search {
            1 = form
            2 = search
        }
    }
    features {
        requireCHashArgumentForActionArguments = 0
    }
    view < plugin.tx_indexedsearch.view
    view.partialRootPaths.10 = Path/To/Partial/
    view.templateRootPaths.10 = Path/To/Template/

    settings =< plugin.tx_indexedsearch.settings
}

Затем в свой шаблон включите его вот так

<f:cObject typoscriptObjectPath="lib.headerSearch" />

Обратите внимание, что вы должны создать новый шаблон «Search.html» в Path / To / Template / Search / для этого TS-плагина, чтобы он не мешал работе обычного плагина. Также будьте осторожны, если вы включаете слот поиска на той же странице, что и сам плагин поиска.

person Johannes Nielsen    schedule 16.01.2020

Используйте расширение TYPO3, которое может быть копией (вилкой) недавно разработанной версии macina_searchbox

Модуль шаблона: добавьте "Macina Searchbox" в раздел "включать статические данные из расширений". Используйте этот или аналогичный TypoScript, чтобы включить его, где «6» в этом примере - страница поиска. Вместо этого используйте свой собственный идентификатор страницы.

Константы:

lib.macina_searchbox {
   pidSearchpage = 6
}

Настраивать:

10 = TEMPLATE
10.template = FILE
10.template.file = fileadmin/template/template.html
10.workOnSubpart = DOKUMENT
10.marks {
   SUCHE < lib.macina_searchbox
   LOGO = TEXT
   LOGO.value = <a href="/" title="Startseite"><img src="fileadmin/template/img/logo.png"></a>


 NAVI= HMENU
 NAVI {

Затем вы можете редактировать файлы шаблонов Fluid в папках ниже macina_searchbox / Resources / Private /, чтобы изменить вывод окна поиска. Этот способ необходим для того, чтобы список результатов поиска не отображался на странице. Вместо этого вы должны вставить плагин индексированного поиска на свою страницу поиска, у которого в этом примере id = 6. ТАКОЙ - маркер в основном шаблоне сайта. Используйте свой собственный маркер.

person Franz Holzinger    schedule 17.01.2020
comment
Вся эта информация получена по этой ссылке: TYPO3 8: indexedsearch Сучфельд ауф джедер Зайте эйнбинден - person Franz Holzinger; 17.01.2020

Самый простой способ - скопировать данный плагин из indexed_search в переменную, которую вы используете в своем шаблоне.

Когда вы, например, используйте FLUIDTEMPLATE:

page.10 = FLUIDTEMPLATE
page.10.variable.searchBox < plugin.tx_indexedsearch

После этого вы можете назначить отдельный шаблон и внести другие изменения, изменив page.10.variable.searchBox на возможную конфигурацию здесь: https://docs.typo3.org/typo3cms/extensions/indexed_search/8.7/Configuration/Index.html

person Thomas Löffler    schedule 19.03.2018
comment
Кажется, невозможно просто скопировать плагин в такую ​​переменную. - person JKB; 04.06.2020