我正在尝试将新的主模块条目添加到typo3后端左侧的模块导航中。我在网上发现这应该可以通过::addModule
方法进行。
我这样想:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addModule(
'test',
'sub',
'',
'',
[
'labels' => 'LLL:EXT:eh_bootstrap/Resources/Private/Language/locallang_mod_testxy.xlf',
'name' => 'test',
'iconIdentifier' => 'eh-bootstrap-icon',
'access' => 'user,group'
]
);
读完ExtensionManagementUtility
- 类后,如果没有知道具有该特定名称的方法,该方法应该添加一个新的主模块。
现在:如果我将$sub
参数留空,则应该在菜单中添加一个空白主模块。但是,如果我这样做,则不显示任何内容。使用$sub
参数,将添加一个新的主模块及其子模块。
但是,主模块没有标签,我打算用于主模块的标签和图标现在标记子模块。
这是lang文件:
<?xml version="1.0" encoding="UTF-8"?>
<xliff version="1.0" xmlns:t3="http://typo3.org/schemas/xliff">
<file t3:id="1415816898" source-language="en" datatype="plaintext" original="messages" date="2011-10-17T20:22:34Z" product-name="lang">
<header/>
<body>
<trans-unit id="mlang_labels_tablabel">
<source>Testxy stuff</source>
</trans-unit>
<trans-unit id="mlang_tabs_tab">
<source>Testxy</source>
</trans-unit>
</body>
</file>
</xliff>
关闭标头标签让我有点失望,但是typo3中的其他xlf文件也有这个,所以我猜它有一个目的。我主要是从网络模块的lang文件中复制了这个。
很难找到Typo3的良好开发指南,到目前为止还没有人帮我解决这个问题。任何线索,我在这里可能会缺少的是欣赏。
添加:
我现在也尝试了
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule(
'EHAERER.' . $_EXTKEY,
'test',
'ehbootstrap',
'',
[],
[
'labels' => 'LLL:EXT:eh_bootstrap/Resources/Private/Language/locallang_mod_testxy.xlf',
'name' => 'test',
'iconIdentifier' => 'eh-bootstrap-icon',
'access' => 'user,group'
]
);
方法,因为它当前将子模块添加到空白标记的主模块中。如果省略子模块键,我的图标和标签将应用于主模块和空白子模块
答案 0 :(得分:1)
在ext_tables.php中使用以下内容注册了一个支持的模块(或者至少我已经这样做了。)
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule(
'DEMO.' . $_EXTKEY,
'web', // Make module a submodule of 'web'
'm2', // Submodule key
'', // Position
array(
'Demo' => 'list, new, delete, edit',
),
array(
'access' => 'user,group',
'icon' => 'EXT:' . $_EXTKEY . '/ext_icon.gif',
'labels' => 'LLL:EXT:' . $_EXTKEY . '/Resources/Private/Language/locallang_m2.xlf',
)
);