0

我正在使用typo3 安装。版本 9.5.8。我在每个页面上都有一个搜索字段。当在字段中输入一个值并单击搜索按钮时,我最终会进入主搜索页面(在我的情况下为 ID 255)。在该页面上,我搜索的值显示在主搜索的搜索字段中,但没有执行搜索,也没有显示任何结果。用户必须再次单击该页面上的搜索按钮才能看到任何结果。为什么没有执行搜索?

我在每个页面上的搜索字段都包含以下 html 代码:

<form action="###URL###" id="tx_indexedsearch" method="post">
<fieldset>
    <input type="hidden" name="tx_indexedsearch_pi2[__referrer][@controller]" value="Search">
    <input type="hidden" name="tx_indexedsearch_pi2[__referrer][@action]" value="search">
    <input class="tx-indexedsearch-searchbox-sword" id="tx-indexedsearch-searchbox-sword" type="text" name="tx_indexedsearch_pi2[search][sword]" value="###VALUE###" />
    <input class="tx-indexedsearch-searchbox-button" id="tx-indexedsearch-searchbox-button-submit" type="submit" value="Search" name="tx_indexedsearch_pi2[search][submitButton]">
</fieldset>

我需要发送什么值才能执行搜索?

4

1 回答 1

0

我不明白你的###URL###,但我想知道这是因为它不起作用。

下面是一个工作示例:

<form action='<f:uri.page pageUid="{settings.pidrecherc}?tx_indexedsearch_pi2[action]=search&tx_indexedsearch_pi2[controller]=Search" />' method="post" class="navbar-form navbar-right" role="search">
			<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 class="form-group">
	   <f:form.textfield name="tx_indexedsearch_pi2[search][sword]" value="{sword}" id="tx-indexedsearch-searchbox-sword" class="form-control input-lg" placeholder="Rechercher..." />
       </div>
</form> 

这里重要的东西是:

<form action='<f:uri.page pageUid="{settings.pidrecherc}?tx_indexedsearch_pi2[action]=search&tx_indexedsearch_pi2[controller]=Search" />' method="post"

和 :

<f:form.textfield name="tx_indexedsearch_pi2[search][sword]" value="{sword}" id="tx-indexedsearch-searchbox-sword" class="form-control input-lg" placeholder="Rechercher..." />

“{settings.pidrecherc}”是我对插件实例化页面的 pid 的自定义设置。

还要验证您的 Typoscript 设置是否启用索引:

config.index_enable = 1

于 2019-10-14T16:07:49.137 回答