【问题标题】:TYPO3 8.7.x Extbase: Indexed_search indexing not working for own extensionTYPO3 8.7.x Extbase:Indexed_search 索引不适用于自己的扩展
【发布时间】:2017-08-04 07:12:12
【问题描述】:

我创建了一个简单的基于 extbase/fluid 的新闻扩展,其中包含显示最新新闻的列表视图。我还使用 indexed_search 来搜索整个网站。问题是,indexed_search 没有索引我的新闻中的任何单词。

如何将 indexed_search 用于我自己的扩展程序? 几个小时以来,我在网上找不到任何有用的东西。我会非常感谢每一个提示或关键字。 我的扩展的列表视图的流体模板:

<f:for each="{berichts}" as="bericht">
        <div class="bericht">
            <div class="bericht_titel">
                <h1>
                    <b>[<f:for each="{bericht.kategorien}" as="kategorie" iteration="i">{kategorie.name}<f:if condition="{i.isLast}"><f:then></f:then><f:else>, </f:else></f:if></f:for>]</b>&nbsp;<f:link.action action="show" pageUid="65" format="html" arguments="{bericht: bericht}">{bericht.titel}</f:link.action>
                </h1>
                <span class="glyphicon glyphicon-menu-right" aria-hidden="true"></span></div>
            <div class="bericht_text">
                <f:if condition="{bericht.bild}">
                    <a href="{f:uri.image(src: bericht.bild.originalResource.publicUrl)}" class="bericht_bild"><f:image image="{bericht.bild}" alt="" /></a>
                </f:if>
                <f:format.html>{bericht.text}</f:format.html>
                <div class="clearfix"></div>
                <f:if condition="{bericht.anhaenge}">
                    <div class="bericht_anhang">
                        <b>Anhänge:</b><br />
                        <f:for each="{bericht.anhaenge}" as="anhang">
                            <div>
                                <a href="{anhang.originalResource.publicUrl}" target="_blank">
                                    <f:if condition="{anhang.originalResource.title}">
                                        <f:then>
                                            {anhang.originalResource.title}
                                        </f:then>
                                        <f:else>
                                            {anhang.originalResource.originalFile.name}
                                        </f:else>
                                    </f:if>
                                </a>
                            </div>
                        </f:for>
                    </div>
                </f:if>
            </div>
        </div>
</f:for>

生成的一个“Bericht”的 HTML

<div class="bericht">
    <div class="bericht_titel">
        <h1><b>[Allgemeines]</b>&nbsp;<a href="/aktuelles/bericht/?tx_companyaktuelles_p1aktuelles%5Bbericht%5D=3&amp;amp;tx_companyaktuelles_p1aktuelles%5Baction%5D=show&amp;amp;tx_companyaktuelles_p1aktuelles%5Bcontroller%5D=Bericht&amp;amp;tx_companyaktuelles_p1aktuelles%5Bformat%5D=html&amp;amp;cHash=d6c3c8ef294eee899bc15150443b0775">Test</a></h1><span class="glyphicon glyphicon-menu-right" aria-hidden="true" style="transform: rotate(90deg);"></span>
    </div>
    <div class="bericht_text" style="display: block;">
        <p>Dies ist ein Test</p>
        <div class="clearfix"></div>
    </div>
</div>

【问题讨论】:

  • 您的扩展输出是否已缓存(indexed_search 仅索引缓存的内容)?这也意味着:不要使用 BE-login 调用您的页面并期望填充索引,因为在您登录 BE 时不会有任何缓存。最后:您的内容是否在适当的标记内?
  • @BerndWilkeπφ 我的内容在标记 内。可以找到正常的内容。在我的扩展中,我只定义了可缓存的操作(configurePlugin)如果这足以激活缓存?
  • 我也调用了没有登录BE的页面。
  • 您可能需要使用 cHash 参数来验证您的参数。生成的 URL 中是否包含 cHash 参数(如果您停用 realurl)?
  • @BerndWilkeπφ 我没有使用单个视图,仅使用列表视图。所以,我不需要 cHash 参数?

标签: php typo3 fluid extbase typo3-8.x


【解决方案1】:

现在它正在工作。页面本身有问题,但禁用缓存未激活。所以如果其他人有同样的问题;尝试将插件插入另一个页面并进行测试。我不得不删除该页面并重新创建它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-14
    • 2018-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多