1

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

如果我复制扩展中使用的 Fluid 表单 (Form.html) 并将其放入我的一个 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 社区。

4

1 回答 1

1

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

  • 要么您使用插入插件的页面的输出(从 HTML 源代码复制)
  • 或者您在所有页面中插入插件:
    • 这可以通过您继承的列以及插件在顶层插入的位置来完成
    • 或者您使用打字稿将插件呈现为流体变量并在您的(页面)模板中显示生成的 HTML。
于 2018-08-21T12:11:37.187 回答