在布局中创建tx_news搜索表单

时间:2014-12-15 15:20:33

标签: typo3 fluid typo3-6.1.x tx-news

我想在每个页面上创建tx_news搜索表单。所以我试着把它放到布局中:

<div class="news-search-form">
            <f:form object="{search}" name="search" pageUid="{settings.searchPid}">
                <fieldset>

                        <f:form.textfield id="news-subject" property="subject" class="form-control"/>

                        <f:form.submit class="btn btn-default search-button"/>
                </fieldset>
            </f:form>
        </div>

问题是,当网站上没有搜索插件时,{search}未定义。

当有一个searchplugin {search}看起来像这样:

Tx_News_Domain_Model_Dto_Search (prototype transient entity)
   subject => NULL
   fields => NULL
   uid => NULL
   _localizedUid => NULL
   _languageUid => NULL
   pid => NULL

我能以某种方式直接在布局中创建这个,或者在每个页面上使用searchform的最佳方法是什么?

2 个答案:

答案 0 :(得分:1)

您可以使用直接TS轻松

lib.blogsearch = USER
lib.blogsearch{
    userFunc = tx_extbase_core_bootstrap->run
    extensionName = News
    pluginName = Pi1
    switchableControllerActions {
        News {
            1 = searchform
        }
    }
    settings < plugin.tx_news.settings
    settings {
        listPid = #you_id

    }
}

答案 1 :(得分:0)

您是否曾尝试通过typoscript将搜索表单作为记录插入?

要做到这一点,你应该创建配置为在pagetree中某处搜索表单的新闻插件,并通过ts引用它:

lib.searchform = RECORDS
lib.searchform {
    wrap = (whatever)|
    tables = tt_content
    source = {id of the searchform CE}
}

这应该可以解决问题。