簡體   English   中英

TYPO3 4.7.2通過typoscript包含extbase插件

[英]TYPO3 4.7.2 include extbase plugin via typoscript

我寫了一個擴展,並通過后端實現插件完成所有事情。

但是當我嘗試通過typoscript實現我的擴展時,我每次都會收到此錯誤:

糟糕,發生錯誤!

無法確定默認控制器。 請檢查ext_localconf.php中的Tx_Extbase_Utility_Extension :: configurePlugin()。

我不知道為什么..我嘗試了不同的實現(根據tx_extbase_core_bootstrap-> run或tx_extbase_dispatcher-> dispatch以及附加信息而沒有),當前的typoscript看起來像這樣:

plugin.tx_graphichmenu {
    settings {
        menuUid = 1
    }
}

lib.tx_graphichmenu = USER
lib.tx_graphichmenu {
    userFunc = tx_extbase_core_bootstrap->run
    extensionName = Graphichmenu
    pluginName = Graphicmenu
    controller = MenuController
    action = showAction
}

temp.mainTemplate.subparts.stickyfooter < lib.tx_graphichmenu

我對所有東西進行了雙重和三重檢查,我發現沒有一個故障......沒有“動作”和“控制器”部分就試了一下而沒有改變

我在ext_localconf.php中的configurePlugin部分如下所示:

Tx_Extbase_Utility_Extension::configurePlugin(
    $_EXTKEY,
    'Graphicmenu',
    array(
        'Menu' => 'show',
    ),
    // non-cacheable actions
    array(
        'Menu' => '',
    )
);

“show”動作沒有參數。 在那里我加載ts設置從我拿到對象的Uid顯示

PS:每次更改后我都清除了緩存並刪除了typo3conf中的“temp_CACHED _...”文件

你需要修改你的bootstrap,有一般的語法:

lib.foo = USER
lib.foo {
    userFunc = tx_extbase_core_bootstrap->run
    extensionName = YourExtension
    pluginName = YourPlugin
    vendorName = YourVendor
    switchableControllerActions {
        Standard {
            1 = action2
            2 = action3
        }
    }
}

注意: extensionName值中的CamelCase很重要! (感謝Kai的確認)所以如果extkey是: kai_some_extension它必須寫成KaiSomeExtension

所以在你的情況下它應該是這樣的:

lib.foo = USER
lib.foo {
    userFunc = tx_extbase_core_bootstrap->run
    extensionName = GraphicHmenu
    pluginName = Graphicmenu
    switchableControllerActions {
        Menu {
            1 = show
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM