【问题标题】:Why does the typo3 indexedsearch not search?为什么typo3 indexedsearch 不搜索?
【发布时间】:2023-03-15 11:19:02
【问题描述】:

我正在使用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>

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

【问题讨论】:

    标签: php typo3 tx-indexed-search


    【解决方案1】:

    我不明白你的###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

    【讨论】:

    • 嗨 Kristof,感谢四位您的快速回复。我从版本 6 更新了这个错字网站。预算很少,所以我没有更新所有的模板。 ###variablename### 是一种较旧的 php 模板方式,但它确实有效。例如###value### 是搜索词。对我不起作用的是像你一样使用流畅的视图助手。当我尝试使用它们时,我没有得到任何输出。我还不知道为什么会这样。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 2012-06-08
    • 2018-07-20
    • 2016-11-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多