创建自定义搜索表单indexed_search TYPO3 v8

时间:2018-08-21 11:22:48

标签: typo3-8.x tx-indexed-search

我正在尝试将自定义搜索表单添加到模板中,在v7安装中使用的TypoScript不再起作用。

如果我复制扩展名(Form.html)中使用的Fluid表单并将其放置到我的Fluid模板之一中,则会出现一个搜索框,但即使我在常量中设置了rootPidList,它也会发回自身。这是我复制的代码:

<f:form action="search" method="post" id="tx_indexedsearch" pageUid="{settings.targetPid}">
<div class="tx-indexedsearch-hidden-fields">
    <f:form.hidden name="search[_sections]" value="0" />
    <f:form.hidden name="search[_freeIndexUid]" id="tx_indexedsearch_freeIndexUid" value="_" />
    <f:form.hidden name="search[pointer]" id="tx_indexedsearch_pointer" value="0" />
    <f:form.hidden name="search[ext]" value="{searchParams.ext}" />
    <f:form.hidden name="search[searchType]" value="{searchParams.searchType}" />
    <f:form.hidden name="search[defaultOperand]" value="{searchParams.defaultOperand}" />
    <f:form.hidden name="search[mediaType]" value="{searchParams.mediaType}" />
    <f:form.hidden name="search[sortOrder]" value="{searchParams.sortOrder}" />
    <f:form.hidden name="search[group]" value="{searchParams.group}" />
    <f:form.hidden name="search[languageUid]" value="{searchParams.languageUid}" />
    <f:form.hidden name="search[desc]" value="{searchParams.desc}" />
    <f:form.hidden name="search[numberOfResults]" value="{searchParams.numberOfResults}" />
    <f:form.hidden name="search[extendedSearch]" value="{searchParams.extendedSearch}" />
</div>
<fieldset>
    <legend><f:translate key="form.legend" /></legend>
    <div class="tx-indexedsearch-form">
        <label for="tx-indexedsearch-searchbox-sword"><f:translate key="form.searchFor" />:</label>
        <f:form.textfield name="search[sword]" value="{sword}" id="tx-indexedsearch-searchbox-sword" class="tx-indexedsearch-searchbox-sword" />
    </div>
    <div class="tx-indexedsearch-search-submit">
        <f:form.submit name="search[submitButton]" value="{f:translate(key: 'form.submit')}" id="tx-indexedsearch-searchbox-button-submit" class="tx-indexedsearch-searchbox-button" />
    </div>
</fieldset>

还有我的打字稿:

config.index_enable = 1
page.config.index_enable = 1
plugin.tx_indexedsearch.settings.targetPid = 31

如果我将股票索引搜索插件添加到随机页面,则可以使用。 为了排除这种情况,我还禁用了realurl以防万一。

再次感谢T3社区。

1 个答案:

答案 0 :(得分:2)

如果仅将搜索模板复制到输出/页面模板中,则没有可用的插件为该模板部分中所需的特定变量提供值。

  • 您可以使用插入插件的页面输出(从HTML源复制)
  • 或在所有页面中插入插件:
    • 这可以通过您继承的列以及在顶级插入插件的位置完成
    • 或者您使用错字脚本将插件呈现为可变变量,并在(page-)模板中显示生成的HTML。