【问题标题】:Why can't I access my extensions' settings on the frontend?为什么我无法在前端访问我的扩展程序设置?
【发布时间】:2015-02-26 00:34:43
【问题描述】:

尝试访问我在constants.txt 文件中创建的一些设置。它看起来像这样:

plugin.tx_my_ext {
    settings {
        # cat=plugin.tx_my_ext/urgences; type=boolean; label=Activer les urgences
        activerUrgences = 0
    }
}

然后在我的setup.txt 文件中我有这个:

plugin.tx_my_ext.settings.activerUrgences = {$plugin.tx_my_ext.settings.activerUrgences}

为什么我无法在 Fluid 布局中使用 {settings} 访问我的设置?

顺便说一句,我的扩展名确实在单词之间包含下划线_。我试过删除下划线,然后删除tx_,然后是这两者的组合。

任何帮助将不胜感激! 谢谢

【问题讨论】:

    标签: typo3 typoscript fluid extbase typo3-6.2.x


    【解决方案1】:
    1. 对于带有密钥my_ext 的分机,它应该是plugin.tx_myext.settings
    2. 确保在您的 TypoScript 模板中“包含静态扩展名”。如果您的分机不在列表中,请将其添加到ext_localconf.php,如下所示:

      \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript', 'MyExt');
      
    3. 不要忘记清除系统缓存FE缓存至少百万次;)

    4. 使用 TypoScript 对象浏览器检查给定页面上的插件 TS 是否仍然可用(可能同时重置 TS:

    1. 最后确保你没有清除控制器中的$this->settings数组,如果你出于任何原因在视图渲染之前再次将它分配给视图,就像这样:

      $this->view->assign('settings', $this->settings);
      

    【讨论】:

    • 实际上,第 2 行在我的 ext_tables.php 文件中。我还应该将它添加到我的ext_localconf.php 吗?但是你应该知道我的扩展已经在我的 Typoscript 模板的“包含的静态扩展”中。
    • 不,它只在ext_tables.php,所以可能存在缓存问题'清空typo3temp文件夹的内容(只需删除其中的所有文件,但不要删除文件夹本身)并检查如果有帮助
    • 没有骰子。在我的setup.txt 文件中我有这一行plugin.tx_udmnouvelles.settings.activerUrgences = 1 但在我的默认模板的前面,当我尝试使用`f:debug 访问{settings} 时,我得到一个空数组
    • 我没有任何控制器(我知道是否有),所以我不相信我可以重置我的设置。我的设置也在对象浏览器中
    • 另外,这里有新问题,但是我如何再次将设置重新分配给视图?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-23
    • 2012-01-10
    • 1970-01-01
    • 2019-02-16
    • 2021-12-08
    • 2021-08-07
    • 1970-01-01
    相关资源
    最近更新 更多